diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 09:53:30 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 09:53:30 +0000 |
commit | 2c7cac91ed6e7db0f6937923d2b57f97dbdbc337 (patch) | |
tree | c05dc0f8e6aa3accc84e3e5cffc933ed94941383 /tests/topotests/isis_lfa_topo1/rt1 | |
parent | Initial commit. (diff) | |
download | frr-2c7cac91ed6e7db0f6937923d2b57f97dbdbc337.tar.xz frr-2c7cac91ed6e7db0f6937923d2b57f97dbdbc337.zip |
Adding upstream version 8.4.4.upstream/8.4.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/topotests/isis_lfa_topo1/rt1')
16 files changed, 1614 insertions, 0 deletions
diff --git a/tests/topotests/isis_lfa_topo1/rt1/isisd.conf b/tests/topotests/isis_lfa_topo1/rt1/isisd.conf new file mode 100644 index 0000000..833cd66 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/isisd.conf @@ -0,0 +1,52 @@ +password 1 +hostname rt1 +log file isisd.log +! +! debug isis events +! debug isis route-events +! debug isis spf-events +! debug isis lsp-gen +! +interface lo + ipv6 router isis 1 + isis passive +! +interface eth-rt2 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + isis fast-reroute lfa +! +interface eth-rt3 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + isis fast-reroute lfa +! +interface eth-rt4 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + isis fast-reroute lfa +! +interface eth-rt5 + ipv6 router isis 1 + isis metric 20 + isis network point-to-point + isis hello-multiplier 3 + isis fast-reroute lfa +! +interface eth-rt6 + ipv6 router isis 1 + isis network point-to-point + isis hello-multiplier 3 + isis fast-reroute lfa +! +router isis 1 + net 49.0000.0000.0000.0001.00 + is-type level-1 + lsp-gen-interval 2 + topology ipv6-unicast + !fast-reroute lfa tiebreaker node-protecting index 10 + !fast-reroute lfa tiebreaker downstream index 20 + !fast-reroute lfa tiebreaker lowest-backup-metric index 30 diff --git a/tests/topotests/isis_lfa_topo1/rt1/step1/show_ipv6_route.ref b/tests/topotests/isis_lfa_topo1/rt1/step1/show_ipv6_route.ref new file mode 100644 index 0000000..10c61d5 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step1/show_ipv6_route.ref @@ -0,0 +1,236 @@ +{ + "2001:db8:1000::2\/128":[ + { + "prefix":"2001:db8:1000::2\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ + 0, + 1, + 2 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt6", + "active":true + } + ] + } + ], + "2001:db8:1000::3\/128":[ + { + "prefix":"2001:db8:1000::3\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true, + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "2001:db8:1000::4\/128":[ + { + "prefix":"2001:db8:1000::4\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true, + "backupIndex":[ + 0 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "2001:db8:1000::5\/128":[ + { + "prefix":"2001:db8:1000::5\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":30, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true, + "backupIndex":[ + 0, + 1, + 2, + 3 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt6", + "active":true + } + ] + } + ], + "2001:db8:1000::6\/128":[ + { + "prefix":"2001:db8:1000::6\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":20, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt6", + "active":true, + "backupIndex":[ + 0, + 1 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + } + ] + } + ], + "2001:db8:1000::7\/128":[ + { + "prefix":"2001:db8:1000::7\/128", + "protocol":"isis", + "selected":true, + "destSelected":true, + "distance":115, + "metric":25, + "installed":true, + "nexthops":[ + { + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ + 0, + 1, + 2, + 3 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + }, + { + "afi":"ipv6", + "interfaceName":"eth-rt6", + "active":true + } + ] + } + ] +} diff --git a/tests/topotests/isis_lfa_topo1/rt1/step1/show_yang_interface_isis_adjacencies.ref b/tests/topotests/isis_lfa_topo1/rt1/step1/show_yang_interface_isis_adjacencies.ref new file mode 100644 index 0000000..d8a7c5a --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step1/show_yang_interface_isis_adjacencies.ref @@ -0,0 +1,101 @@ +{ + "frr-interface:lib": { + "interface": [ + { + "name": "eth-rt2", + "vrf": "default", + "state": { + "frr-isisd:isis": { + "adjacencies": { + "adjacency": [ + { + "neighbor-sys-type": "level-1", + "neighbor-sysid": "0000.0000.0002", + "hold-timer": 9, + "neighbor-priority": 0, + "state": "up" + } + ] + } + } + } + }, + { + "name": "eth-rt3", + "vrf": "default", + "state": { + "frr-isisd:isis": { + "adjacencies": { + "adjacency": [ + { + "neighbor-sys-type": "level-1", + "neighbor-sysid": "0000.0000.0003", + "hold-timer": 9, + "neighbor-priority": 0, + "state": "up" + } + ] + } + } + } + }, + { + "name": "eth-rt4", + "vrf": "default", + "state": { + "frr-isisd:isis": { + "adjacencies": { + "adjacency": [ + { + "neighbor-sys-type": "level-1", + "neighbor-sysid": "0000.0000.0004", + "hold-timer": 9, + "neighbor-priority": 0, + "state": "up" + } + ] + } + } + } + }, + { + "name": "eth-rt5", + "vrf": "default", + "state": { + "frr-isisd:isis": { + "adjacencies": { + "adjacency": [ + { + "neighbor-sys-type": "level-1", + "neighbor-sysid": "0000.0000.0005", + "hold-timer": 9, + "neighbor-priority": 0, + "state": "up" + } + ] + } + } + } + }, + { + "name": "eth-rt6", + "vrf": "default", + "state": { + "frr-isisd:isis": { + "adjacencies": { + "adjacency": [ + { + "neighbor-sys-type": "level-1", + "neighbor-sysid": "0000.0000.0006", + "hold-timer": 9, + "neighbor-priority": 0, + "state": "up" + } + ] + } + } + } + } + ] + } +} diff --git a/tests/topotests/isis_lfa_topo1/rt1/step10/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step10/show_ipv6_route.ref.diff new file mode 100644 index 0000000..d626cdc --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step10/show_ipv6_route.ref.diff @@ -0,0 +1,46 @@ +--- a/rt1/step9/show_ipv6_route.ref ++++ b/rt1/step10/show_ipv6_route.ref +@@ -16,7 +16,8 @@ + "active":true, + "backupIndex":[ + 0, +- 1 ++ 1, ++ 2 + ] + } + ], +@@ -30,6 +31,11 @@ + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", ++ "active":true + } + ] + } +@@ -198,7 +204,8 @@ + "backupIndex":[ + 0, + 1, +- 2 ++ 2, ++ 3 + ] + } + ], +@@ -217,6 +224,11 @@ + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", ++ "active":true + } + ] + } diff --git a/tests/topotests/isis_lfa_topo1/rt1/step11/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step11/show_ipv6_route.ref.diff new file mode 100644 index 0000000..f7f99c2 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step11/show_ipv6_route.ref.diff @@ -0,0 +1,23 @@ +--- a/rt1/step10/show_ipv6_route.ref ++++ b/rt1/step11/show_ipv6_route.ref +@@ -204,19 +204,13 @@ + "backupIndex":[ + 0, + 1, +- 2, +- 3 ++ 2 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", + "interfaceName":"eth-rt4", + "active":true + }, diff --git a/tests/topotests/isis_lfa_topo1/rt1/step12/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step12/show_ipv6_route.ref.diff new file mode 100644 index 0000000..3b767f1 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step12/show_ipv6_route.ref.diff @@ -0,0 +1,107 @@ +--- a/rt1/step11/show_ipv6_route.ref ++++ b/rt1/step12/show_ipv6_route.ref +@@ -15,9 +15,7 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0, +- 1, +- 2 ++ 0 + ] + } + ], +@@ -26,16 +24,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } +@@ -56,8 +44,7 @@ + "interfaceName":"eth-rt3", + "active":true, + "backupIndex":[ +- 0, +- 1 ++ 0 + ] + } + ], +@@ -66,11 +53,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true + } + ] + } +@@ -120,10 +102,7 @@ + "interfaceName":"eth-rt5", + "active":true, + "backupIndex":[ +- 0, +- 1, +- 2, +- 3 ++ 0 + ] + } + ], +@@ -132,21 +111,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } +@@ -203,19 +167,13 @@ + "active":true, + "backupIndex":[ + 0, +- 1, +- 2 ++ 1 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true + }, diff --git a/tests/topotests/isis_lfa_topo1/rt1/step13/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step13/show_ipv6_route.ref.diff new file mode 100644 index 0000000..504af5a --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step13/show_ipv6_route.ref.diff @@ -0,0 +1,45 @@ +--- a/rt1/step12/show_ipv6_route.ref ++++ b/rt1/step13/show_ipv6_route.ref +@@ -131,8 +131,7 @@ + "interfaceName":"eth-rt6", + "active":true, + "backupIndex":[ +- 0, +- 1 ++ 0 + ] + } + ], +@@ -141,11 +140,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true + } + ] + } +@@ -166,19 +160,13 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0, +- 1 ++ 0 + ] + } + ], + "backupNexthops":[ + { + "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", + "interfaceName":"eth-rt6", + "active":true + } diff --git a/tests/topotests/isis_lfa_topo1/rt1/step2/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step2/show_ipv6_route.ref.diff new file mode 100644 index 0000000..efc56d9 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step2/show_ipv6_route.ref.diff @@ -0,0 +1,164 @@ +--- a/rt1/step1/show_ipv6_route.ref ++++ b/rt1/step2/show_ipv6_route.ref +@@ -13,28 +13,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -54,22 +32,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3", +- "active":true, +- "backupIndex":[ +- 0, +- 1 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -89,16 +51,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", +- "active":true, +- "backupIndex":[ +- 0 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -118,34 +70,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt5", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2, +- 3 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -165,22 +89,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt6", +- "active":true, +- "backupIndex":[ +- 0, +- 1 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -200,34 +108,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2, +- 3 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] diff --git a/tests/topotests/isis_lfa_topo1/rt1/step3/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step3/show_ipv6_route.ref.diff new file mode 100644 index 0000000..cafbe49 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step3/show_ipv6_route.ref.diff @@ -0,0 +1,164 @@ +--- a/rt1/step2/show_ipv6_route.ref ++++ b/rt1/step3/show_ipv6_route.ref +@@ -13,6 +13,28 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -32,6 +54,22 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -51,6 +89,16 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", ++ "active":true, ++ "backupIndex":[ ++ 0 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -70,6 +118,34 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt5", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2, ++ 3 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -89,6 +165,22 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt6", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -108,6 +200,34 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2, ++ 3 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] diff --git a/tests/topotests/isis_lfa_topo1/rt1/step4/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step4/show_ipv6_route.ref.diff new file mode 100644 index 0000000..47d8334 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step4/show_ipv6_route.ref.diff @@ -0,0 +1,142 @@ +--- a/rt1/step3/show_ipv6_route.ref ++++ b/rt1/step4/show_ipv6_route.ref +@@ -15,9 +15,7 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0, +- 1, +- 2 ++ 0 + ] + } + ], +@@ -26,16 +24,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } +@@ -56,8 +44,7 @@ + "interfaceName":"eth-rt3", + "active":true, + "backupIndex":[ +- 0, +- 1 ++ 0 + ] + } + ], +@@ -66,11 +53,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true + } + ] + } +@@ -120,10 +102,7 @@ + "interfaceName":"eth-rt5", + "active":true, + "backupIndex":[ +- 0, +- 1, +- 2, +- 3 ++ 0 + ] + } + ], +@@ -132,21 +111,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } +@@ -167,8 +131,7 @@ + "interfaceName":"eth-rt6", + "active":true, + "backupIndex":[ +- 0, +- 1 ++ 0 + ] + } + ], +@@ -177,11 +140,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true + } + ] + } +@@ -202,10 +160,7 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0, +- 1, +- 2, +- 3 ++ 0 + ] + } + ], +@@ -214,21 +169,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } diff --git a/tests/topotests/isis_lfa_topo1/rt1/step5/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step5/show_ipv6_route.ref.diff new file mode 100644 index 0000000..b6a342d --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step5/show_ipv6_route.ref.diff @@ -0,0 +1,142 @@ +--- a/rt1/step4/show_ipv6_route.ref ++++ b/rt1/step5/show_ipv6_route.ref +@@ -15,7 +15,9 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0 ++ 0, ++ 1, ++ 2 + ] + } + ], +@@ -24,6 +26,16 @@ + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", ++ "active":true + } + ] + } +@@ -44,7 +56,8 @@ + "interfaceName":"eth-rt3", + "active":true, + "backupIndex":[ +- 0 ++ 0, ++ 1 + ] + } + ], +@@ -53,6 +66,11 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true + } + ] + } +@@ -102,7 +120,10 @@ + "interfaceName":"eth-rt5", + "active":true, + "backupIndex":[ +- 0 ++ 0, ++ 1, ++ 2, ++ 3 + ] + } + ], +@@ -111,6 +132,21 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", ++ "active":true + } + ] + } +@@ -131,7 +167,8 @@ + "interfaceName":"eth-rt6", + "active":true, + "backupIndex":[ +- 0 ++ 0, ++ 1 + ] + } + ], +@@ -140,6 +177,11 @@ + "afi":"ipv6", + "interfaceName":"eth-rt2", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true + } + ] + } +@@ -160,7 +202,10 @@ + "interfaceName":"eth-rt2", + "active":true, + "backupIndex":[ +- 0 ++ 0, ++ 1, ++ 2, ++ 3 + ] + } + ], +@@ -169,6 +214,21 @@ + "afi":"ipv6", + "interfaceName":"eth-rt3", + "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", ++ "active":true + } + ] + } diff --git a/tests/topotests/isis_lfa_topo1/rt1/step6/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step6/show_ipv6_route.ref.diff new file mode 100644 index 0000000..fafa299 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step6/show_ipv6_route.ref.diff @@ -0,0 +1,164 @@ +--- a/rt1/step5/show_ipv6_route.ref ++++ b/rt1/step6/show_ipv6_route.ref +@@ -13,28 +13,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -54,22 +32,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3", +- "active":true, +- "backupIndex":[ +- 0, +- 1 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -89,16 +51,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", +- "active":true, +- "backupIndex":[ +- 0 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -118,34 +70,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt5", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2, +- 3 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -165,22 +89,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt6", +- "active":true, +- "backupIndex":[ +- 0, +- 1 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt2", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -200,34 +108,6 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", +- "active":true, +- "backupIndex":[ +- 0, +- 1, +- 2, +- 3 +- ] +- } +- ], +- "backupNexthops":[ +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt3", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt4", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt5", +- "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", + "active":true + } + ] diff --git a/tests/topotests/isis_lfa_topo1/rt1/step7/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step7/show_ipv6_route.ref.diff new file mode 100644 index 0000000..1803e2c --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step7/show_ipv6_route.ref.diff @@ -0,0 +1,37 @@ +--- a/rt1/step6/show_ipv6_route.ref ++++ b/rt1/step7/show_ipv6_route.ref +@@ -108,6 +108,34 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2, ++ 3 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] diff --git a/tests/topotests/isis_lfa_topo1/rt1/step8/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step8/show_ipv6_route.ref.diff new file mode 100644 index 0000000..306f725 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step8/show_ipv6_route.ref.diff @@ -0,0 +1,129 @@ +--- a/rt1/step7/show_ipv6_route.ref ++++ b/rt1/step8/show_ipv6_route.ref +@@ -13,6 +13,28 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt2", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -32,6 +54,22 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt3", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -51,6 +89,16 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt4", ++ "active":true, ++ "backupIndex":[ ++ 0 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] +@@ -70,6 +118,34 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt5", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1, ++ 2, ++ 3 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt3", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt4", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt6", + "active":true + } + ] +@@ -89,6 +165,22 @@ + "fib":true, + "afi":"ipv6", + "interfaceName":"eth-rt6", ++ "active":true, ++ "backupIndex":[ ++ 0, ++ 1 ++ ] ++ } ++ ], ++ "backupNexthops":[ ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt2", ++ "active":true ++ }, ++ { ++ "afi":"ipv6", ++ "interfaceName":"eth-rt5", + "active":true + } + ] diff --git a/tests/topotests/isis_lfa_topo1/rt1/step9/show_ipv6_route.ref.diff b/tests/topotests/isis_lfa_topo1/rt1/step9/show_ipv6_route.ref.diff new file mode 100644 index 0000000..3ffab46 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/step9/show_ipv6_route.ref.diff @@ -0,0 +1,46 @@ +--- a/rt1/step8/show_ipv6_route.ref ++++ b/rt1/step9/show_ipv6_route.ref +@@ -16,8 +16,7 @@ + "active":true, + "backupIndex":[ + 0, +- 1, +- 2 ++ 1 + ] + } + ], +@@ -31,11 +30,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } +@@ -204,8 +198,7 @@ + "backupIndex":[ + 0, + 1, +- 2, +- 3 ++ 2 + ] + } + ], +@@ -224,11 +217,6 @@ + "afi":"ipv6", + "interfaceName":"eth-rt5", + "active":true +- }, +- { +- "afi":"ipv6", +- "interfaceName":"eth-rt6", +- "active":true + } + ] + } diff --git a/tests/topotests/isis_lfa_topo1/rt1/zebra.conf b/tests/topotests/isis_lfa_topo1/rt1/zebra.conf new file mode 100644 index 0000000..4ce1444 --- /dev/null +++ b/tests/topotests/isis_lfa_topo1/rt1/zebra.conf @@ -0,0 +1,16 @@ +log file zebra.log +! +hostname rt1 +! +! debug zebra kernel +! debug zebra packet +! debug zebra mpls +! +interface lo + ip address 1.1.1.1/32 + ipv6 address 2001:db8:1000::1/128 +! +ip forwarding +! +line vty +! |