Closed KanjiMonster closed 4 months ago
This is more a general issue than just IPv6(LL) and affects any duplicate routes, but with the default IPv6LL routes on each enabled interface this is where it crops up by default.
You have the same issue when assigning IP addresses from the same subnet to multiple interfaces, but a proper fix for that will require libnl changes.
Currently we unconditionally delete the IPv6LL route when it get's deleted from the routing table. But this is a per-interface route, so just because one route is removed does not mean that there are none left.
So the following sequence
will result in the IPv6LL route being disabled, although port1 still has one.
So add a check on deletion if there are any remaining interfaces left with the IPv6LL route, and only actually delete it if there aren't any.