mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-05-29 06:03:27 +00:00
tests: rework isis_tilfa_topo1 to fix timing issues
In this topotest, steps 10-15 were added to test the IS-IS switchover functionality. In short, two cases were tested: switchover after a link down event and switchover after a BFD down event. Both cases were tested in sequence on the same router, rt6. This involved the following steps: - Setting the SPF delay timer to 15 seconds - Shutting down the eth-rt5 interface from the switch side - Testing the post-switchover RIB and LIB (triggered by the link down event) - Testing the post-SPF RIB and LIB - Bringing the eth-rt5 interface back up - Configuring a BFD session between rt6 and rt5 - Shutting down the eth-rt5 interface from the switch side once again - Testing the post-switchover RIB and LIB (triggered by the BFD down event) - Testing the post-SPF RIB and LIB Since the time window to test the post-switchover RIB and LIB was too narrow (10 seconds), these tests were having sporadic failures. To resolve this problem, we can simplify the switchover test as follows: - Setting the SPF delay timer to 60 seconds (not 15) - Disabling "link-detect" on rt6's eth-rt5 interface - Shutting down the eth-rt5 interface from the switch side - On rt6, testing the post-switchover RIB and LIB (triggered by the BFD down event) - On rt5, testing the post-switchover RIB and LIB (triggered by the link down event) Notice how we can test both post-link-down and post-BFD-down switchover cases simultaneously by having different "link-detect" configurations on rt5 and rt6. Additionally, by using a larger SPF delay timer, the time window to test the post-switchover RIB and LIB is much larger and less prone to sporadic failures. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
This commit is contained in:
parent
19c3e0eca6
commit
04655c5f74
@ -1,19 +0,0 @@
|
||||
--- a/rt1/step11/show_ip_route.ref
|
||||
+++ b/rt1/step12/show_ip_route.ref
|
||||
@@ -110,16 +110,6 @@
|
||||
"labels":[
|
||||
16060
|
||||
]
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.1.3",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-sw1",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16060
|
||||
- ]
|
||||
}
|
||||
]
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
--- a/rt1/step11/show_ipv6_route.ref
|
||||
+++ b/rt1/step12/show_ipv6_route.ref
|
||||
@@ -105,15 +105,6 @@
|
||||
"labels":[
|
||||
16061
|
||||
]
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-sw1",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16061
|
||||
- ]
|
||||
}
|
||||
]
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
--- a/rt1/step11/show_mpls_table.ref
|
||||
+++ b/rt1/step12/show_mpls_table.ref
|
||||
@@ -79,12 +79,6 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16060,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.1.3"
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16060,
|
||||
- "installed":true,
|
||||
"nexthop":"10.0.1.2"
|
||||
}
|
||||
]
|
||||
@@ -96,12 +90,6 @@
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16061,
|
||||
- "installed":true,
|
||||
- "interface":"eth-sw1"
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16061,
|
||||
"installed":true,
|
||||
"interface":"eth-sw1"
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
--- a/rt2/step11/show_mpls_table.ref
|
||||
+++ b/rt2/step12/show_mpls_table.ref
|
||||
@@ -199,7 +199,7 @@
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":16060,
|
||||
+ "outLabel":16500,
|
||||
"nexthop":"10.0.1.3"
|
||||
}
|
||||
]
|
||||
@@ -230,7 +230,7 @@
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":16061,
|
||||
+ "outLabel":16501,
|
||||
"interface":"eth-sw1"
|
||||
}
|
||||
]
|
@ -1,58 +0,0 @@
|
||||
--- a/rt3/step11/show_ip_route.ref
|
||||
+++ b/rt3/step12/show_ip_route.ref
|
||||
@@ -198,44 +198,37 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":30,
|
||||
+ "metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.4.5",
|
||||
+ "ip":"10.0.1.2",
|
||||
"afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5-1",
|
||||
+ "interfaceName":"eth-sw1",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
- 30060
|
||||
+ 16060
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.5.5",
|
||||
+ "ip":"10.0.4.5",
|
||||
"afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5-2",
|
||||
+ "interfaceName":"eth-rt5-1",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
30060
|
||||
]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
+ },
|
||||
{
|
||||
- "ip":"10.0.1.2",
|
||||
+ "fib":true,
|
||||
+ "ip":"10.0.5.5",
|
||||
"afi":"ipv4",
|
||||
- "interfaceName":"eth-sw1",
|
||||
+ "interfaceName":"eth-rt5-2",
|
||||
"active":true,
|
||||
"labels":[
|
||||
- 16060
|
||||
+ 30060
|
||||
]
|
||||
}
|
||||
]
|
@ -1,45 +0,0 @@
|
||||
--- a/rt3/step11/show_ipv6_route.ref
|
||||
+++ b/rt3/step12/show_ipv6_route.ref
|
||||
@@ -186,7 +186,7 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":30,
|
||||
+ "metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
@@ -194,9 +194,6 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt5-1",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
30061
|
||||
]
|
||||
@@ -206,23 +203,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt5-2",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
30061
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-sw1",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16061
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
]
|
@ -1,60 +0,0 @@
|
||||
--- a/rt3/step11/show_mpls_table.ref
|
||||
+++ b/rt3/step12/show_mpls_table.ref
|
||||
@@ -165,27 +165,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":30060,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.5.5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30060,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.4.5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16060,
|
||||
+ "installed":true,
|
||||
"nexthop":"10.0.1.2"
|
||||
}
|
||||
]
|
||||
@@ -196,27 +177,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":30061,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt5-2",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30061,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt5-1",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16061,
|
||||
+ "installed":true,
|
||||
"interface":"eth-sw1"
|
||||
}
|
||||
]
|
@ -1,144 +0,0 @@
|
||||
--- a/rt4/step11/show_ip_route.ref
|
||||
+++ b/rt4/step12/show_ip_route.ref
|
||||
@@ -160,23 +160,13 @@
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
- 0
|
||||
+ 0,
|
||||
+ 1
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.7.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16500
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -196,24 +186,10 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.6.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30060
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -352,19 +328,12 @@
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
- 1,
|
||||
- 2
|
||||
+ 1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
- "ip":"10.0.7.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- },
|
||||
- {
|
||||
"ip":"10.0.2.2",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt2-1",
|
||||
@@ -397,19 +366,12 @@
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
- 1,
|
||||
- 2
|
||||
+ 1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
- "ip":"10.0.7.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- },
|
||||
- {
|
||||
"ip":"10.0.2.2",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt2-1",
|
||||
@@ -439,14 +401,6 @@
|
||||
0
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.7.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -460,18 +414,7 @@
|
||||
{
|
||||
"ip":"10.0.7.6",
|
||||
"afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.6.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true
|
||||
+ "interfaceName":"eth-rt6"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -492,13 +435,6 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.7.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
}
|
||||
]
|
||||
}
|
@ -1,50 +0,0 @@
|
||||
--- a/rt4/step11/show_ipv6_route.ref
|
||||
+++ b/rt4/step12/show_ipv6_route.ref
|
||||
@@ -149,23 +149,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16501
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -184,23 +171,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30061
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
]
|
@ -1,78 +0,0 @@
|
||||
--- a/rt4/step11/show_mpls_table.ref
|
||||
+++ b/rt4/step12/show_mpls_table.ref
|
||||
@@ -179,17 +179,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.7.6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30060,
|
||||
- "nexthop":"10.0.6.5"
|
||||
+ "nexthop":"10.0.7.6"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -201,17 +191,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "interface":"eth-rt6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30061,
|
||||
- "interface":"eth-rt5"
|
||||
+ "interface":"eth-rt6"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -223,17 +203,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.6.5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16500,
|
||||
- "nexthop":"10.0.7.6"
|
||||
+ "nexthop":"10.0.6.5"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -245,17 +215,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "interface":"eth-rt5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16501,
|
||||
- "interface":"eth-rt6"
|
||||
+ "interface":"eth-rt5"
|
||||
}
|
||||
]
|
||||
}
|
482
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref
Normal file
482
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ip_route.ref
Normal file
@ -0,0 +1,482 @@
|
||||
{
|
||||
"1.1.1.1\/32":[
|
||||
{
|
||||
"prefix":"1.1.1.1\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
16010
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
16010
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16010
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2.2.2.2\/32":[
|
||||
{
|
||||
"prefix":"2.2.2.2\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"3.3.3.3\/32":[
|
||||
{
|
||||
"prefix":"3.3.3.3\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020,
|
||||
16030
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"4.4.4.4\/32":[
|
||||
{
|
||||
"prefix":"4.4.4.4\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.6",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16040
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"6.6.6.6\/32":[
|
||||
{
|
||||
"prefix":"6.6.6.6\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16060
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.1.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.1.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.2.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.2.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.6",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.3.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.3.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.6",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.4.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.4.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"nexthops":[
|
||||
{
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.5.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.5.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"nexthops":[
|
||||
{
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"ip":"10.0.5.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.6.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.6.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"nexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.6",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.7.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.7.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.8.6",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt6",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.8.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.8.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"nexthops":[
|
||||
{
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
229
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref
Normal file
229
tests/topotests/isis_tilfa_topo1/rt5/step10/show_ipv6_route.ref
Normal file
@ -0,0 +1,229 @@
|
||||
{
|
||||
"2001:db8:1000::1\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::1\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
16011
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
16011
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16011
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2001:db8:1000::2\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::2\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"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-1",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021,
|
||||
16031
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"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,
|
||||
1
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021,
|
||||
16041
|
||||
]
|
||||
},
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021,
|
||||
16041
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2001:db8:1000::6\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::6\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
1
|
||||
],
|
||||
"labels":[
|
||||
16061
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021,
|
||||
16061
|
||||
]
|
||||
},
|
||||
{
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt3-2",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021,
|
||||
16061
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
301
tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref
Normal file
301
tests/topotests/isis_tilfa_topo1/rt5/step10/show_mpls_table.ref
Normal file
@ -0,0 +1,301 @@
|
||||
{
|
||||
"30010":{
|
||||
"inLabel":30010,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16010,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.5.3",
|
||||
"interface":"eth-rt3-2",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16010,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.4.3",
|
||||
"interface":"eth-rt3-1",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16010,
|
||||
"nexthop":"10.0.6.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30011":{
|
||||
"inLabel":30011,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16011,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-2",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16011,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-1",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16011,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30020":{
|
||||
"inLabel":30020,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.5.3",
|
||||
"interface":"eth-rt3-2"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.4.3",
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.6.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30021":{
|
||||
"inLabel":30021,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-2"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30030":{
|
||||
"inLabel":30030,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.5.3",
|
||||
"interface":"eth-rt3-2",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.4.3",
|
||||
"interface":"eth-rt3-1",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"nexthop":"10.0.6.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30031":{
|
||||
"inLabel":30031,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-2",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"interface":"eth-rt3-1",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30040":{
|
||||
"inLabel":30040,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.6.4",
|
||||
"interface":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0,
|
||||
1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"nexthop":"10.0.4.3",
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"nexthop":"10.0.5.3",
|
||||
"interface":"eth-rt3-2"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30041":{
|
||||
"inLabel":30041,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0,
|
||||
1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"interface":"eth-rt3-2"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30060":{
|
||||
"inLabel":30060,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16060,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.6.4",
|
||||
"interface":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0,
|
||||
1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"nexthop":"10.0.4.3",
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"nexthop":"10.0.5.3",
|
||||
"interface":"eth-rt3-2"
|
||||
}
|
||||
]
|
||||
},
|
||||
"30061":{
|
||||
"inLabel":30061,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16061,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0,
|
||||
1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"interface":"eth-rt3-1"
|
||||
},
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"interface":"eth-rt3-2"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -1,151 +0,0 @@
|
||||
--- a/rt5/step11/show_ip_route.ref
|
||||
+++ b/rt5/step12/show_ip_route.ref
|
||||
@@ -159,24 +159,10 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16040
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -187,25 +173,11 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 3
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
@@ -276,19 +248,12 @@
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
- 1,
|
||||
- 2
|
||||
+ 1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- },
|
||||
- {
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
@@ -321,19 +286,12 @@
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0,
|
||||
- 1,
|
||||
- 2
|
||||
+ 1
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- },
|
||||
- {
|
||||
"ip":"10.0.4.3",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt3-1",
|
||||
@@ -439,14 +397,6 @@
|
||||
0
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -465,39 +415,6 @@
|
||||
"ip":"10.0.6.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
- "active":true
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true
|
||||
- }
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "10.0.8.0\/24":[
|
||||
- {
|
||||
- "prefix":"10.0.8.0\/24",
|
||||
- "protocol":"isis",
|
||||
- "distance":115,
|
||||
- "metric":20,
|
||||
- "nexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.6",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.6.4",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
@ -1,53 +0,0 @@
|
||||
--- a/rt5/step11/show_ipv6_route.ref
|
||||
+++ b/rt5/step12/show_ipv6_route.ref
|
||||
@@ -149,23 +149,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 16041
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -176,25 +163,12 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
- "interfaceName":"eth-rt6",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 3
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
@ -1,80 +0,0 @@
|
||||
--- a/rt5/step11/show_mpls_table.ref
|
||||
+++ b/rt5/step12/show_mpls_table.ref
|
||||
@@ -179,17 +179,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.6.4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16040,
|
||||
- "nexthop":"10.0.8.6"
|
||||
+ "nexthop":"10.0.6.4"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -201,17 +191,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "interface":"eth-rt4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":16041,
|
||||
- "interface":"eth-rt6"
|
||||
+ "interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -221,18 +201,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":3,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.8.6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16060,
|
||||
+ "installed":true,
|
||||
"nexthop":"10.0.6.4"
|
||||
}
|
||||
]
|
||||
@@ -243,18 +213,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":3,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt6",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16061,
|
||||
+ "installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"multihop":false,
|
||||
"peer":"10.0.8.5",
|
||||
"interface":"eth-rt5",
|
||||
"status":"down"
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"multihop":false,
|
||||
"peer":"10.0.8.5",
|
||||
"interface":"eth-rt5",
|
||||
"status":"up"
|
||||
}
|
354
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref
Normal file
354
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ip_route.ref
Normal file
@ -0,0 +1,354 @@
|
||||
{
|
||||
"1.1.1.1\/32":[
|
||||
{
|
||||
"prefix":"1.1.1.1\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16010
|
||||
]
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true,
|
||||
"labels":[
|
||||
30010
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2.2.2.2\/32":[
|
||||
{
|
||||
"prefix":"2.2.2.2\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true,
|
||||
"labels":[
|
||||
30020
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"3.3.3.3\/32":[
|
||||
{
|
||||
"prefix":"3.3.3.3\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16030
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"4.4.4.4\/32":[
|
||||
{
|
||||
"prefix":"4.4.4.4\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true,
|
||||
"labels":[
|
||||
30040
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"5.5.5.5\/32":[
|
||||
{
|
||||
"prefix":"5.5.5.5\/32",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16500
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.1.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.1.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.2.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.2.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.3.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.3.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.4.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.4.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.5.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.5.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.6.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.6.0\/24",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
},
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.7.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.7.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":20,
|
||||
"nexthops":[
|
||||
{
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"backupIndex":[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"backupNexthops":[
|
||||
{
|
||||
"ip":"10.0.8.5",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"10.0.8.0\/24":[
|
||||
{
|
||||
"prefix":"10.0.8.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
112
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref
Normal file
112
tests/topotests/isis_tilfa_topo1/rt6/step10/show_ipv6_route.ref
Normal file
@ -0,0 +1,112 @@
|
||||
{
|
||||
"2001:db8:1000::1\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::1\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16011
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2001:db8:1000::2\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::2\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16021
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2001:db8:1000::3\/128":[
|
||||
{
|
||||
"prefix":"2001:db8:1000::3\/128",
|
||||
"protocol":"isis",
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
"metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16031
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"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,
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"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-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
16501
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
127
tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref
Normal file
127
tests/topotests/isis_tilfa_topo1/rt6/step10/show_mpls_table.ref
Normal file
@ -0,0 +1,127 @@
|
||||
{
|
||||
"16010":{
|
||||
"inLabel":16010,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16010,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16011":{
|
||||
"inLabel":16011,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16011,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16020":{
|
||||
"inLabel":16020,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16021":{
|
||||
"inLabel":16021,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16030":{
|
||||
"inLabel":16030,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16030,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16031":{
|
||||
"inLabel":16031,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16031,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16040":{
|
||||
"inLabel":16040,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16041":{
|
||||
"inLabel":16041,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16500":{
|
||||
"inLabel":16500,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16500,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4",
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
"16501":{
|
||||
"inLabel":16501,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16501,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -1,125 +0,0 @@
|
||||
--- a/rt6/step10/show_ip_route.ref
|
||||
+++ b/rt6/step11/show_ip_route.ref
|
||||
@@ -76,25 +76,11 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":30,
|
||||
+ "metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 30030
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
@@ -150,25 +136,11 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 3
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
@@ -276,22 +248,11 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
@@ -307,22 +268,11 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
@@ -389,19 +339,9 @@
|
||||
"prefix":"10.0.8.0\/24",
|
||||
"protocol":"isis",
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"nexthops":[
|
||||
{
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
@ -1,56 +0,0 @@
|
||||
--- a/rt6/step10/show_ipv6_route.ref
|
||||
+++ b/rt6/step11/show_ipv6_route.ref
|
||||
@@ -72,25 +72,12 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":30,
|
||||
+ "metric":40,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 30031
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
||||
@@ -142,25 +129,12 @@
|
||||
"selected":true,
|
||||
"destSelected":true,
|
||||
"distance":115,
|
||||
- "metric":20,
|
||||
+ "metric":30,
|
||||
"installed":true,
|
||||
"nexthops":[
|
||||
{
|
||||
"fib":true,
|
||||
"afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
- "labels":[
|
||||
- 3
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
"labels":[
|
@ -1,106 +0,0 @@
|
||||
--- a/rt6/step10/show_mpls_table.ref
|
||||
+++ b/rt6/step11/show_mpls_table.ref
|
||||
@@ -8,12 +8,6 @@
|
||||
"outLabel":16010,
|
||||
"installed":true,
|
||||
"nexthop":"10.0.7.4"
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30010,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.8.5"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -26,12 +20,6 @@
|
||||
"outLabel":16011,
|
||||
"installed":true,
|
||||
"interface":"eth-rt4"
|
||||
- },
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30011,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt5"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -85,18 +73,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":30030,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.8.5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16030,
|
||||
+ "installed":true,
|
||||
"nexthop":"10.0.7.4"
|
||||
}
|
||||
]
|
||||
@@ -107,17 +85,6 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":30031,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16031,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
@@ -173,18 +140,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":3,
|
||||
- "installed":true,
|
||||
- "nexthop":"10.0.8.5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16500,
|
||||
+ "installed":true,
|
||||
"nexthop":"10.0.7.4"
|
||||
}
|
||||
]
|
||||
@@ -195,18 +152,8 @@
|
||||
"nexthops":[
|
||||
{
|
||||
"type":"SR (IS-IS)",
|
||||
- "outLabel":3,
|
||||
- "installed":true,
|
||||
- "interface":"eth-rt5",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
"outLabel":16501,
|
||||
+ "installed":true,
|
||||
"interface":"eth-rt4"
|
||||
}
|
||||
]
|
@ -1,153 +0,0 @@
|
||||
--- a/rt6/step12/show_ip_route.ref
|
||||
+++ b/rt6/step12/show_ip_route.ref
|
||||
@@ -18,16 +18,6 @@
|
||||
"labels":[
|
||||
16010
|
||||
]
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30010
|
||||
- ]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -48,24 +38,10 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
16020
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30020
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -108,24 +84,10 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30040
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -168,13 +130,6 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -194,17 +149,6 @@
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
@@ -225,17 +169,6 @@
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
- "active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
"active":true
|
||||
}
|
||||
]
|
||||
@@ -297,13 +230,6 @@
|
||||
"afi":"ipv4",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -318,18 +244,7 @@
|
||||
{
|
||||
"ip":"10.0.7.4",
|
||||
"afi":"ipv4",
|
||||
- "interfaceName":"eth-rt4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "ip":"10.0.8.5",
|
||||
- "afi":"ipv4",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true
|
||||
+ "interfaceName":"eth-rt4"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,66 +0,0 @@
|
||||
--- a/rt6/step12/show_ipv6_route.ref
|
||||
+++ b/rt6/step12/show_ipv6_route.ref
|
||||
@@ -17,15 +17,6 @@
|
||||
"labels":[
|
||||
16011
|
||||
]
|
||||
- },
|
||||
- {
|
||||
- "fib":true,
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30011
|
||||
- ]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -45,23 +36,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
16021
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30021
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -102,23 +80,10 @@
|
||||
"afi":"ipv6",
|
||||
"interfaceName":"eth-rt4",
|
||||
"active":true,
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ],
|
||||
"labels":[
|
||||
3
|
||||
]
|
||||
}
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "afi":"ipv6",
|
||||
- "interfaceName":"eth-rt5",
|
||||
- "active":true,
|
||||
- "labels":[
|
||||
- 30041
|
||||
- ]
|
||||
- }
|
||||
]
|
||||
}
|
||||
],
|
@ -1,78 +0,0 @@
|
||||
--- a/rt6/step12/show_mpls_table.ref
|
||||
+++ b/rt6/step12/show_mpls_table.ref
|
||||
@@ -31,17 +31,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16020,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.7.4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30020,
|
||||
- "nexthop":"10.0.8.5"
|
||||
+ "nexthop":"10.0.7.4"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -53,17 +43,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":16021,
|
||||
"installed":true,
|
||||
- "interface":"eth-rt4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30021,
|
||||
- "interface":"eth-rt5"
|
||||
+ "interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -98,17 +78,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "nexthop":"10.0.7.4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30040,
|
||||
- "nexthop":"10.0.8.5"
|
||||
+ "nexthop":"10.0.7.4"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -120,17 +90,7 @@
|
||||
"type":"SR (IS-IS)",
|
||||
"outLabel":3,
|
||||
"installed":true,
|
||||
- "interface":"eth-rt4",
|
||||
- "backupIndex":[
|
||||
- 0
|
||||
- ]
|
||||
- }
|
||||
- ],
|
||||
- "backupNexthops":[
|
||||
- {
|
||||
- "type":"SR (IS-IS)",
|
||||
- "outLabel":30041,
|
||||
- "interface":"eth-rt5"
|
||||
+ "interface":"eth-rt4"
|
||||
}
|
||||
]
|
||||
},
|
@ -16,6 +16,7 @@ interface eth-rt4
|
||||
!
|
||||
interface eth-rt5
|
||||
ip address 10.0.8.6/24
|
||||
no link-detect
|
||||
!
|
||||
ip forwarding
|
||||
!
|
||||
|
@ -131,7 +131,7 @@ def build_topo(tgen):
|
||||
]
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
outputs[rname] = {}
|
||||
for step in range(1, 12 + 1):
|
||||
for step in range(1, 9 + 1):
|
||||
outputs[rname][step] = {}
|
||||
for file in files:
|
||||
if step == 1:
|
||||
@ -158,6 +158,15 @@ def build_topo(tgen):
|
||||
outputs[rname][step][file] = open(f_out.name).read()
|
||||
f_in.close()
|
||||
f_out.close()
|
||||
# HACK: use full snapshots for step 10
|
||||
step = 10
|
||||
for rname in ["rt5", "rt6"]:
|
||||
outputs[rname][step] = {}
|
||||
for file in files:
|
||||
if file == "show_yang_interface_isis_adjacencies.ref":
|
||||
continue
|
||||
filename = "{}/{}/step{}/{}".format(CWD, rname, step, file)
|
||||
outputs[rname][step][file] = open(filename).read()
|
||||
|
||||
|
||||
def setup_module(mod):
|
||||
@ -176,7 +185,7 @@ def setup_module(mod):
|
||||
TopoRouter.RD_ISIS, os.path.join(CWD, "{}/isisd.conf".format(rname))
|
||||
)
|
||||
router.load_config(
|
||||
TopoRouter.RD_BFD, os.path.join(CWD, "/dev/null".format(rname))
|
||||
TopoRouter.RD_BFD, os.path.join(CWD, "{}/bfdd.conf".format(rname))
|
||||
)
|
||||
|
||||
tgen.start_router()
|
||||
@ -734,11 +743,17 @@ def test_mpls_lib_step9():
|
||||
# Step 10
|
||||
#
|
||||
# Action(s):
|
||||
# - Setting spf-delay-ietf init-delay of 15s
|
||||
# - Enable ISIS BFD between rt5 and rt6
|
||||
# - Verify that the BFD session is up
|
||||
# - Configure an SPF delay-ietf initial delay of 60 seconds on both rt5 and rt6
|
||||
# - Shut down the eth-rt5 interface on rt6 from the switch side to test fast-reroute
|
||||
#
|
||||
# Expected changes:
|
||||
# - No routing table change
|
||||
# - At the end of test, SPF reacts to a failure in 15s
|
||||
# - Verify that the BFD session is down
|
||||
# - Routes should switch over to use alternate paths
|
||||
# - On rt5, the switchover should be triggered by the link down event
|
||||
# - On rt6, the switchover should be triggered by the BFD down event, since it has
|
||||
# link-detect disabled on the eth-rt5 interface
|
||||
#
|
||||
def test_rib_ipv4_step10():
|
||||
logger.info("Test (step 10): verify IPv4 RIB")
|
||||
@ -748,12 +763,42 @@ def test_rib_ipv4_step10():
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info("Setting spf-delay-ietf init-delay of 15s")
|
||||
tgen.net["rt6"].cmd(
|
||||
'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 15000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"'
|
||||
logger.info("Enabling ISIS BFD between rt5 and rt6")
|
||||
tgen.net["rt5"].cmd('vtysh -c "conf t" -c "int eth-rt6" -c "isis bfd"')
|
||||
tgen.net["rt6"].cmd('vtysh -c "conf t" -c "int eth-rt5" -c "isis bfd"')
|
||||
|
||||
logger.info("Checking if the BFD session is up")
|
||||
expect = (
|
||||
'{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}'
|
||||
)
|
||||
router_compare_json_output(
|
||||
"rt6",
|
||||
"show bfd peer 10.0.8.5 json",
|
||||
expect,
|
||||
)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
logger.info("Setting SPF delay-ietf initial delay to 60 seconds")
|
||||
for rname in ["rt5", "rt6"]:
|
||||
tgen.net[rname].cmd(
|
||||
'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 60000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"'
|
||||
)
|
||||
|
||||
logger.info(
|
||||
"Shutting down rt5 interface to rt6 from the switch side to test fast-reroute"
|
||||
)
|
||||
tgen.net.cmd_raises("ip link set %s down" % tgen.net["s8"].intfs[0])
|
||||
|
||||
logger.info("Verifying if the BFD session is down")
|
||||
expect = (
|
||||
'{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"down"}'
|
||||
)
|
||||
router_compare_json_output(
|
||||
"rt6",
|
||||
"show bfd peer 10.0.8.5 json",
|
||||
expect,
|
||||
)
|
||||
|
||||
for rname in ["rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname, "show ip route isis json", outputs[rname][10]["show_ip_route.ref"]
|
||||
)
|
||||
@ -767,7 +812,7 @@ def test_rib_ipv6_step10():
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
for rname in ["rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
@ -783,321 +828,12 @@ def test_mpls_lib_step10():
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname, "show mpls table json", outputs[rname][10]["show_mpls_table.ref"]
|
||||
)
|
||||
|
||||
|
||||
#
|
||||
# Step 11
|
||||
#
|
||||
# Action(s):
|
||||
# - shut the eth-rt5 interface on rt6
|
||||
#
|
||||
# Expected changes:
|
||||
# - Route switchover of routes via eth-rt5
|
||||
#
|
||||
def test_rt6_step11():
|
||||
logger.info(
|
||||
"Test (step 11): Check IPv4/6 RIB and MPLS table after a LFA switchover"
|
||||
)
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info(
|
||||
"Shut a rt6 interface to rt5 from the switch side and check fast-reroute"
|
||||
)
|
||||
tgen.net.cmd_raises("ip link set %s down" % tgen.net["s8"].intfs[1])
|
||||
|
||||
rname = "rt6"
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ip route isis json",
|
||||
outputs[rname][11]["show_ip_route.ref"],
|
||||
count=20,
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
outputs[rname][11]["show_ipv6_route.ref"],
|
||||
count=20,
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show mpls table json",
|
||||
outputs[rname][11]["show_mpls_table.ref"],
|
||||
count=20,
|
||||
)
|
||||
|
||||
|
||||
#
|
||||
# Step 12
|
||||
#
|
||||
# Action(s): wait for the convergence and SPF computation on rt6
|
||||
#
|
||||
# Expected changes:
|
||||
# - convergence of IPv4/6 RIB and MPLS table
|
||||
#
|
||||
def test_rib_ipv4_step12():
|
||||
logger.info("Test (step 12): verify IPv4 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info("Check SPF convergence")
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ip route isis json",
|
||||
outputs[rname][12]["show_ip_route.ref"],
|
||||
)
|
||||
|
||||
|
||||
def test_rib_ipv6_step12():
|
||||
logger.info("Test (step 12): verify IPv6 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
outputs[rname][12]["show_ipv6_route.ref"],
|
||||
)
|
||||
|
||||
|
||||
def test_mpls_lib_step12():
|
||||
logger.info("Test (step 12): verify MPLS LIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show mpls table json",
|
||||
outputs[rname][12]["show_mpls_table.ref"],
|
||||
)
|
||||
|
||||
|
||||
#
|
||||
# Step 13
|
||||
#
|
||||
# Action(s):
|
||||
# - unshut the rt6 to rt5 interface
|
||||
# - Setup BFD
|
||||
#
|
||||
# Expected changes:
|
||||
# - All route tables go back to previous state situation
|
||||
# - At the end of test, next SPF is scheduled in approximatively 15s
|
||||
#
|
||||
def test_rib_ipv4_step13():
|
||||
logger.info("Test (step 13): verify IPv4 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info("Unsetting spf-delay-ietf init-delay of 15s")
|
||||
tgen.net["rt6"].cmd('vtysh -c "conf t" -c "router isis 1" -c "no spf-delay-ietf"')
|
||||
|
||||
logger.info(
|
||||
"Unshut the rt6 interface to rt5 from the switch side and check fast-reroute"
|
||||
)
|
||||
tgen.net.cmd_raises("ip link set %s up" % tgen.net["s8"].intfs[1])
|
||||
|
||||
logger.info("Setup BFD on rt5 and rt6")
|
||||
for rname in ["rt5", "rt6"]:
|
||||
conf_file = os.path.join(CWD, "{}/bfdd.conf".format(rname))
|
||||
tgen.net[rname].cmd("vtysh -f {}".format(conf_file))
|
||||
|
||||
expect = (
|
||||
'[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}]'
|
||||
)
|
||||
router_compare_json_output("rt6", "show bfd peers json", expect)
|
||||
|
||||
# Unset link detection. We want zebra to consider linkdow as operationaly up
|
||||
# in order that BFD triggers LFA instead of the interface down
|
||||
|
||||
# reset spf-interval
|
||||
logger.info("Set spf-interval to 15s")
|
||||
tgen.net["rt6"].cmd(
|
||||
'vtysh -c "conf t" -c "router isis 1" -c "spf-delay-ietf init-delay 15000 short-delay 0 long-delay 0 holddown 0 time-to-learn 0"'
|
||||
)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname, "show ip route isis json", outputs[rname][10]["show_ip_route.ref"]
|
||||
)
|
||||
|
||||
logger.info("Set ISIS BFD")
|
||||
tgen.net["rt5"].cmd('vtysh -c "conf t" -c "int eth-rt6" -c "isis bfd"')
|
||||
tgen.net["rt6"].cmd('vtysh -c "conf t" -c "int eth-rt5" -c "isis bfd"')
|
||||
|
||||
expect = (
|
||||
'[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"up"}]'
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show bfd peers json",
|
||||
expect,
|
||||
)
|
||||
|
||||
|
||||
def test_rib_ipv6_step13():
|
||||
logger.info("Test (step 13): verify IPv6 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
outputs[rname][10]["show_ipv6_route.ref"],
|
||||
)
|
||||
|
||||
|
||||
def test_mpls_lib_step13():
|
||||
logger.info("Test (step 13): verify MPLS LIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname, "show mpls table json", outputs[rname][10]["show_mpls_table.ref"]
|
||||
)
|
||||
|
||||
|
||||
#
|
||||
# Step 14
|
||||
#
|
||||
# Action(s):
|
||||
# - drop traffic between rt5 and rt6 by shutting down the bridge between
|
||||
# the routers. Interfaces on rt5 and rt6 stay up.
|
||||
#
|
||||
# Expected changes:
|
||||
# - Route switchover of routes via eth-rt5
|
||||
#
|
||||
def test_rt6_step14():
|
||||
logger.info("Test (step 14): verify IPv4/6 RIB and MPLS table")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info("Drop traffic between rt5 and rt6")
|
||||
tgen.net.cmd_raises("ip link set s8 down")
|
||||
|
||||
rname = "rt6"
|
||||
|
||||
expect = (
|
||||
'[{"multihop":false,"peer":"10.0.8.5","interface":"eth-rt5","status":"down"}]'
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show bfd peers json",
|
||||
expect,
|
||||
count=40,
|
||||
wait=0.5,
|
||||
)
|
||||
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ip route isis json",
|
||||
outputs[rname][11]["show_ip_route.ref"],
|
||||
count=20,
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
outputs[rname][11]["show_ipv6_route.ref"],
|
||||
count=20,
|
||||
wait=2,
|
||||
)
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show mpls table json",
|
||||
outputs[rname][11]["show_mpls_table.ref"],
|
||||
count=20,
|
||||
)
|
||||
|
||||
|
||||
#
|
||||
# Step 15
|
||||
#
|
||||
# Action(s): wait for the convergence and SPF computation on rt6
|
||||
#
|
||||
# Expected changes:
|
||||
# - convergence of IPv4/6 RIB and MPLS table
|
||||
#
|
||||
def test_rib_ipv4_step15():
|
||||
logger.info("Test (step 15): verify IPv4 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
logger.info("Check SPF convergence")
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ip route isis json",
|
||||
outputs[rname][12]["show_ip_route.ref"],
|
||||
)
|
||||
|
||||
|
||||
def test_rib_ipv6_step15():
|
||||
logger.info("Test (step 15): verify IPv6 RIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show ipv6 route isis json",
|
||||
outputs[rname][12]["show_ipv6_route.ref"],
|
||||
)
|
||||
|
||||
|
||||
def test_mpls_lib_step15():
|
||||
logger.info("Test (step 15): verify MPLS LIB")
|
||||
tgen = get_topogen()
|
||||
|
||||
# Skip if previous fatal error condition is raised
|
||||
if tgen.routers_have_failure():
|
||||
pytest.skip(tgen.errors)
|
||||
|
||||
for rname in ["rt1", "rt2", "rt3", "rt4", "rt5", "rt6"]:
|
||||
router_compare_json_output(
|
||||
rname,
|
||||
"show mpls table json",
|
||||
outputs[rname][12]["show_mpls_table.ref"],
|
||||
)
|
||||
|
||||
|
||||
# Memory leak test template
|
||||
def test_memory_leak():
|
||||
"Run the memory leak test and report results."
|
||||
|
Loading…
Reference in New Issue
Block a user