summaryrefslogtreecommitdiff
path: root/zebra/interface.c
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2023-12-21 14:25:19 +0200
committerDonatas Abraitis <donatas@opensourcerouting.org>2023-12-21 16:32:14 +0200
commit02f8cf776940f04671e592e0abf719e75aa93a7a (patch)
treeef2e34092f76739f7adbca43328514701c1a7ef7 /zebra/interface.c
parentbbda45a82546bc0d841de5503e14b674db5e8c80 (diff)
zebra: Push all configured IP addresses when the interface comes up
Let's say we this: ``` $ ip link set down dev r1-eth0 $ ip link set up dev r1-eth0 ``` But at the same time we have this interface configured by the FRR too: ``` interface r1-eth0 ipv6 address fe80:1::1/64 exit ``` We never re-add fe80:1::1/64, when the interface comes up, and we have a strange situation where NHT stops working and other stuff depending on NHT stops too (BGP peering, etc.). Closes: https://github.com/FRRouting/frr/issues/15050 Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Diffstat (limited to 'zebra/interface.c')
-rw-r--r--zebra/interface.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/zebra/interface.c b/zebra/interface.c
index 39d24f1883..41ef5e436d 100644
--- a/zebra/interface.c
+++ b/zebra/interface.c
@@ -1054,6 +1054,8 @@ void if_up(struct interface *ifp, bool install_connected)
event_add_timer(zrouter.master, if_zebra_speed_update, ifp, 0,
&zif->speed_update);
event_ignore_late_timer(zif->speed_update);
+
+ if_addr_wakeup(ifp);
}
/* Interface goes down. We have to manage different behavior of based