Discrepancy Between Kernel Routing Table and Zebra's Internal Routing Table for "proto kernel" Routes #14731
Unanswered
omarshaarawi
asked this question in
Q&A
Replies: 1 comment
-
Same problem cilium/cilium#31243 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
I am investigating a setup where Zebra manages routing on my system, and I came upon a discrepancy between the kernel routing table and Zebra's internal routing table regarding "proto kernel" routes. Specifically, certain "proto kernel" routes visible in the kernel routing table do not appear in Zebra's internal routing table.
One clarification I'd like to make is that these routes are not associated with interfaces that have addresses on the host. Unlike the routes of addressed interfaces that Zebra installs regardless of their presence in the kernel routing table, these routes seem to be ignored by Zebra.
Here's a snippet from the kernel routing table:
And here's a snippet from Zebra's routing table:
The routes for
10.10.22.8
and10.10.22.11
are missing in Zebra's tableI have reviewed the source code and came across the
netlink_route_change_read_unicast_internal
function. It seems to have a check forrtm->rtm_protocol == RTPROT_KERNEL
that causes the function to return early without further processing of the "proto kernel" routes.These routes are created by Cilium, and I am curious to understand if this behavior is intended or if there's a configuration within Zebra to control the import of "proto kernel" routes from the kernel routing table.
I'd appreciate any insight or guidance on this issue
Beta Was this translation helpful? Give feedback.
All reactions