BIRD incorrectly(?) detects whether a peer is directly connected

Arsen Arsenović arsen at aarsen.me
Wed Feb 16 03:32:55 CET 2022


Good evening!

When configuring BGP on a site BIRD fails to recognize whether an IP is
directly connected. It appears to scan over the list of interfaces and
check whether their subnets contain the target IP instead of relying on
the route table and checking whether the resulting route has a gateway
attribute. This does not work in some edge cases (such as, in our case,
the machine being configured for a /128 + a LAN route to avoid some
Linux autoconfiguration)

Perhaps a mechanism like [1] is preferable, where BIRD would query a
route from the kernel and check if it has a gateway on it. This is, at
least semantically, more correct, as the routing table (at least on
Linux) reflects on how addresses are reached exactly, whereas the
addresses associated with interfaces serve for autoconfiguration
purposes.

[1]: https://github.com/shemminger/iproute2/blob/a38d305d15c6a27084d5ebc1c79a831d3ac45b22/ip/iproute.c#L1984-L2222

PS: I'm unsure if my assessment of what currently happens is correct, I
    apologize if I got it wrong, but at any rate, it definitely fails to
    recognize that the peer is connected properly in our case.

Thanks in advance,
-- 
Arsen Arsenović
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: not available
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20220216/b36ce878/attachment.sig>


More information about the Bird-users mailing list