-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Wrong delete/add of connected routes when interface flaps #14488
Comments
Network Diagram
Configurationtest-r1
test-r2
test-r3
test-r4
Expected BehaviorWhen all interfaces are up:
(note the last three entries as well as the ones learned via OSPFv3) Now take the links between
Expected output:
Bottom line: Traffic to all three routers is correctly rerouted via Now take the links back up:
Expected output:
Bottom line: Routes are correctly re-added. Actual Behavior (tested using FRR 9.0.1 from deb.frrouting.org)When all interfaces are up:
(note the last three entries as well as the ones learned via OSPFv3) Now take the links between
You will then see the following errors in the log:
Actual output:
(we expect a link-local directly connected route on eth3, but not on eth1) Bring the links back up:
Actual output:
(now we have two link-local connected routes for eth1... but the route for eth3 is missing.) Next, I will test #13340 on this setup. |
Actual Behavior (tested using FRR 9.1-Dev-PR13340)All interfaces up:
Now take the links between
Actual output:
While we no longer see wrong next-hops for directly connected link-local routes (eth3 is correct), we see a connected route for the GUA address on eth1: This gets worse when bringing the links back up:
Actual output:
We now see two connected routes for eth1 and none for eth3, see this part here:
IMO #13340 does not (completely) fix the issue. |
This is a preview that needs further work. See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. Note that the underlying issue presents itself as a race condition at times, causing some of the tests to pass (rarely). While no instances of all tests passing in a single run have been observed, all tests should probably be run multiple times, once the underlying issue has been fixed, to be sure. See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. Note that the underlying issue presents itself as a race condition at times, causing some of the tests to pass (rarely). While no instances of all tests passing in a single run have been observed, all tests should probably be run multiple times, once the underlying issue has been fixed, to be sure. See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. Note that the underlying issue presents itself as a race condition at times, causing some of the tests to pass (rarely). While no instances of all tests passing in a single run have been observed, all tests should probably be run multiple times, once the underlying issue has been fixed, to be sure. See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with FRRouting#13340 and the latest master (d2324b7). See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with FRRouting#13340 and the latest master (d2324b7). See FRRouting#14488
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with FRRouting#13340 and the latest master (d2324b7). See FRRouting#14488 Signed-off-by: Denis Krienbühl <[email protected]>
Update: |
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with FRRouting#13340 and the latest master (d2324b7). See FRRouting#14488 Signed-off-by: Denis Krienbühl <[email protected]>
@mwinter-osr With the merge of #13340 and an added topotest to catch regressions in #14582 I think we can go ahead and close this issue. |
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with #13340 and the latest master (d2324b7). See #14488 Signed-off-by: Denis Krienbühl <[email protected]> (cherry picked from commit 616e1fa)
OSPF on IPv4/IPv6 removes the wrong routes in certain cases, causing issues when removing and re-enabling interfaces. This test proofs that. These tests all pass with FRRouting#13340 and the latest master (d2324b7). See FRRouting#14488 Ticket: #3684268 Signed-off-by: Denis Krienbühl <[email protected]> (cherry picked from commit 616e1fa)
This issue is stale because it has been open 180 days with no activity. Comment or remove the |
This issue will be automatically closed in the specified period unless there is further activity. |
This is seen in Release 9.0, 9.0.1 and latest master as of Sept 25, 2023 (sha 1c829fa)
I have a topology as follows:
(
==
are dual links)and run OSPFv3
I see the following routes on R2:
(Pay attention to last 4 connected routes - one fe80::/64 for each interface)
Now disabling enp8s0 and enp9s0:
Routing table now looks like this:
--> Notice the last 2 entries: enp7s0 and en8s0 got removed, but I've disabled enp8s0 and enp9s0.
Wrong routes get removed.
The fix is most likely PR #13340 - A quick test shows that this is fixed with this PR
The text was updated successfully, but these errors were encountered: