mirror of
https://git.dn42.dev/wiki/wiki.git
synced 2024-11-27 11:23:37 +01:00
Added configuration example for rtrtr RTR server
Added some information on bird2 rpki and pre 2.0.8 limitaions Added note for mikrotik router os v7
This commit is contained in:
parent
4a2fc6d41a
commit
f947da485f
@ -4,6 +4,13 @@ This guide is similar to the normal [Bird](/howto/Bird) guide in that it provide
|
||||
|
||||
The `extra/bird` package in the arch repositories will usually have a relatively recent version and there is (usually) no need for a manual install over the usual `# pacman -S bird`.
|
||||
|
||||
# Bird2 Version <2.0.8 / Debian
|
||||
|
||||
Please note, that Bird2 versions before 2.0.8 don't support IPv6 extended nexthops for IPv4 destinations (https://bird.network.cz/pipermail/bird-users/2020-April/014412.html).
|
||||
Additionally Bird2 before 2.0.8 cannot automatically update filtered bgp routes when an used RPKI source changes.
|
||||
|
||||
Debian 11 Bullseye delivers Bird 2.0.7. But you can use the Debian Bullseye backport-repository which provides version 2.0.8 (see https://backports.debian.org/Instructions/ for adding backports repository and install packages from the repository).
|
||||
|
||||
# Example configuration
|
||||
|
||||
Please note: This example configuration is made for use with IPv4 and IPv6 (Really, there is no excuse not to get started with IPv6 networking! :) )
|
||||
@ -171,6 +178,50 @@ include "/etc/bird/peers/*";
|
||||
|
||||
The example config above relies on ROA configuration files in `/etc/bird/roa_dn42{,_v6}.conf`. These should be automatically downloaded and updated every so often to prevent BGP highjacking, [see the bird1 page](/howto/Bird#route-origin-authorization) for more details and links to the ROA files.
|
||||
|
||||
# RPKI / RTR for ROA
|
||||
|
||||
To use an RTR server for ROA information, replace this config in your bird2 configuration file:
|
||||
|
||||
```
|
||||
protocol static {
|
||||
roa4 { table dn42_roa; };
|
||||
include "/etc/bird/roa_dn42.conf";
|
||||
};
|
||||
|
||||
protocol static {
|
||||
roa6 { table dn42_roa_v6; };
|
||||
include "/etc/bird/roa_dn42_v6.conf";
|
||||
};
|
||||
```
|
||||
|
||||
... with this one (by changing address and port so it points to your RTR server)
|
||||
|
||||
```
|
||||
protocol rpki roa_dn42 {
|
||||
roa4 { table dn42_roa; };
|
||||
roa6 { table dn42_roa_v6; };
|
||||
remote 10.1.3.3;
|
||||
port 323;
|
||||
refresh 600;
|
||||
retry 300;
|
||||
expire 7200;
|
||||
}
|
||||
```
|
||||
To reflect changes in the ROA table without a manual reload, **ADD** "import table" switch for both channels in your DN42 BGP template:
|
||||
|
||||
```
|
||||
template bgp dnpeers {
|
||||
ipv4 {
|
||||
...existing configuration
|
||||
import table;
|
||||
};
|
||||
ipv6 {
|
||||
...existing configuration
|
||||
import table;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
# Setting up peers
|
||||
|
||||
Please note: This section assumes that you've already got a tunnel to your peering partner setup.
|
||||
|
@ -50,6 +50,30 @@ You can use these to simply run gortr via docker:
|
||||
|
||||
docker run -ti -p 8082:8082 cloudflare/gortr -cache https://dn42.burble.com/roa/dn42_roa_46.json -verify=false -checktime=false -bind :8082
|
||||
|
||||
### rtrtr
|
||||
|
||||
rtrtr is a RTR server from NLNet Labs. It's compatible with the dn42regsrv ROA-JSON or burbles provided one (https://dn42.burble.com/roa/dn42_roa_46.json) too.
|
||||
|
||||
NLNet Labs provides an official docker image. You just have to bind mount a suitable configuration file:
|
||||
|
||||
docker run -d -v /etc/rtrtr.conf:/etc/rtrtr.conf -p 323:323/tcp nlnetlabs/rtrtr -c /etc/rtrtr.conf
|
||||
|
||||
This is a working configuration file for dn42. Maybe change the listen addresses:
|
||||
|
||||
log_level = "debug"
|
||||
log_target = "stderr"
|
||||
http-listen = []
|
||||
[units.dn42-json]
|
||||
type = "json"
|
||||
uri = "https://dn42.burble.com/roa/dn42_roa_46.json"
|
||||
refresh = 600
|
||||
[targets.dn42-rtr]
|
||||
type = "rtr"
|
||||
listen = ["0.0.0.0:323", "[::]:323"]
|
||||
unit = "dn42-json"
|
||||
|
||||
For more information cosult the official documentation: https://rtrtr.docs.nlnetlabs.nl/en/stable/
|
||||
|
||||
### Other tools / generators
|
||||
- bauen1's dn42-roagen: https://gitlab.com/bauen1/dn42-roagen
|
||||
- Kioubit's registry wizard: https://git.dn42.dev/Kioubit/RegistryWizard
|
||||
|
@ -22,6 +22,8 @@
|
||||
|
||||
Mikrotik/RouterOS can't handle very well /32 on Point-to-Point links (like GRE). There is a [separate howto](/howto/mikrotik/ptp32) to explain how to setup /32 between in a GRE link (or even a OpenVPN). What is the easy way? Just use any /30 on the GRE Link, either from your assigned DN42 pool address or use a private address like 192.168. Please don't choose from 172.16.0.0/12 or 10.0.0.0/8 because they may overlap with DN42 or ChaosVPN.
|
||||
|
||||
RouterOS v7.2 has some nasty bugs when using PTP configuration or IPv6 link local addresses as NEXTHOP. It won't work (confirmed for v7.2 by their support staff).
|
||||
|
||||
## Tunnel
|
||||
|
||||
### IPSec
|
||||
|
Loading…
Reference in New Issue
Block a user