# Configure logging log syslog all; # Set router ID. It is a unique identification of your router, usually one of # IPv4 addresses of the router. It is recommended to configure it explicitly. router id <%= $facts['networking']['ip'] %>; # The Device protocol is not a real routing protocol. It does not generate any # routes and it only serves as a module for getting information about network # interfaces from the kernel. It is necessary in almost any configuration. protocol device { } # The direct protocol is not a real routing protocol. It automatically generates # direct routes to all network interfaces. Can exist in as many instances as you # wish if you want to populate multiple routing tables with direct routes. protocol direct { ipv4; ipv6; interface "dummy0"; } # The Kernel protocol is not a real routing protocol. Instead of communicating # with other routers in the network, it performs synchronization of BIRD # routing tables with the OS kernel. One instance per table. protocol kernel { ipv4 { import none; export filter { if source = RTS_DEVICE then { reject; } accept; }; }; # Create ECMP routes in kernel table from multiple paths merge paths; } protocol kernel { ipv6 { import none; export filter { if source = RTS_DEVICE then { reject; } accept; }; }; # Create ECMP routes in kernel table from multiple paths merge paths; } protocol bgp tug_r11_v4 { description "tug-r11-v4"; local 130.242.64.233 as 65443; neighbor 130.242.64.232 as 1653; hold time 90; ipv4 { import filter { if net ~ [ 0.0.0.0/0 ] then accept; else reject; }; export filter { if net ~ [ 188.240.152.0/24{32,32} ] then accept; else reject; }; }; } protocol bgp tug_r11_v6 { description "tug-r12-v6"; local 2001:6b0:2006:74::1 as 65443; neighbor 2001:6b0:2006:74:: as 1653; hold time 90; ipv6 { import filter { if net ~ [ ::/0 ] then accept; else reject; }; export filter { if net ~ [ 2001:6b0:2100::/48{128,128} ] then accept; else reject; }; }; } protocol bgp tug_r12_v4 { description "tug-r12-v4"; local 130.242.64.235 as 65443; neighbor 130.242.64.234 as 1653; hold time 90; ipv4 { import filter { if net ~ [ 0.0.0.0/0 ] then accept; else reject; }; export filter { if net ~ [ 188.240.152.0/24{32,32} ] then accept; else reject; }; }; } protocol bgp tug_r12_v6 { description "tug-r12-v6"; local 2001:6b0:2006:75::1 as 65443; neighbor 2001:6b0:2006:75:: as 1653; hold time 90; ipv6 { import filter { if net ~ [ ::/0 ] then accept; else reject; }; export filter { if net ~ [ 2001:6b0:2100::/48{128,128} ] then accept; else reject; }; }; }