]> git.puffer.fish Git - mirror/frr.git/commit
bgpd: resend routes deleted by kernel after interface addresses deletion
authorLouis Scalbert <louis.scalbert@6wind.com>
Fri, 6 May 2022 18:03:55 +0000 (20:03 +0200)
committerLouis Scalbert <louis.scalbert@6wind.com>
Fri, 16 Dec 2022 14:07:49 +0000 (15:07 +0100)
commit5f6c0ba6d2aa63f41a37f595a1531527cde76340
treeea63b117b14dbf8a6775a700191fbb8ff09ce09a
parentc6b38684bd040bdf6e2877f60eda7d8dc009ab87
bgpd: resend routes deleted by kernel after interface addresses deletion

When the last IPv4 address of an interface is deleted, Linux removes all
routes includes BGP ones using this interface without any Netlink
advertisement. bgpd keeps them in RIB as valid (e.g. installed in FIB).

The previous patch invalidates the associated nexthop groups in zebra
but bgpd is not notified of the event.

> 2022/05/09 17:37:52.925 ZEBRA: [TQKA8-0276P] Not Notifying Owner: connected about prefix 29.0.0.0/24(40) 3 vrf: 7

Look for the bgp_path_info that are unsynchronized with the kernel and
flag them for refresh in their attributes. A VPN route leaking update is
calles and the refresh flag triggers a route refresh to zebra and then a
kernel FIB installation.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
bgpd/bgp_attr.h
bgpd/bgp_mplsvpn.c
bgpd/bgp_zebra.c