## bird
### bird2-2.0.7
Configs:
```
protocol static random_s4 {
disabled;
ipv4 { export all; };
route 11.0.0.0/24 blackhole;
route 11.0.1.0/24 unreachable;
# route 11.0.2.0/24 prohibit;
route 11.0.3.0/24 via 10.0.0.9;
# route 11.0.4.0/24 via 10.0.0.8;
route 11.0.5.0/24 via "vtnet0";
}
protocol static random_s6 {
disabled;
ipv6 { export all; };
route 2a02:6b8:0:1::/64 blackhole;
route 2a02:6b8:0:2::/64 unreachable;
route 2a02:6b8:0:3::/64 via fe80::333%vtnet0;
# route 2a02:6b8:0:4::/64 via fe80::5054:ff:fe14:e319%vtnet0;
route 2a02:6b8:0:5::/64 via "vtnet0";
}
```
Output:
2021-04-18 20:42:37.019 <INFO> Enabling protocol random_s4
2021-04-18 20:42:37.019 <TRACE> random_s4: Starting
2021-04-18 20:42:37.019 <TRACE> random_s4: State changed to up
2021-04-18 20:42:37.019 <TRACE> random_s4 > added [best] 11.0.0.0/24 blackhole
2021-04-18 20:42:37.019 <TRACE> kernel1 < added 11.0.0.0/24 blackhole
2021-04-18 20:42:37.019 <TRACE> random_s4 > added [best] 11.0.1.0/24 unreachable
2021-04-18 20:42:37.019 <TRACE> kernel1 < added 11.0.1.0/24 unreachable
2021-04-18 20:42:37.019 <TRACE> random_s4 > added [best] 11.0.2.0/24 prohibited
2021-04-18 20:42:37.019 <TRACE> kernel1 < rejected by protocol 11.0.2.0/24 prohibited
2021-04-18 20:42:37.019 <TRACE> random_s4 > added [best] 11.0.3.0/24 unicast
2021-04-18 20:42:37.019 <TRACE> kernel1 < added 11.0.3.0/24 unicast
2021-04-18 20:42:37.019 <TRACE> random_s4 > added [best] 11.0.5.0/24 unicast
2021-04-18 20:42:37.019 <TRACE> kernel1 < added 11.0.5.0/24 unicast
2021-04-18 20:42:38.234 <INFO> Enabling protocol random_s6
2021-04-18 20:42:38.234 <TRACE> random_s6: Starting
2021-04-18 20:42:38.234 <TRACE> random_s6: State changed to up
2021-04-18 20:42:38.234 <TRACE> random_s6 > added [best] 2a02:6b8:0:1::/64 blackhole
2021-04-18 20:42:38.234 <TRACE> kernel2 < added 2a02:6b8:0:1::/64 blackhole
2021-04-18 20:42:38.234 <TRACE> random_s6 > added [best] 2a02:6b8:0:2::/64 unreachable
2021-04-18 20:42:38.234 <TRACE> kernel2 < added 2a02:6b8:0:2::/64 unreachable
2021-04-18 20:42:38.234 <TRACE> random_s6 > added [best] 2a02:6b8:0:3::/64 unicast
2021-04-18 20:42:38.234 <TRACE> kernel2 < added 2a02:6b8:0:3::/64 unicast
2021-04-18 20:42:38.234 <TRACE> random_s6 > added [best] 2a02:6b8:0:5::/64 unicast
2021-04-18 20:42:38.234 <TRACE> kernel2 < added 2a02:6b8:0:5::/64 unicast
2021-04-18 20:42:38.234 <TRACE> random_s6 > added [best] 2a02:6b8:0:6::/64 unicast
2021-04-18 20:42:38.234 <TRACE> kernel2 < added 2a02:6b8:0:6::/64 unicast
20:40 [0] m@devel2 netstat -4rnW | grep 11.0
11.0.0.0/24 127.0.0.1 UG1B 5 16384 lo0
11.0.1.0/24 127.0.0.1 UGR1 6 16384 lo0
11.0.3.0/24 10.0.0.9 UG1 7 1500 vtnet0
11.0.5.0/24 link#1 U1 8 1500 vtnet0
20:40 [0] m@devel2 netstat -4onW
Nexthop data
Internet:
Idx Type IFA Gateway Flags Use Mtu Netif Addrif Refcnt Prepend
1 v4/resolve 127.0.0.1 lo0/resolve H 81858 16384 lo0 2
2 v4/resolve 10.0.0.8 vtnet0/resolve 53 1500 vtnet0 2
3 v4/resolve 127.0.0.1 lo0/resolve HS 0 16384 lo0 vtnet0 2
4 v4/gw 10.0.0.8 10.0.0.1 GS 41 1500 vtnet0 2
5 v4/gw 127.0.0.1 127.0.0.1 G1B 0 16384 lo0 2
6 v4/gw 127.0.0.1 127.0.0.1 GR1 0 16384 lo0 2
7 v4/gw 10.0.0.8 10.0.0.9 G1 0 1500 vtnet0 2
8 v4/resolve 10.0.0.8 vtnet0/resolve 1 0 1500 vtnet0 2
//
20:41 [0] m@devel2 netstat -6rnW | grep 2a02:6b
2a02:6b8:0:1::/64 ::1 UG1B 8 16384 lo0
2a02:6b8:0:2::/64 ::1 UGR1 9 16384 lo0
2a02:6b8:0:3::/64 fe80::333%vtnet0 UG1 10 1500 vtnet0
2a02:6b8:0:5::/64 link#1 U1 11 1500 vtnet0
2a02:6b8:0:6::/64 2a01:4f8:13a:70c:ffff::66 UG1 12 1500 vtnet0
20:42 [0] m@devel2 netstat -6onW
Nexthop data
Internet6:
Idx Type IFA Gateway Flags Use Mtu Netif Addrif Refcnt Prepend
1 v6/resolve ::1 lo0/resolve HS 81883 16384 lo0 2
2 v6/resolve fe80::1%lo0 lo0/resolve HS 0 16384 lo0 2
3 v6/resolve fe80::1%lo0 lo0/resolve 0 16384 lo0 2
4 v6/resolve ::1 lo0/resolve HS 0 16384 lo0 vtnet0 3
5 v6/resolve fe80::5054:ff:fe14:e319%vtnet0 vtnet0/resolve 0 1500 vtnet0 3
6 v6/gw ::1 ::1 GRS 0 16384 lo0 5
7 v6/gw 2a01:4f8:13a:70c:ffff::8 2a01:4f8:13a:70c:ffff::1 GS 7709 1500 vtnet0 5
8 v6/gw ::1 ::1 G1B 0 16384 lo0 2
9 v6/gw ::1 ::1 GR1 0 16384 lo0 2
10 v6/gw fe80::5054:ff:fe14:e319%vtnet0 fe80::333%vtnet0 G1 0 1500 vtnet0 2
11 v6/resolve fe80::5054:ff:fe14:e319%vtnet0 vtnet0/resolve 1 0 1500 vtnet0 2
12 v6/gw 2a01:4f8:13a:70c:ffff::8 2a01:4f8:13a:70c:ffff::66 G1 0 1500 vtnet0 2
```
## FRR
### FRR 7.5.1_1
Configs
```
ip route 11.0.0.0/24 blackhole
ip route 11.0.1.0/24 reject
ip route 11.0.3.0/24 10.0.0.9
ip route 11.0.5.0/24 vtnet0
ipv6 route 2a02:6b8:0:1::/64 blackhole
ipv6 route 2a02:6b8:0:2::/64 reject
ipv6 route 2a02:6b8:0:3::/64 fe80::333 vtnet0
ipv6 route 2a02:6b8:0:5::/64 vtnet0
ipv6 route 2a02:6b8:0:6::/64 2a01:4f8:13a:70c:ffff::66
```
Output
```
20:24 [0] m@devel2 netstat -4rnW
Routing tables
Internet:
Destination Gateway Flags Nhop# Mtu Netif Expire
default 10.0.0.1 UGS 4 1500 vtnet0
10.0.0.0/24 link#1 U 2 1500 vtnet0
10.0.0.8 link#1 UHS 3 16384 lo0
11.0.0.0/24 127.0.0.1 UG1B 5 16384 lo0
11.0.1.0/24 127.0.0.1 UGR1 6 16384 lo0
11.0.3.0/24 10.0.0.9 UG1 7 1500 vtnet0
11.0.5.0/24 link#1 U1 8 1500 vtnet0
127.0.0.1 link#2 UH 1 16384 lo0
20:24 [0] m@devel2 netstat -4onW
Nexthop data
Internet:
Idx Type IFA Gateway Flags Use Mtu Netif Addrif Refcnt Prepend
1 v4/resolve 127.0.0.1 lo0/resolve H 81858 16384 lo0 2
2 v4/resolve 10.0.0.8 vtnet0/resolve 9 1500 vtnet0 3
3 v4/resolve 127.0.0.1 lo0/resolve HS 0 16384 lo0 vtnet0 2
4 v4/gw 10.0.0.8 10.0.0.1 GS 37 1500 vtnet0 2
5 v4/gw 127.0.0.1 127.0.0.1 G1B 0 16384 lo0 2
6 v4/gw 127.0.0.1 127.0.0.1 GR1 0 16384 lo0 2
7 v4/gw 10.0.0.8 10.0.0.9 G1 0 1500 vtnet0 2
8 v4/resolve 10.0.0.8 vtnet0/resolve 1 0 1500 vtnet0 2
//
20:36 [0] m@devel2 netstat -6rnW | grep 2a02:6b8
2a02:6b8:0:1::/64 ::1 UG1B 8 16384 lo0
2a02:6b8:0:2::/64 ::1 UGR1 9 16384 lo0
2a02:6b8:0:3::/64 fe80::333%vtnet0 UG1 12 1500 vtnet0
2a02:6b8:0:5::/64 link#1 U1 10 1500 vtnet0
2a02:6b8:0:6::/64 2a01:4f8:13a:70c:ffff::66 UG1 11 1500 vtnet0
20:38 [0] m@devel2 netstat -6onW
Nexthop data
Internet6:
Idx Type IFA Gateway Flags Use Mtu Netif Addrif Refcnt Prepend
1 v6/resolve ::1 lo0/resolve HS 81883 16384 lo0 2
2 v6/resolve fe80::1%lo0 lo0/resolve HS 0 16384 lo0 2
3 v6/resolve fe80::1%lo0 lo0/resolve 0 16384 lo0 2
4 v6/resolve ::1 lo0/resolve HS 0 16384 lo0 vtnet0 3
5 v6/resolve fe80::5054:ff:fe14:e319%vtnet0 vtnet0/resolve 0 1500 vtnet0 3
6 v6/gw ::1 ::1 GRS 0 16384 lo0 5
7 v6/gw 2a01:4f8:13a:70c:ffff::8 2a01:4f8:13a:70c:ffff::1 GS 7061 1500 vtnet0 5
8 v6/gw ::1 ::1 G1B 0 16384 lo0 2
9 v6/gw ::1 ::1 GR1 0 16384 lo0 2
10 v6/resolve fe80::5054:ff:fe14:e319%vtnet0 vtnet0/resolve 1 0 1500 vtnet0 2
11 v6/gw 2a01:4f8:13a:70c:ffff::8 2a01:4f8:13a:70c:ffff::66 G1 0 1500 vtnet0 2
12 v6/gw fe80::5054:ff:fe14:e319%vtnet0 fe80::333%vtnet0 G1 0 1500 vtnet0 2
```