Fixed tables and filters, added information on which protocols should be placed into which configuration files

This commit is contained in:
Tristan B. Velloza Kildaire 2021-05-20 16:01:43 +02:00
parent a8bbbd68d2
commit e0d99648ab
1 changed files with 25 additions and 5 deletions

View File

@ -63,6 +63,9 @@ The configuration template is constructed out of the following files:
* It also contains the needed protocol definitions to sync bird * It also contains the needed protocol definitions to sync bird
routes into the Linux kernel's routing table (so you cna forward routes into the Linux kernel's routing table (so you cna forward
packets based on the routes from Bird) packets based on the routes from Bird)
5. `protocols.conf`
* Depending on what protocol you want to use this will contains
configurations for each
#### `filters.conf` #### `filters.conf`
@ -172,11 +175,13 @@ doesn't even need those, it gets them from the interface.
# directly attached networks - i.e. nexthop = 0.0.0.0) # directly attached networks - i.e. nexthop = 0.0.0.0)
protocol direct crxnDirect { protocol direct crxnDirect {
# Import from direct -> bird into bird's `crxn` table
import filter crxn6; import filter crxn6;
table crxn; table crxn;
# Only doing this so it shows by default in looking glass
import filter crxn6; import filter crxn6;
table master; #Only doing this so it shows by default in looking glass table master;
} }
``` ```
@ -192,10 +197,25 @@ TODO: Check, defualt `learn` should larn non `kernel` and non-`bird` routes
# could be `proto static` for example. By default it will learn these. # could be `proto static` for example. By default it will learn these.
# Of course we also then export all routes from our Bird tables into the kernel so you can actually forward packets # Of course we also then export all routes from our Bird tables into the kernel so you can actually forward packets
protocol kernel crxnKernel { protocol kernel crxnKernel {
import filter crxn6;
export filter crxn6;
# Export from bird -> kernel from bird's `crxn` table
export filter crxn6;
table crxn; table crxn;
table master; #Only doing this so it shows by default in looking glass
# Only doing this so it shows by default in looking glass
import filter crxn6;
table master;
} }
``` ```
#### `protocols.conf`
This file should look like this (as an example of running one `babel`
instance and one `ospf` instance):
```
# Import protocol instances
import "babel.conf";
import "ospf.conf";
```