[FROG] FRR "overlooks" creation of kernel routes (on linux) - how to debug?
Eugene Crosser
crosser at average.org
Fri Mar 25 14:38:05 UTC 2022
Hello,
I am trying to investigate a situation when after a flurry of activity
when a whole bunch of veth, vrf interfaces are created, with a bunch of
addresses and routes added to them, not all of such routes appear in the
FRR's view ("show ip route"), and consequently not redistributed.
(If I later delete and re-add the route in the kernel, FRR notices it
and redistributes it.)
I am trying to understand the workflow that "notices" newly added routes
and adds them into zebra's state, and I have no success so far. It looks
like netlink messages NEWROUTE and DELROUTE are never seen by zebra
process, neither asynchronous announcements, nor resulted from a "dump"
request, even when the routes are successfully noticed!
To troubleshoot, I need to understand how this _should_ work.
Documentation contains some vague references to multiple ways of reading
the kernel route table, but it's not easy to find it in zebra code.
Can someone explain how zebra process gets informed about an added or
removed kernel route, and what mechanism is used to get it from the
kernel? Then I may be able to track down the part that does not work
reliably.
I am running on relatively recent Linux (kernel 5.10.x).
Thanks,
Eugene
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.frrouting.org/pipermail/frog/attachments/20220325/d162f5c3/attachment.sig>
More information about the frog
mailing list