You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Linux does not send RTM_DELROUTE messages when routes are deleted because an interface has gone down (info in [1], for example). It seems this is a kernel design decision (not a bug) to prevent floods of netlink messages being generated when a link with many associated routes goes down.
A libnl user could detect the link down transition and remove routes referencing that link from the route cache but I think it would be helpful if the caching system did this automatically, and fired the route change callback for the associated routes. As things are currently, the route cache loses synchronisation with the actual state of the Linux routing table when a link down event causes routes to be removed by the kernel.
As a related topic, deleting an IPv4 nexthop will also remove all (single nexthop) routes using it without RTM_DELROUTE events. Deleting IPv6 nexthops do trigger RTM_DELROUTE events though (at least as of 6.1).
Linux does not send RTM_DELROUTE messages when routes are deleted because an interface has gone down (info in [1], for example). It seems this is a kernel design decision (not a bug) to prevent floods of netlink messages being generated when a link with many associated routes goes down.
A libnl user could detect the link down transition and remove routes referencing that link from the route cache but I think it would be helpful if the caching system did this automatically, and fired the route change callback for the associated routes. As things are currently, the route cache loses synchronisation with the actual state of the Linux routing table when a link down event causes routes to be removed by the kernel.
1 https://www.spinics.net/lists/netdev/msg254186.html
The text was updated successfully, but these errors were encountered: