bird 2.0.8 ignores local routes during import?

Tim Meusel bird at bastelfreak.de
Tue Aug 10 13:08:14 CEST 2021


Hi,
I'm running bird 2.0.8 on Arch Linux:

I would like to import local device routes and export them via BGP. My 
assumption is that the direct protocol would be required here? My config 
looks like this:

router id 192.168.178.35;
debug protocols all;
log syslog { debug, trace, info, remote, warning, error, auth, fatal, bug };
timeformat protocol iso long;
protocol device {
   scan time 10;
   interface "uplink" {
     preferred 192.168.178.35;
   };
}
protocol kernel kernelv4 {
   learn;
   persist;
     scan time 20;

     ipv4 {
         import all;
         export filter {
             if source = RTS_STATIC then reject;
             krt_prefsrc = OWNIP;
             accept;
         };
     };
}
protocol direct {
   ipv4;
   ipv6;
   interface "uplink";
}

The box has a few local routes:
# ip -4 r s
default via 192.168.178.1 dev enp3s0 proto dhcp src 192.168.178.35 
metric 1024
169.254.0.7 dev as3668-1 proto kernel scope link src 169.254.0.8
169.254.0.9 dev as3668-2 proto kernel scope link src 169.254.0.10
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
192.168.178.0/24 dev enp3s0 proto kernel scope link src 192.168.178.35 
metric 1024
192.168.178.1 dev enp3s0 proto dhcp scope link src 192.168.178.35 metric 
1024

But it looks like the direct protocol doesn't import any routes and via 
the kernel I don't get theh route for 192.168.178.0/24?

root at server ~ # birdc show route protocol device1
BIRD 2.0.8 ready.
No valid tables
root at server ~ # birdc show route protocol kernelv4
BIRD 2.0.8 ready.
Table master4:
0.0.0.0/0            unicast [kernelv4 2021-08-08] * (10)
	via 192.168.178.1 on enp3s0
192.168.178.1/32     unicast [kernelv4 2021-08-08] * (10)
	dev enp3s0
root at server ~ #

any clues why I don't see see "192.168.178.0/24 dev enp3s0" route in bird?

Cheers, Tim


More information about the Bird-users mailing list