[BIRD 2.0.x] Netlink: ignore dead routes

Bernd Naumann bena at spreadshirt.net
Fri Oct 23 16:17:29 CEST 2020


On 23.10.20 11:36, Vincent Bernat wrote:
>   ❦ 23 octobre 2020 08:48 +02, Bernd Naumann:
> 
>> I have a question:
>> What is then `check link` supposed to do?
>>
>> At least for 1.6, babel is the only protocol which enables it by
>> default, and the others, for in example direct, static, and ospf it is
>> needed to be set by the user, and I would have assumed exactly that
>> behavior.
> 
> `check link` does not seem to exist for the kernel protocol. It could be
> an option, but IMO, this is a separate issue: a route the kernel won't
> use shouldn't be used by BIRD either, so the check for the "dead" flag
> should be done in all cases.
> 

Thanks for the explanation but I'm still left a little bit puzzled.

So the issue unfoldes if I get routes via ${hop} and I'm supposed to 
reach ${hop} on an interface (using its device route for example) but 
the device is down? So bird will happily exports these routes to the 
kernel, but the kernel is never able to send packets on that link 
because its down. Do I understand this correctly?

A quick search revealed "Why Link-State Matters" from 2015
https://events.static.linuxfound.org/sites/events/files/slides/LinuxCON2015-why-link-state-matters.pdf 
which somehow give me a glace about the issue here...

This sysctl setting were unknown to me, and I did not know about `ip 
netconf` yet.

Bernd


More information about the Bird-users mailing list