diff options
Diffstat (limited to 'tests')
88 files changed, 4557 insertions, 3646 deletions
diff --git a/tests/isisd/test_isis_spf.c b/tests/isisd/test_isis_spf.c index 4ea28cda2f..6fe6993fdf 100644 --- a/tests/isisd/test_isis_spf.c +++ b/tests/isisd/test_isis_spf.c @@ -55,7 +55,7 @@ static void test_run_spf(struct vty *vty, const struct isis_topology *topology, isis_run_spf(spftree); /* Print the SPT and the corresponding routing table. */ - isis_print_spftree(vty, spftree); + isis_print_spftree(vty, spftree, NULL); isis_print_routes(vty, spftree, NULL, false, false); /* Cleanup SPF tree. */ @@ -85,7 +85,7 @@ static void test_run_lfa(struct vty *vty, const struct isis_topology *topology, isis_lfa_compute(area, NULL, spftree_self, protected_resource); /* Print the SPT and the corresponding main/backup routing tables. */ - isis_print_spftree(vty, spftree_self); + isis_print_spftree(vty, spftree_self, NULL); vty_out(vty, "Main:\n"); isis_print_routes(vty, spftree_self, NULL, false, false); vty_out(vty, "Backup:\n"); @@ -148,7 +148,7 @@ static void test_run_rlfa(struct vty *vty, const struct isis_topology *topology, vty_out(vty, "\n"); /* Print the post-convergence SPT. */ - isis_print_spftree(vty, spftree_pc); + isis_print_spftree(vty, spftree_pc, NULL); /* * Activate the computed RLFAs (if any) using artificial LDP labels for @@ -164,7 +164,7 @@ static void test_run_rlfa(struct vty *vty, const struct isis_topology *topology, } /* Print the SPT and the corresponding main/backup routing tables. */ - isis_print_spftree(vty, spftree_self); + isis_print_spftree(vty, spftree_self, NULL); vty_out(vty, "Main:\n"); isis_print_routes(vty, spftree_self, NULL, false, false); vty_out(vty, "Backup:\n"); @@ -228,7 +228,7 @@ static void test_run_ti_lfa(struct vty *vty, /* * Print the post-convergence SPT and the corresponding routing table. */ - isis_print_spftree(vty, spftree_pc); + isis_print_spftree(vty, spftree_pc, NULL); isis_print_routes(vty, spftree_self, NULL, false, true); /* Cleanup everything. */ diff --git a/tests/isisd/test_isis_spf.refout b/tests/isisd/test_isis_spf.refout index 23d41b9e5d..255d920c10 100644 --- a/tests/isisd/test_isis_spf.refout +++ b/tests/isisd/test_isis_spf.refout @@ -1,20 +1,22 @@ test# test isis topology 1 root rt1 spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
IS-IS L1 IPv4 routing table:
@@ -29,21 +31,23 @@ IS-IS L1 IPv4 routing table: - rt3 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
IS-IS L1 IPv6 routing table:
@@ -59,22 +63,24 @@ IS-IS L1 IPv6 routing table: test# test isis topology 2 root rt1 spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 10 rt5 - rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-rt1
-rt6 TE-IS 20 rt4 - rt4(4)
- rt5 - rt5(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.2/32 IP TE 25 rt2 - rt2(4)
-rt3 TE-IS 30 rt3 - rt1(4)
-10.0.255.6/32 IP TE 30 rt4 - rt6(4)
- rt5 -
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 10 rt5 - rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ rt1
+ rt6 TE-IS 20 rt4 - rt4(4)
+ rt5 - rt5(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.2/32 IP TE 25 rt2 - rt2(4)
+ rt3 TE-IS 30 rt3 - rt1(4)
+ 10.0.255.6/32 IP TE 30 rt4 - rt6(4)
+ rt5 - rt6(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -89,22 +95,24 @@ IS-IS L1 IPv4 routing table: - rt5 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 10 rt5 - rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-rt1
-rt6 TE-IS 20 rt4 - rt4(4)
- rt5 - rt5(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
-rt3 TE-IS 30 rt3 - rt1(4)
-2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
- rt5 -
-2001:db8::3/128 IP6 internal 40 rt3 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 10 rt5 - rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ rt1
+ rt6 TE-IS 20 rt4 - rt4(4)
+ rt5 - rt5(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
+ rt3 TE-IS 30 rt3 - rt1(4)
+ 2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
+ rt5 - rt6(4)
+ 2001:db8::3/128 IP6 internal 40 rt3 - rt3(4)
+
IS-IS L1 IPv6 routing table:
@@ -120,19 +128,21 @@ IS-IS L1 IPv6 routing table: test# test isis topology 3 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 40 rt2 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 40 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+
IS-IS L1 IPv4 routing table:
@@ -147,23 +157,25 @@ IS-IS L1 IPv4 routing table: test# test isis topology 4 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt2 - rt6(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -180,25 +192,27 @@ IS-IS L1 IPv4 routing table: test# test isis topology 5 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt2 - rt6(4)
- rt3 - rt7(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ rt3 - rt7(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ rt3 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -216,33 +230,35 @@ IS-IS L1 IPv4 routing table: test# test isis topology 6 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
- rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 -
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
- rt3 -
-rt5 TE-IS 40 rt2 - rt6(4)
- rt3 -
-rt8 TE-IS 40 rt2 - rt6(4)
- rt3 -
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
- rt3 -
-rt7 TE-IS 50 rt2 - rt5(4)
- rt3 - rt8(4)
-10.0.255.5/32 IP TE 50 rt2 - rt5(4)
- rt3 -
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
- rt3 -
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt3 - rt4(4)
+ rt5 TE-IS 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+ rt7 TE-IS 50 rt2 - rt5(4)
+ rt3 - rt8(4)
+ 10.0.255.5/32 IP TE 50 rt2 - rt5(4)
+ rt3 - rt5(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ rt3 - rt8(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ rt3 - rt7(4)
+
IS-IS L1 IPv4 routing table:
@@ -264,34 +280,36 @@ IS-IS L1 IPv4 routing table: test# test isis topology 7 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 20 rt4 - rt4(4)
-rt7 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-rt2 TE-IS 30 rt4 - rt5(4)
-rt6 TE-IS 30 rt4 - rt5(4)
-rt8 TE-IS 30 rt4 - rt5(4)
- rt7(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
-10.0.255.7/32 IP TE 30 rt4 - rt7(4)
-rt10 TE-IS 40 rt4 - rt7(4)
-rt3 TE-IS 40 rt4 - rt2(4)
- rt6(4)
-rt9 TE-IS 40 rt4 - rt8(4)
-rt11 TE-IS 40 rt4 - rt8(4)
-10.0.255.2/32 IP TE 40 rt4 - rt2(4)
-10.0.255.6/32 IP TE 40 rt4 - rt6(4)
-10.0.255.8/32 IP TE 40 rt4 - rt8(4)
-rt12 TE-IS 50 rt4 - rt9(4)
- rt11(4)
-10.0.255.10/32 IP TE 50 rt4 - rt10(4)
-10.0.255.3/32 IP TE 50 rt4 - rt3(4)
-10.0.255.9/32 IP TE 50 rt4 - rt9(4)
-10.0.255.11/32 IP TE 50 rt4 - rt11(4)
-10.0.255.12/32 IP TE 60 rt4 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 20 rt4 - rt4(4)
+ rt7 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ rt2 TE-IS 30 rt4 - rt5(4)
+ rt6 TE-IS 30 rt4 - rt5(4)
+ rt8 TE-IS 30 rt4 - rt5(4)
+ rt7(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ 10.0.255.7/32 IP TE 30 rt4 - rt7(4)
+ rt10 TE-IS 40 rt4 - rt7(4)
+ rt3 TE-IS 40 rt4 - rt2(4)
+ rt6(4)
+ rt9 TE-IS 40 rt4 - rt8(4)
+ rt11 TE-IS 40 rt4 - rt8(4)
+ 10.0.255.2/32 IP TE 40 rt4 - rt2(4)
+ 10.0.255.6/32 IP TE 40 rt4 - rt6(4)
+ 10.0.255.8/32 IP TE 40 rt4 - rt8(4)
+ rt12 TE-IS 50 rt4 - rt9(4)
+ rt11(4)
+ 10.0.255.10/32 IP TE 50 rt4 - rt10(4)
+ 10.0.255.3/32 IP TE 50 rt4 - rt3(4)
+ 10.0.255.9/32 IP TE 50 rt4 - rt9(4)
+ 10.0.255.11/32 IP TE 50 rt4 - rt11(4)
+ 10.0.255.12/32 IP TE 60 rt4 - rt12(4)
+
IS-IS L1 IPv4 routing table:
@@ -312,33 +330,35 @@ IS-IS L1 IPv4 routing table: test# test isis topology 8 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt3 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt2 - rt2(4)
-rt7 TE-IS 20 rt4 - rt4(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-rt6 TE-IS 30 rt2 - rt3(4)
- rt5(4)
-rt8 TE-IS 30 rt2 - rt5(4)
-rt10 TE-IS 30 rt4 - rt7(4)
-10.0.255.3/32 IP TE 30 rt2 - rt3(4)
-10.0.255.5/32 IP TE 30 rt2 - rt5(4)
-10.0.255.7/32 IP TE 30 rt4 - rt7(4)
-rt9 TE-IS 40 rt2 - rt8(4)
-rt11 TE-IS 40 rt2 - rt8(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.8/32 IP TE 40 rt2 - rt8(4)
-10.0.255.10/32 IP TE 40 rt4 - rt10(4)
-rt12 TE-IS 50 rt2 - rt9(4)
- rt11(4)
-10.0.255.9/32 IP TE 50 rt2 - rt9(4)
-10.0.255.11/32 IP TE 50 rt2 - rt11(4)
-10.0.255.12/32 IP TE 60 rt2 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt3 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt2 - rt2(4)
+ rt7 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ rt6 TE-IS 30 rt2 - rt3(4)
+ rt5(4)
+ rt8 TE-IS 30 rt2 - rt5(4)
+ rt10 TE-IS 30 rt4 - rt7(4)
+ 10.0.255.3/32 IP TE 30 rt2 - rt3(4)
+ 10.0.255.5/32 IP TE 30 rt2 - rt5(4)
+ 10.0.255.7/32 IP TE 30 rt4 - rt7(4)
+ rt9 TE-IS 40 rt2 - rt8(4)
+ rt11 TE-IS 40 rt2 - rt8(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.8/32 IP TE 40 rt2 - rt8(4)
+ 10.0.255.10/32 IP TE 40 rt4 - rt10(4)
+ rt12 TE-IS 50 rt2 - rt9(4)
+ rt11(4)
+ 10.0.255.9/32 IP TE 50 rt2 - rt9(4)
+ 10.0.255.11/32 IP TE 50 rt2 - rt11(4)
+ 10.0.255.12/32 IP TE 60 rt2 - rt12(4)
+
IS-IS L1 IPv4 routing table:
@@ -359,28 +379,30 @@ IS-IS L1 IPv4 routing table: test# test isis topology 9 root rt1 spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-rt9 TE-IS 40 rt2 - rt5(4)
-10.0.255.5/32 IP TE 40 rt2 - rt5(4)
-rt6 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt7 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt8 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-10.0.255.9/32 IP TE 50 rt2 - rt9(4)
-10.0.255.6/32 IP TE 60 rt2 - rt6(4)
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
-10.0.255.8/32 IP TE 60 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt9 TE-IS 40 rt2 - rt5(4)
+ 10.0.255.5/32 IP TE 40 rt2 - rt5(4)
+ rt6 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ 10.0.255.9/32 IP TE 50 rt2 - rt9(4)
+ 10.0.255.6/32 IP TE 60 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ 10.0.255.8/32 IP TE 60 rt2 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -397,28 +419,30 @@ IS-IS L1 IPv4 routing table: 10.0.255.9/32 50 - rt2 16090
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-rt9 TE-IS 40 rt2 - rt5(4)
-2001:db8::5/128 IP6 internal 40 rt2 - rt5(4)
-rt6 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt7 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt8 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-2001:db8::9/128 IP6 internal 50 rt2 - rt9(4)
-2001:db8::6/128 IP6 internal 60 rt2 - rt6(4)
-2001:db8::7/128 IP6 internal 60 rt2 - rt7(4)
-2001:db8::8/128 IP6 internal 60 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ rt9 TE-IS 40 rt2 - rt5(4)
+ 2001:db8::5/128 IP6 internal 40 rt2 - rt5(4)
+ rt6 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ 2001:db8::9/128 IP6 internal 50 rt2 - rt9(4)
+ 2001:db8::6/128 IP6 internal 60 rt2 - rt6(4)
+ 2001:db8::7/128 IP6 internal 60 rt2 - rt7(4)
+ 2001:db8::8/128 IP6 internal 60 rt2 - rt8(4)
+
IS-IS L1 IPv6 routing table:
@@ -436,23 +460,25 @@ IS-IS L1 IPv6 routing table: test# test isis topology 10 root rt1 spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt4 TE-IS 20 rt4 - rt1(4)
-rt5 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt7 TE-IS 30 rt4 - rt4(4)
-rt8 TE-IS 30 rt2 - rt5(4)
-10.0.255.3/32 IP TE 30 rt3 - rt3(4)
-10.0.255.4/32 IP TE 30 rt4 - rt4(4)
-10.0.255.5/32 IP TE 30 rt2 - rt5(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
-10.0.255.7/32 IP TE 40 rt4 - rt7(4)
-10.0.255.8/32 IP TE 40 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt4 TE-IS 20 rt4 - rt1(4)
+ rt5 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt7 TE-IS 30 rt4 - rt4(4)
+ rt8 TE-IS 30 rt2 - rt5(4)
+ 10.0.255.3/32 IP TE 30 rt3 - rt3(4)
+ 10.0.255.4/32 IP TE 30 rt4 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt4 - rt7(4)
+ 10.0.255.8/32 IP TE 40 rt2 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -468,23 +494,25 @@ IS-IS L1 IPv4 routing table: 10.0.255.8/32 40 - rt2 16080
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt4 TE-IS 20 rt4 - rt1(4)
-rt5 TE-IS 20 rt2 - rt2(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt7 TE-IS 30 rt4 - rt4(4)
-rt8 TE-IS 30 rt2 - rt5(4)
-2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
-2001:db8::4/128 IP6 internal 30 rt4 - rt4(4)
-2001:db8::5/128 IP6 internal 30 rt2 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
-2001:db8::7/128 IP6 internal 40 rt4 - rt7(4)
-2001:db8::8/128 IP6 internal 40 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt4 TE-IS 20 rt4 - rt1(4)
+ rt5 TE-IS 20 rt2 - rt2(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt7 TE-IS 30 rt4 - rt4(4)
+ rt8 TE-IS 30 rt2 - rt5(4)
+ 2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
+ 2001:db8::4/128 IP6 internal 30 rt4 - rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt2 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ 2001:db8::7/128 IP6 internal 40 rt4 - rt7(4)
+ 2001:db8::8/128 IP6 internal 40 rt2 - rt8(4)
+
IS-IS L1 IPv6 routing table:
@@ -501,22 +529,24 @@ IS-IS L1 IPv6 routing table: test# test isis topology 11 root rt1 spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt2 pseudo_TE-IS 20 rt3 - rt3(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt2 pseudo_TE-IS 20 rt3 - rt3(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
IS-IS L1 IPv4 routing table:
@@ -531,22 +561,24 @@ IS-IS L1 IPv4 routing table: - rt3 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt2 pseudo_TE-IS 20 rt3 - rt3(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt2 pseudo_TE-IS 20 rt3 - rt3(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
IS-IS L1 IPv6 routing table:
@@ -562,27 +594,29 @@ IS-IS L1 IPv6 routing table: test# test isis topology 12 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt2 - rt6(4)
-rt9 TE-IS 40 rt3 - rt7(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-rt10 TE-IS 50 rt2 - rt8(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
-10.0.255.9/32 IP TE 50 rt3 - rt9(4)
-10.0.255.10/32 IP TE 60 rt2 - rt10(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ rt9 TE-IS 40 rt3 - rt7(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ rt10 TE-IS 50 rt2 - rt8(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ 10.0.255.9/32 IP TE 50 rt3 - rt9(4)
+ 10.0.255.10/32 IP TE 60 rt2 - rt10(4)
+
IS-IS L1 IPv4 routing table:
@@ -601,24 +635,26 @@ IS-IS L1 IPv4 routing table: test# test isis topology 13 root rt1 spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
- rt3 - rt3(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-rt6 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
- rt6(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
- rt3 -
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt3 - rt3(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ rt6(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt3 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+
IS-IS L1 IPv4 routing table:
@@ -636,23 +672,25 @@ IS-IS L1 IPv4 routing table: test#
test# test isis topology 4 root rt1 reverse-spf ipv4-only
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt2 - rt6(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -669,21 +707,23 @@ IS-IS L1 IPv4 routing table: test# test isis topology 11 root rt1 reverse-spf
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt2 pseudo_TE-IS 20 rt3 - rt3(4)
-rt4 TE-IS 20 rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt4(4)
- rt5(4)
-10.0.255.4/32 IP TE 30 rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt2 pseudo_TE-IS 20 rt3 - rt3(4)
+ rt4 TE-IS 20 rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt4(4)
+ rt5(4)
+ 10.0.255.4/32 IP TE 30 rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+
IS-IS L1 IPv4 routing table:
@@ -695,21 +735,23 @@ IS-IS L1 IPv4 routing table: 10.0.255.6/32 40 - rt3 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt2 pseudo_TE-IS 20 rt3 - rt3(4)
-rt4 TE-IS 20 rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 20 rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt4(4)
- rt5(4)
-2001:db8::4/128 IP6 internal 30 rt4(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt2 pseudo_TE-IS 20 rt3 - rt3(4)
+ rt4 TE-IS 20 rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 20 rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt4(4)
+ rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+
IS-IS L1 IPv6 routing table:
@@ -723,21 +765,23 @@ IS-IS L1 IPv6 routing table: test#
test# test isis topology 1 root rt1 lfa system-id rt2
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -756,21 +800,23 @@ Backup: IS-IS L1 IPv4 routing table:
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -790,21 +836,23 @@ IS-IS L1 IPv6 routing table: test# test isis topology 2 root rt4 lfa system-id rt1 pseudonode-id 1
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt1 TE-IS 10 rt1 - rt4(4)
-rt5 TE-IS 10 rt5 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt5 - rt5(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-10.0.255.2/32 IP TE 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt1 - rt1(4)
-10.0.255.3/32 IP TE 50 rt1 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt1 TE-IS 10 rt1 - rt4(4)
+ rt5 TE-IS 10 rt5 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt5 - rt5(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 10.0.255.2/32 IP TE 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 50 rt1 - rt3(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -826,21 +874,23 @@ IS-IS L1 IPv4 routing table: 10.0.255.2/32 50 - rt2 implicit-null
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-2001:db8::4/128 IP6 internal 0 rt4(4)
-rt1 TE-IS 10 rt1 - rt4(4)
-rt5 TE-IS 10 rt5 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt5 - rt5(4)
-2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt1 - rt1(4)
-2001:db8::3/128 IP6 internal 50 rt1 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt4
+ 2001:db8::4/128 IP6 internal 0 rt4(4)
+ rt1 TE-IS 10 rt1 - rt4(4)
+ rt5 TE-IS 10 rt5 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt5 - rt5(4)
+ 2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt1 - rt1(4)
+ 2001:db8::3/128 IP6 internal 50 rt1 - rt3(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -863,21 +913,23 @@ IS-IS L1 IPv6 routing table: test# test isis topology 2 root rt4 lfa system-id rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt1 TE-IS 10 rt1 - rt4(4)
-rt5 TE-IS 10 rt5 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt5 - rt5(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-10.0.255.2/32 IP TE 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt1 - rt1(4)
-10.0.255.3/32 IP TE 50 rt1 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt1 TE-IS 10 rt1 - rt4(4)
+ rt5 TE-IS 10 rt5 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt5 - rt5(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 10.0.255.2/32 IP TE 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 50 rt1 - rt3(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -899,21 +951,23 @@ IS-IS L1 IPv4 routing table: 10.0.255.6/32 30 - rt5 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-2001:db8::4/128 IP6 internal 0 rt4(4)
-rt1 TE-IS 10 rt1 - rt4(4)
-rt5 TE-IS 10 rt5 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt5 - rt5(4)
-2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt1 - rt1(4)
-2001:db8::3/128 IP6 internal 50 rt1 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt4
+ 2001:db8::4/128 IP6 internal 0 rt4(4)
+ rt1 TE-IS 10 rt1 - rt4(4)
+ rt5 TE-IS 10 rt5 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt5 - rt5(4)
+ 2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt1 - rt1(4)
+ 2001:db8::3/128 IP6 internal 50 rt1 - rt3(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -936,19 +990,21 @@ IS-IS L1 IPv6 routing table: test# test isis topology 3 root rt1 lfa system-id rt2
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 40 rt2 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 40 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -973,10 +1029,12 @@ IS-IS L1 IPv4 routing table: 10.0.255.6/32 50 - rt3 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt1
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -986,19 +1044,21 @@ IS-IS L1 IPv6 routing table: test# test isis topology 3 root rt1 lfa system-id rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 40 rt2 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 40 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1020,10 +1080,12 @@ IS-IS L1 IPv4 routing table: 10.0.255.3/32 30 - rt2 16030
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt1
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1033,34 +1095,36 @@ IS-IS L1 IPv6 routing table: test# test isis topology 7 root rt1 lfa system-id rt4
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 20 rt4 - rt4(4)
-rt7 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-rt2 TE-IS 30 rt4 - rt5(4)
-rt6 TE-IS 30 rt4 - rt5(4)
-rt8 TE-IS 30 rt4 - rt5(4)
- rt7(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
-10.0.255.7/32 IP TE 30 rt4 - rt7(4)
-rt10 TE-IS 40 rt4 - rt7(4)
-rt3 TE-IS 40 rt4 - rt2(4)
- rt6(4)
-rt9 TE-IS 40 rt4 - rt8(4)
-rt11 TE-IS 40 rt4 - rt8(4)
-10.0.255.2/32 IP TE 40 rt4 - rt2(4)
-10.0.255.6/32 IP TE 40 rt4 - rt6(4)
-10.0.255.8/32 IP TE 40 rt4 - rt8(4)
-rt12 TE-IS 50 rt4 - rt9(4)
- rt11(4)
-10.0.255.10/32 IP TE 50 rt4 - rt10(4)
-10.0.255.3/32 IP TE 50 rt4 - rt3(4)
-10.0.255.9/32 IP TE 50 rt4 - rt9(4)
-10.0.255.11/32 IP TE 50 rt4 - rt11(4)
-10.0.255.12/32 IP TE 60 rt4 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 20 rt4 - rt4(4)
+ rt7 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ rt2 TE-IS 30 rt4 - rt5(4)
+ rt6 TE-IS 30 rt4 - rt5(4)
+ rt8 TE-IS 30 rt4 - rt5(4)
+ rt7(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ 10.0.255.7/32 IP TE 30 rt4 - rt7(4)
+ rt10 TE-IS 40 rt4 - rt7(4)
+ rt3 TE-IS 40 rt4 - rt2(4)
+ rt6(4)
+ rt9 TE-IS 40 rt4 - rt8(4)
+ rt11 TE-IS 40 rt4 - rt8(4)
+ 10.0.255.2/32 IP TE 40 rt4 - rt2(4)
+ 10.0.255.6/32 IP TE 40 rt4 - rt6(4)
+ 10.0.255.8/32 IP TE 40 rt4 - rt8(4)
+ rt12 TE-IS 50 rt4 - rt9(4)
+ rt11(4)
+ 10.0.255.10/32 IP TE 50 rt4 - rt10(4)
+ 10.0.255.3/32 IP TE 50 rt4 - rt3(4)
+ 10.0.255.9/32 IP TE 50 rt4 - rt9(4)
+ 10.0.255.11/32 IP TE 50 rt4 - rt11(4)
+ 10.0.255.12/32 IP TE 60 rt4 - rt12(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1098,10 +1162,12 @@ IS-IS L1 IPv4 routing table: 10.0.255.12/32 90 - rt2 16120
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-rt4 TE-IS 10 rt4 - rt1(4)
-rt2 TE-IS 40 rt2 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt1
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt2 TE-IS 40 rt2 - rt1(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1111,40 +1177,42 @@ IS-IS L1 IPv6 routing table: test# test isis topology 7 root rt7 lfa system-id rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt7
-10.0.255.7/32 IP internal 0 rt7(4)
-rt4 TE-IS 10 rt4 - rt7(4)
-rt8 TE-IS 10 rt8 - rt7(4)
-rt10 TE-IS 20 rt10 - rt7(4)
-rt1 TE-IS 20 rt4 - rt4(4)
-rt5 TE-IS 20 rt4 - rt4(4)
- rt8 - rt8(4)
-rt9 TE-IS 20 rt8 - rt8(4)
-rt11 TE-IS 20 rt8 - rt8(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.8/32 IP TE 20 rt8 - rt8(4)
-rt2 TE-IS 30 rt4 - rt5(4)
- rt8 -
-rt6 TE-IS 30 rt4 - rt5(4)
- rt8 -
-rt12 TE-IS 30 rt8 - rt9(4)
- rt11(4)
-10.0.255.10/32 IP TE 30 rt10 - rt10(4)
-10.0.255.1/32 IP TE 30 rt4 - rt1(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
- rt8 -
-10.0.255.9/32 IP TE 30 rt8 - rt9(4)
-10.0.255.11/32 IP TE 30 rt8 - rt11(4)
-rt3 TE-IS 40 rt4 - rt2(4)
- rt8 - rt6(4)
-10.0.255.2/32 IP TE 40 rt4 - rt2(4)
- rt8 -
-10.0.255.6/32 IP TE 40 rt4 - rt6(4)
- rt8 -
-10.0.255.12/32 IP TE 40 rt8 - rt12(4)
-10.0.255.3/32 IP TE 50 rt4 - rt3(4)
- rt8 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt7
+ 10.0.255.7/32 IP internal 0 rt7(4)
+ rt4 TE-IS 10 rt4 - rt7(4)
+ rt8 TE-IS 10 rt8 - rt7(4)
+ rt10 TE-IS 20 rt10 - rt7(4)
+ rt1 TE-IS 20 rt4 - rt4(4)
+ rt5 TE-IS 20 rt4 - rt4(4)
+ rt8 - rt8(4)
+ rt9 TE-IS 20 rt8 - rt8(4)
+ rt11 TE-IS 20 rt8 - rt8(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.8/32 IP TE 20 rt8 - rt8(4)
+ rt2 TE-IS 30 rt4 - rt5(4)
+ rt8 - rt5(4)
+ rt6 TE-IS 30 rt4 - rt5(4)
+ rt8 - rt5(4)
+ rt12 TE-IS 30 rt8 - rt9(4)
+ rt11(4)
+ 10.0.255.10/32 IP TE 30 rt10 - rt10(4)
+ 10.0.255.1/32 IP TE 30 rt4 - rt1(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ rt8 - rt5(4)
+ 10.0.255.9/32 IP TE 30 rt8 - rt9(4)
+ 10.0.255.11/32 IP TE 30 rt8 - rt11(4)
+ rt3 TE-IS 40 rt4 - rt2(4)
+ rt8 - rt6(4)
+ 10.0.255.2/32 IP TE 40 rt4 - rt2(4)
+ rt8 - rt2(4)
+ 10.0.255.6/32 IP TE 40 rt4 - rt6(4)
+ rt8 - rt6(4)
+ 10.0.255.12/32 IP TE 40 rt8 - rt12(4)
+ 10.0.255.3/32 IP TE 50 rt4 - rt3(4)
+ rt8 - rt3(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1179,11 +1247,13 @@ IS-IS L1 IPv4 routing table: 10.0.255.12/32 50 - rt10 16120
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt7
-rt4 TE-IS 10 rt4 - rt7(4)
-rt8 TE-IS 10 rt8 - rt7(4)
-rt10 TE-IS 20 rt10 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt7
+ rt4 TE-IS 10 rt4 - rt7(4)
+ rt8 TE-IS 10 rt8 - rt7(4)
+ rt10 TE-IS 20 rt10 - rt7(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1193,38 +1263,40 @@ IS-IS L1 IPv6 routing table: test# test isis topology 7 root rt8 lfa system-id rt11
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt8
-10.0.255.8/32 IP internal 0 rt8(4)
-rt5 TE-IS 10 rt5 - rt8(4)
-rt7 TE-IS 10 rt7 - rt8(4)
-rt9 TE-IS 10 rt9 - rt8(4)
-rt11 TE-IS 10 rt11 - rt8(4)
-rt2 TE-IS 20 rt5 - rt5(4)
-rt4 TE-IS 20 rt5 - rt5(4)
- rt7 - rt7(4)
-rt6 TE-IS 20 rt5 - rt5(4)
-rt12 TE-IS 20 rt9 - rt9(4)
- rt11 - rt11(4)
-rt10 TE-IS 20 rt11 - rt11(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.7/32 IP TE 20 rt7 - rt7(4)
-10.0.255.9/32 IP TE 20 rt9 - rt9(4)
-10.0.255.11/32 IP TE 20 rt11 - rt11(4)
-rt3 TE-IS 30 rt5 - rt2(4)
- rt6(4)
-rt1 TE-IS 30 rt5 - rt4(4)
- rt7 -
-10.0.255.2/32 IP TE 30 rt5 - rt2(4)
-10.0.255.4/32 IP TE 30 rt5 - rt4(4)
- rt7 -
-10.0.255.6/32 IP TE 30 rt5 - rt6(4)
-10.0.255.12/32 IP TE 30 rt9 - rt12(4)
- rt11 -
-10.0.255.10/32 IP TE 30 rt11 - rt10(4)
-10.0.255.3/32 IP TE 40 rt5 - rt3(4)
-10.0.255.1/32 IP TE 40 rt5 - rt1(4)
- rt7 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt8
+ 10.0.255.8/32 IP internal 0 rt8(4)
+ rt5 TE-IS 10 rt5 - rt8(4)
+ rt7 TE-IS 10 rt7 - rt8(4)
+ rt9 TE-IS 10 rt9 - rt8(4)
+ rt11 TE-IS 10 rt11 - rt8(4)
+ rt2 TE-IS 20 rt5 - rt5(4)
+ rt4 TE-IS 20 rt5 - rt5(4)
+ rt7 - rt7(4)
+ rt6 TE-IS 20 rt5 - rt5(4)
+ rt12 TE-IS 20 rt9 - rt9(4)
+ rt11 - rt11(4)
+ rt10 TE-IS 20 rt11 - rt11(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.7/32 IP TE 20 rt7 - rt7(4)
+ 10.0.255.9/32 IP TE 20 rt9 - rt9(4)
+ 10.0.255.11/32 IP TE 20 rt11 - rt11(4)
+ rt3 TE-IS 30 rt5 - rt2(4)
+ rt6(4)
+ rt1 TE-IS 30 rt5 - rt4(4)
+ rt7 - rt4(4)
+ 10.0.255.2/32 IP TE 30 rt5 - rt2(4)
+ 10.0.255.4/32 IP TE 30 rt5 - rt4(4)
+ rt7 - rt4(4)
+ 10.0.255.6/32 IP TE 30 rt5 - rt6(4)
+ 10.0.255.12/32 IP TE 30 rt9 - rt12(4)
+ rt11 - rt12(4)
+ 10.0.255.10/32 IP TE 30 rt11 - rt10(4)
+ 10.0.255.3/32 IP TE 40 rt5 - rt3(4)
+ 10.0.255.1/32 IP TE 40 rt5 - rt1(4)
+ rt7 - rt1(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1255,12 +1327,14 @@ IS-IS L1 IPv4 routing table: 10.0.255.10/32 40 - rt7 16100
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt8
-rt5 TE-IS 10 rt5 - rt8(4)
-rt7 TE-IS 10 rt7 - rt8(4)
-rt9 TE-IS 10 rt9 - rt8(4)
-rt11 TE-IS 10 rt11 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt8
+ rt5 TE-IS 10 rt5 - rt8(4)
+ rt7 TE-IS 10 rt7 - rt8(4)
+ rt9 TE-IS 10 rt9 - rt8(4)
+ rt11 TE-IS 10 rt11 - rt8(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1270,28 +1344,30 @@ IS-IS L1 IPv6 routing table: test# test isis topology 9 root rt3 lfa system-id rt1
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt3
-10.0.255.3/32 IP internal 0 rt3(4)
-rt1 TE-IS 10 rt1 - rt3(4)
-rt2 TE-IS 20 rt1 - rt1(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-rt4 TE-IS 30 rt1 - rt2(4)
-10.0.255.2/32 IP TE 30 rt1 - rt2(4)
-rt5 TE-IS 40 rt1 - rt4(4)
-10.0.255.4/32 IP TE 40 rt1 - rt4(4)
-rt9 TE-IS 50 rt1 - rt5(4)
-10.0.255.5/32 IP TE 50 rt1 - rt5(4)
-rt6 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-rt7 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-rt8 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-10.0.255.9/32 IP TE 60 rt1 - rt9(4)
-10.0.255.6/32 IP TE 70 rt1 - rt6(4)
-10.0.255.7/32 IP TE 70 rt1 - rt7(4)
-10.0.255.8/32 IP TE 70 rt1 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt3
+ 10.0.255.3/32 IP internal 0 rt3(4)
+ rt1 TE-IS 10 rt1 - rt3(4)
+ rt2 TE-IS 20 rt1 - rt1(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ rt4 TE-IS 30 rt1 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt1 - rt2(4)
+ rt5 TE-IS 40 rt1 - rt4(4)
+ 10.0.255.4/32 IP TE 40 rt1 - rt4(4)
+ rt9 TE-IS 50 rt1 - rt5(4)
+ 10.0.255.5/32 IP TE 50 rt1 - rt5(4)
+ rt6 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ 10.0.255.9/32 IP TE 60 rt1 - rt9(4)
+ 10.0.255.6/32 IP TE 70 rt1 - rt6(4)
+ 10.0.255.7/32 IP TE 70 rt1 - rt7(4)
+ 10.0.255.8/32 IP TE 70 rt1 - rt8(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1323,28 +1399,30 @@ IS-IS L1 IPv4 routing table: 10.0.255.9/32 130 - rt4 16090
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt3
-2001:db8::3/128 IP6 internal 0 rt3(4)
-rt1 TE-IS 10 rt1 - rt3(4)
-rt2 TE-IS 20 rt1 - rt1(4)
-2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
-rt4 TE-IS 30 rt1 - rt2(4)
-2001:db8::2/128 IP6 internal 30 rt1 - rt2(4)
-rt5 TE-IS 40 rt1 - rt4(4)
-2001:db8::4/128 IP6 internal 40 rt1 - rt4(4)
-rt9 TE-IS 50 rt1 - rt5(4)
-2001:db8::5/128 IP6 internal 50 rt1 - rt5(4)
-rt6 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-rt7 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-rt8 TE-IS 60 rt1 - rt4(4)
- rt9(4)
-2001:db8::9/128 IP6 internal 60 rt1 - rt9(4)
-2001:db8::6/128 IP6 internal 70 rt1 - rt6(4)
-2001:db8::7/128 IP6 internal 70 rt1 - rt7(4)
-2001:db8::8/128 IP6 internal 70 rt1 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt3
+ 2001:db8::3/128 IP6 internal 0 rt3(4)
+ rt1 TE-IS 10 rt1 - rt3(4)
+ rt2 TE-IS 20 rt1 - rt1(4)
+ 2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
+ rt4 TE-IS 30 rt1 - rt2(4)
+ 2001:db8::2/128 IP6 internal 30 rt1 - rt2(4)
+ rt5 TE-IS 40 rt1 - rt4(4)
+ 2001:db8::4/128 IP6 internal 40 rt1 - rt4(4)
+ rt9 TE-IS 50 rt1 - rt5(4)
+ 2001:db8::5/128 IP6 internal 50 rt1 - rt5(4)
+ rt6 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 60 rt1 - rt4(4)
+ rt9(4)
+ 2001:db8::9/128 IP6 internal 60 rt1 - rt9(4)
+ 2001:db8::6/128 IP6 internal 70 rt1 - rt6(4)
+ 2001:db8::7/128 IP6 internal 70 rt1 - rt7(4)
+ 2001:db8::8/128 IP6 internal 70 rt1 - rt8(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1377,23 +1455,25 @@ IS-IS L1 IPv6 routing table: test# test isis topology 10 root rt8 lfa system-id rt5
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt8
-10.0.255.8/32 IP internal 0 rt8(4)
-rt5 TE-IS 10 rt5 - rt8(4)
-rt2 TE-IS 20 rt5 - rt5(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-rt1 TE-IS 30 rt5 - rt2(4)
-10.0.255.2/32 IP TE 30 rt5 - rt2(4)
-10.0.255.1/32 IP TE 40 rt5 - rt1(4)
-rt6 TE-IS 50 rt6 - rt8(4)
-rt7 TE-IS 50 rt7 - rt8(4)
-rt3 TE-IS 50 rt5 - rt1(4)
-rt4 TE-IS 50 rt5 - rt1(4)
-10.0.255.6/32 IP TE 60 rt6 - rt6(4)
-10.0.255.7/32 IP TE 60 rt7 - rt7(4)
-10.0.255.3/32 IP TE 60 rt5 - rt3(4)
-10.0.255.4/32 IP TE 60 rt5 - rt4(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt8
+ 10.0.255.8/32 IP internal 0 rt8(4)
+ rt5 TE-IS 10 rt5 - rt8(4)
+ rt2 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ rt1 TE-IS 30 rt5 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt5 - rt2(4)
+ 10.0.255.1/32 IP TE 40 rt5 - rt1(4)
+ rt6 TE-IS 50 rt6 - rt8(4)
+ rt7 TE-IS 50 rt7 - rt8(4)
+ rt3 TE-IS 50 rt5 - rt1(4)
+ rt4 TE-IS 50 rt5 - rt1(4)
+ 10.0.255.6/32 IP TE 60 rt6 - rt6(4)
+ 10.0.255.7/32 IP TE 60 rt7 - rt7(4)
+ 10.0.255.3/32 IP TE 60 rt5 - rt3(4)
+ 10.0.255.4/32 IP TE 60 rt5 - rt4(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1426,23 +1506,25 @@ IS-IS L1 IPv4 routing table: - rt7 16050
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt8
-2001:db8::8/128 IP6 internal 0 rt8(4)
-rt5 TE-IS 10 rt5 - rt8(4)
-rt2 TE-IS 20 rt5 - rt5(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-rt1 TE-IS 30 rt5 - rt2(4)
-2001:db8::2/128 IP6 internal 30 rt5 - rt2(4)
-2001:db8::1/128 IP6 internal 40 rt5 - rt1(4)
-rt6 TE-IS 50 rt6 - rt8(4)
-rt7 TE-IS 50 rt7 - rt8(4)
-rt3 TE-IS 50 rt5 - rt1(4)
-rt4 TE-IS 50 rt5 - rt1(4)
-2001:db8::6/128 IP6 internal 60 rt6 - rt6(4)
-2001:db8::7/128 IP6 internal 60 rt7 - rt7(4)
-2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
-2001:db8::4/128 IP6 internal 60 rt5 - rt4(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt8
+ 2001:db8::8/128 IP6 internal 0 rt8(4)
+ rt5 TE-IS 10 rt5 - rt8(4)
+ rt2 TE-IS 20 rt5 - rt5(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ rt1 TE-IS 30 rt5 - rt2(4)
+ 2001:db8::2/128 IP6 internal 30 rt5 - rt2(4)
+ 2001:db8::1/128 IP6 internal 40 rt5 - rt1(4)
+ rt6 TE-IS 50 rt6 - rt8(4)
+ rt7 TE-IS 50 rt7 - rt8(4)
+ rt3 TE-IS 50 rt5 - rt1(4)
+ rt4 TE-IS 50 rt5 - rt1(4)
+ 2001:db8::6/128 IP6 internal 60 rt6 - rt6(4)
+ 2001:db8::7/128 IP6 internal 60 rt7 - rt7(4)
+ 2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
+ 2001:db8::4/128 IP6 internal 60 rt5 - rt4(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1476,22 +1558,24 @@ IS-IS L1 IPv6 routing table: test# test isis topology 11 root rt3 lfa system-id rt5
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt3
-10.0.255.3/32 IP internal 0 rt3(4)
-rt1 TE-IS 10 rt1 - rt3(4)
-rt2 TE-IS 10 rt2 - rt3(4)
-rt5 TE-IS 10 rt5 - rt3(4)
-rt2 pseudo_TE-IS 20 rt1 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
- rt5 - rt5(4)
-rt6 TE-IS 20 rt5 - rt5(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
- rt5 -
-10.0.255.6/32 IP TE 30 rt5 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt3
+ 10.0.255.3/32 IP internal 0 rt3(4)
+ rt1 TE-IS 10 rt1 - rt3(4)
+ rt2 TE-IS 10 rt2 - rt3(4)
+ rt5 TE-IS 10 rt5 - rt3(4)
+ rt2 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 - rt5(4)
+ rt6 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt5 - rt4(4)
+ 10.0.255.6/32 IP TE 30 rt5 - rt6(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1515,22 +1599,24 @@ IS-IS L1 IPv4 routing table: 10.0.255.6/32 40 - rt2 16060
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt3
-2001:db8::3/128 IP6 internal 0 rt3(4)
-rt1 TE-IS 10 rt1 - rt3(4)
-rt2 TE-IS 10 rt2 - rt3(4)
-rt5 TE-IS 10 rt5 - rt3(4)
-rt2 pseudo_TE-IS 20 rt1 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
- rt5 - rt5(4)
-rt6 TE-IS 20 rt5 - rt5(4)
-2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
- rt5 -
-2001:db8::6/128 IP6 internal 30 rt5 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt3
+ 2001:db8::3/128 IP6 internal 0 rt3(4)
+ rt1 TE-IS 10 rt1 - rt3(4)
+ rt2 TE-IS 10 rt2 - rt3(4)
+ rt5 TE-IS 10 rt5 - rt3(4)
+ rt2 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 - rt5(4)
+ rt6 TE-IS 20 rt5 - rt5(4)
+ 2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ rt5 - rt4(4)
+ 2001:db8::6/128 IP6 internal 30 rt5 - rt6(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1555,24 +1641,26 @@ IS-IS L1 IPv6 routing table: test# test isis topology 13 root rt4 lfa system-id rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt2 TE-IS 10 rt2 - rt4(4)
-rt3 TE-IS 10 rt3 - rt4(4)
-rt1 TE-IS 20 rt2 - rt2(4)
- rt3 - rt3(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-rt6 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
- rt6(4)
-10.0.255.1/32 IP TE 30 rt2 - rt1(4)
- rt3 -
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt3 TE-IS 10 rt3 - rt4(4)
+ rt1 TE-IS 20 rt2 - rt2(4)
+ rt3 - rt3(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ rt6(4)
+ 10.0.255.1/32 IP TE 30 rt2 - rt1(4)
+ rt3 - rt1(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1599,11 +1687,13 @@ IS-IS L1 IPv4 routing table: 10.0.255.7/32 120 - rt5 16070
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-rt2 TE-IS 10 rt2 - rt4(4)
-rt3 TE-IS 10 rt3 - rt4(4)
-rt5 TE-IS 100 rt5 - rt4(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ----------------------------------------------------
+ rt4
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt3 TE-IS 10 rt3 - rt4(4)
+ rt5 TE-IS 100 rt5 - rt4(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1613,18 +1703,20 @@ IS-IS L1 IPv6 routing table: test# test isis topology 14 root rt1 lfa system-id rt1 pseudonode-id 1
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt1
-rt5 TE-IS 20 rt4 - rt4(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt1
+ rt5 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1641,18 +1733,20 @@ Backup: IS-IS L1 IPv4 routing table:
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt1
-rt5 TE-IS 20 rt4 - rt4(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt1
+ rt5 TE-IS 20 rt4 - rt4(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1670,18 +1764,20 @@ IS-IS L1 IPv6 routing table: test# test isis topology 14 root rt1 lfa system-id rt2
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt1
-rt5 TE-IS 20 rt4 - rt4(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt1
+ rt5 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1702,18 +1798,20 @@ IS-IS L1 IPv4 routing table: 10.0.255.2/32 30 - rt3 -
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt1
-rt5 TE-IS 20 rt4 - rt4(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt1
+ rt5 TE-IS 20 rt4 - rt4(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1735,19 +1833,21 @@ IS-IS L1 IPv6 routing table: test# test isis topology 14 root rt5 lfa system-id rt4
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt1 pseudo_TE-IS 20 rt4 - rt4(4)
-rt1 TE-IS 20 rt4 - rt1(2)
-rt3 TE-IS 20 rt4 - rt1(2)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-rt2 TE-IS 30 rt4 - rt1(4)
- rt3(4)
-10.0.255.1/32 IP TE 30 rt4 - rt1(4)
-10.0.255.3/32 IP TE 30 rt4 - rt3(4)
-10.0.255.2/32 IP TE 40 rt4 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt1 pseudo_TE-IS 20 rt4 - rt4(4)
+ rt1 TE-IS 20 rt4 - rt1(2)
+ rt3 TE-IS 20 rt4 - rt1(2)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ rt2 TE-IS 30 rt4 - rt1(4)
+ rt3(4)
+ 10.0.255.1/32 IP TE 30 rt4 - rt1(4)
+ 10.0.255.3/32 IP TE 30 rt4 - rt3(4)
+ 10.0.255.2/32 IP TE 40 rt4 - rt2(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1771,19 +1871,21 @@ IS-IS L1 IPv4 routing table: 10.0.255.4/32 70 - rt3 -
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-2001:db8::5/128 IP6 internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt1 pseudo_TE-IS 20 rt4 - rt4(4)
-rt1 TE-IS 20 rt4 - rt1(2)
-rt3 TE-IS 20 rt4 - rt1(2)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-rt2 TE-IS 30 rt4 - rt1(4)
- rt3(4)
-2001:db8::1/128 IP6 internal 30 rt4 - rt1(4)
-2001:db8::3/128 IP6 internal 30 rt4 - rt3(4)
-2001:db8::2/128 IP6 internal 40 rt4 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt5
+ 2001:db8::5/128 IP6 internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt1 pseudo_TE-IS 20 rt4 - rt4(4)
+ rt1 TE-IS 20 rt4 - rt1(2)
+ rt3 TE-IS 20 rt4 - rt1(2)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ rt2 TE-IS 30 rt4 - rt1(4)
+ rt3(4)
+ 2001:db8::1/128 IP6 internal 30 rt4 - rt1(4)
+ 2001:db8::3/128 IP6 internal 30 rt4 - rt3(4)
+ 2001:db8::2/128 IP6 internal 40 rt4 - rt2(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1823,36 +1925,40 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt5(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt4 TE-IS 40 rt3 - rt6(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
-rt2 TE-IS 50 rt3 - rt4(4)
-10.0.255.4/32 IP TE 50 rt3 - rt4(4)
-10.0.255.2/32 IP TE 60 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt4 TE-IS 40 rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ rt2 TE-IS 50 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 50 rt3 - rt4(4)
+ 10.0.255.2/32 IP TE 60 rt3 - rt2(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -1890,36 +1996,40 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt5(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-rt4 TE-IS 40 rt3 - rt6(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
-rt2 TE-IS 50 rt3 - rt4(4)
-2001:db8::4/128 IP6 internal 50 rt3 - rt4(4)
-2001:db8::2/128 IP6 internal 60 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt5(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ rt4 TE-IS 40 rt3 - rt6(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ rt2 TE-IS 50 rt3 - rt4(4)
+ 2001:db8::4/128 IP6 internal 50 rt3 - rt4(4)
+ 2001:db8::2/128 IP6 internal 60 rt3 - rt2(4)
+
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
- rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt2 - rt6(4)
+ rt3 - rt6(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -1964,39 +2074,43 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt1 pseudo_TE-IS 30 rt6 - rt4(4)
-rt1 TE-IS 30 rt6 - rt1(2)
-10.0.255.4/32 IP TE 30 rt6 - rt4(4)
-rt3 TE-IS 40 rt3 - rt5(4)
-10.0.255.1/32 IP TE 40 rt6 - rt1(4)
-rt2 TE-IS 45 rt6 - rt1(4)
-10.0.255.3/32 IP TE 50 rt3 - rt3(4)
-10.0.255.2/32 IP TE 55 rt6 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt1 pseudo_TE-IS 30 rt6 - rt4(4)
+ rt1 TE-IS 30 rt6 - rt1(2)
+ 10.0.255.4/32 IP TE 30 rt6 - rt4(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.1/32 IP TE 40 rt6 - rt1(4)
+ rt2 TE-IS 45 rt6 - rt1(4)
+ 10.0.255.3/32 IP TE 50 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 55 rt6 - rt2(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt1 TE-IS 10 rt1 - rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt4 - rt4(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-10.0.255.2/32 IP TE 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt3 - rt5(4)
- rt1 - rt1(4)
-10.0.255.3/32 IP TE 50 rt3 - rt3(4)
- rt1 -
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt1 TE-IS 10 rt1 - rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt4 - rt4(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 10.0.255.2/32 IP TE 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 50 rt3 - rt3(4)
+ rt1 - rt3(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2041,39 +2155,43 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-2001:db8::5/128 IP6 internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-rt1 pseudo_TE-IS 30 rt6 - rt4(4)
-rt1 TE-IS 30 rt6 - rt1(2)
-2001:db8::4/128 IP6 internal 30 rt6 - rt4(4)
-rt3 TE-IS 40 rt3 - rt5(4)
-2001:db8::1/128 IP6 internal 40 rt6 - rt1(4)
-rt2 TE-IS 45 rt6 - rt1(4)
-2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 55 rt6 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt5
+ 2001:db8::5/128 IP6 internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ rt1 pseudo_TE-IS 30 rt6 - rt4(4)
+ rt1 TE-IS 30 rt6 - rt1(2)
+ 2001:db8::4/128 IP6 internal 30 rt6 - rt4(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ 2001:db8::1/128 IP6 internal 40 rt6 - rt1(4)
+ rt2 TE-IS 45 rt6 - rt1(4)
+ 2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 55 rt6 - rt2(4)
+
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-2001:db8::5/128 IP6 internal 0 rt5(4)
-rt1 TE-IS 10 rt1 - rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt1 pseudo_TE-IS 20 rt1 - rt1(4)
- rt4 - rt4(4)
-2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-rt2 TE-IS 25 rt1 - rt1(4)
-2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
-rt3 TE-IS 40 rt3 - rt5(4)
- rt1 - rt1(4)
-2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
- rt1 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt5
+ 2001:db8::5/128 IP6 internal 0 rt5(4)
+ rt1 TE-IS 10 rt1 - rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt1 pseudo_TE-IS 20 rt1 - rt1(4)
+ rt4 - rt4(4)
+ 2001:db8::1/128 IP6 internal 20 rt1 - rt1(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ rt2 TE-IS 25 rt1 - rt1(4)
+ 2001:db8::2/128 IP6 internal 35 rt1 - rt2(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ rt1 - rt1(4)
+ 2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
+ rt1 - rt3(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -2123,38 +2241,42 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt3 - rt5(4)
-rt2 TE-IS 30 rt6 - rt4(4)
-10.0.255.4/32 IP TE 30 rt6 - rt4(4)
-rt1 TE-IS 40 rt3 - rt3(4)
- rt6 - rt2(4)
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
-10.0.255.2/32 IP TE 40 rt6 - rt2(4)
-10.0.255.1/32 IP TE 50 rt3 - rt1(4)
- rt6 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt3 - rt5(4)
+ rt2 TE-IS 30 rt6 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt6 - rt4(4)
+ rt1 TE-IS 40 rt3 - rt3(4)
+ rt6 - rt2(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 40 rt6 - rt2(4)
+ 10.0.255.1/32 IP TE 50 rt3 - rt1(4)
+ rt6 - rt1(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt2 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt3 - rt5(4)
- rt4 - rt2(4)
-rt1 TE-IS 30 rt4 - rt2(4)
-10.0.255.2/32 IP TE 30 rt4 - rt2(4)
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
- rt4 -
-10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt2 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt3 - rt5(4)
+ rt4 - rt2(4)
+ rt1 TE-IS 30 rt4 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt4 - rt2(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ rt4 - rt3(4)
+ 10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2210,36 +2332,40 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt2 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt1 TE-IS 30 rt4 - rt2(4)
-rt3 TE-IS 30 rt4 - rt2(4)
-10.0.255.2/32 IP TE 30 rt4 - rt2(4)
-10.0.255.1/32 IP TE 40 rt4 - rt1(4)
-10.0.255.3/32 IP TE 40 rt4 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt2 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt1 TE-IS 30 rt4 - rt2(4)
+ rt3 TE-IS 30 rt4 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt4 - rt2(4)
+ 10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+ 10.0.255.3/32 IP TE 40 rt4 - rt3(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt2 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt3 - rt5(4)
- rt4 - rt2(4)
-rt1 TE-IS 30 rt4 - rt2(4)
-10.0.255.2/32 IP TE 30 rt4 - rt2(4)
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
- rt4 -
-10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt2 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt3 - rt5(4)
+ rt4 - rt2(4)
+ rt1 TE-IS 30 rt4 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt4 - rt2(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ rt4 - rt3(4)
+ 10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2276,44 +2402,48 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt3 - rt7(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-rt6 TE-IS 50 rt3 - rt8(4)
-10.0.255.8/32 IP TE 50 rt3 - rt8(4)
-rt4 TE-IS 60 rt3 - rt6(4)
-10.0.255.6/32 IP TE 60 rt3 - rt6(4)
-rt2 TE-IS 70 rt3 - rt4(4)
-10.0.255.4/32 IP TE 70 rt3 - rt4(4)
-10.0.255.2/32 IP TE 80 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt3 - rt7(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ rt6 TE-IS 50 rt3 - rt8(4)
+ 10.0.255.8/32 IP TE 50 rt3 - rt8(4)
+ rt4 TE-IS 60 rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 60 rt3 - rt6(4)
+ rt2 TE-IS 70 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 70 rt3 - rt4(4)
+ 10.0.255.2/32 IP TE 80 rt3 - rt2(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt2 - rt6(4)
- rt3 - rt7(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ rt3 - rt7(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ rt3 - rt8(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2362,46 +2492,50 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt2 TE-IS 10 rt2 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt6 - rt6(4)
-rt8 TE-IS 20 rt6 - rt6(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt2 - rt1(4)
-rt7 TE-IS 30 rt6 - rt5(4)
- rt8(4)
-10.0.255.1/32 IP TE 30 rt2 - rt1(4)
-10.0.255.5/32 IP TE 30 rt6 - rt5(4)
-10.0.255.8/32 IP TE 30 rt6 - rt8(4)
-10.0.255.3/32 IP TE 40 rt2 - rt3(4)
-10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt6 - rt6(4)
+ rt8 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt2 - rt1(4)
+ rt7 TE-IS 30 rt6 - rt5(4)
+ rt8(4)
+ 10.0.255.1/32 IP TE 30 rt2 - rt1(4)
+ 10.0.255.5/32 IP TE 30 rt6 - rt5(4)
+ 10.0.255.8/32 IP TE 30 rt6 - rt8(4)
+ 10.0.255.3/32 IP TE 40 rt2 - rt3(4)
+ 10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt2 TE-IS 10 rt2 - rt4(4)
-rt3 TE-IS 10 rt3 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 TE-IS 20 rt2 - rt2(4)
- rt3 - rt3(4)
-rt5 TE-IS 20 rt6 - rt6(4)
-rt8 TE-IS 20 rt6 - rt6(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt7 TE-IS 30 rt6 - rt5(4)
- rt8(4)
-10.0.255.1/32 IP TE 30 rt2 - rt1(4)
- rt3 -
-10.0.255.5/32 IP TE 30 rt6 - rt5(4)
-10.0.255.8/32 IP TE 30 rt6 - rt8(4)
-10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt3 TE-IS 10 rt3 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 TE-IS 20 rt2 - rt2(4)
+ rt3 - rt3(4)
+ rt5 TE-IS 20 rt6 - rt6(4)
+ rt8 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt7 TE-IS 30 rt6 - rt5(4)
+ rt8(4)
+ 10.0.255.1/32 IP TE 30 rt2 - rt1(4)
+ rt3 - rt1(4)
+ 10.0.255.5/32 IP TE 30 rt6 - rt5(4)
+ 10.0.255.8/32 IP TE 30 rt6 - rt8(4)
+ 10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2452,64 +2586,68 @@ Q-space: rt9
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt11
-10.0.255.11/32 IP internal 0 rt11(4)
-rt10 TE-IS 10 rt10 - rt11(4)
-rt12 TE-IS 10 rt12 - rt11(4)
-rt9 TE-IS 20 rt12 - rt12(4)
-10.0.255.10/32 IP TE 20 rt10 - rt10(4)
-10.0.255.12/32 IP TE 20 rt12 - rt12(4)
-rt7 TE-IS 30 rt10 - rt10(4)
-rt8 TE-IS 30 rt12 - rt9(4)
-10.0.255.9/32 IP TE 30 rt12 - rt9(4)
-rt4 TE-IS 40 rt10 - rt7(4)
-rt5 TE-IS 40 rt12 - rt8(4)
-10.0.255.7/32 IP TE 40 rt10 - rt7(4)
-10.0.255.8/32 IP TE 40 rt12 - rt8(4)
-rt6 TE-IS 50 rt12 - rt9(4)
- rt5(4)
-rt1 TE-IS 50 rt10 - rt4(4)
-rt2 TE-IS 50 rt12 - rt5(4)
-10.0.255.4/32 IP TE 50 rt10 - rt4(4)
-10.0.255.5/32 IP TE 50 rt12 - rt5(4)
-rt3 TE-IS 60 rt12 - rt6(4)
- rt2(4)
-10.0.255.6/32 IP TE 60 rt12 - rt6(4)
-10.0.255.1/32 IP TE 60 rt10 - rt1(4)
-10.0.255.2/32 IP TE 60 rt12 - rt2(4)
-10.0.255.3/32 IP TE 70 rt12 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt11
+ 10.0.255.11/32 IP internal 0 rt11(4)
+ rt10 TE-IS 10 rt10 - rt11(4)
+ rt12 TE-IS 10 rt12 - rt11(4)
+ rt9 TE-IS 20 rt12 - rt12(4)
+ 10.0.255.10/32 IP TE 20 rt10 - rt10(4)
+ 10.0.255.12/32 IP TE 20 rt12 - rt12(4)
+ rt7 TE-IS 30 rt10 - rt10(4)
+ rt8 TE-IS 30 rt12 - rt9(4)
+ 10.0.255.9/32 IP TE 30 rt12 - rt9(4)
+ rt4 TE-IS 40 rt10 - rt7(4)
+ rt5 TE-IS 40 rt12 - rt8(4)
+ 10.0.255.7/32 IP TE 40 rt10 - rt7(4)
+ 10.0.255.8/32 IP TE 40 rt12 - rt8(4)
+ rt6 TE-IS 50 rt12 - rt9(4)
+ rt5(4)
+ rt1 TE-IS 50 rt10 - rt4(4)
+ rt2 TE-IS 50 rt12 - rt5(4)
+ 10.0.255.4/32 IP TE 50 rt10 - rt4(4)
+ 10.0.255.5/32 IP TE 50 rt12 - rt5(4)
+ rt3 TE-IS 60 rt12 - rt6(4)
+ rt2(4)
+ 10.0.255.6/32 IP TE 60 rt12 - rt6(4)
+ 10.0.255.1/32 IP TE 60 rt10 - rt1(4)
+ 10.0.255.2/32 IP TE 60 rt12 - rt2(4)
+ 10.0.255.3/32 IP TE 70 rt12 - rt3(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt11
-10.0.255.11/32 IP internal 0 rt11(4)
-rt8 TE-IS 10 rt8 - rt11(4)
-rt10 TE-IS 10 rt10 - rt11(4)
-rt12 TE-IS 10 rt12 - rt11(4)
-rt5 TE-IS 20 rt8 - rt8(4)
-rt7 TE-IS 20 rt8 - rt8(4)
-rt9 TE-IS 20 rt8 - rt8(4)
- rt12 - rt12(4)
-10.0.255.8/32 IP TE 20 rt8 - rt8(4)
-10.0.255.10/32 IP TE 20 rt10 - rt10(4)
-10.0.255.12/32 IP TE 20 rt12 - rt12(4)
-rt2 TE-IS 30 rt8 - rt5(4)
-rt4 TE-IS 30 rt8 - rt5(4)
- rt7(4)
-rt6 TE-IS 30 rt8 - rt5(4)
-10.0.255.5/32 IP TE 30 rt8 - rt5(4)
-10.0.255.7/32 IP TE 30 rt8 - rt7(4)
-10.0.255.9/32 IP TE 30 rt8 - rt9(4)
- rt12 -
-rt3 TE-IS 40 rt8 - rt2(4)
- rt6(4)
-rt1 TE-IS 40 rt8 - rt4(4)
-10.0.255.2/32 IP TE 40 rt8 - rt2(4)
-10.0.255.4/32 IP TE 40 rt8 - rt4(4)
-10.0.255.6/32 IP TE 40 rt8 - rt6(4)
-10.0.255.3/32 IP TE 50 rt8 - rt3(4)
-10.0.255.1/32 IP TE 50 rt8 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt11
+ 10.0.255.11/32 IP internal 0 rt11(4)
+ rt8 TE-IS 10 rt8 - rt11(4)
+ rt10 TE-IS 10 rt10 - rt11(4)
+ rt12 TE-IS 10 rt12 - rt11(4)
+ rt5 TE-IS 20 rt8 - rt8(4)
+ rt7 TE-IS 20 rt8 - rt8(4)
+ rt9 TE-IS 20 rt8 - rt8(4)
+ rt12 - rt12(4)
+ 10.0.255.8/32 IP TE 20 rt8 - rt8(4)
+ 10.0.255.10/32 IP TE 20 rt10 - rt10(4)
+ 10.0.255.12/32 IP TE 20 rt12 - rt12(4)
+ rt2 TE-IS 30 rt8 - rt5(4)
+ rt4 TE-IS 30 rt8 - rt5(4)
+ rt7(4)
+ rt6 TE-IS 30 rt8 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt8 - rt5(4)
+ 10.0.255.7/32 IP TE 30 rt8 - rt7(4)
+ 10.0.255.9/32 IP TE 30 rt8 - rt9(4)
+ rt12 - rt9(4)
+ rt3 TE-IS 40 rt8 - rt2(4)
+ rt6(4)
+ rt1 TE-IS 40 rt8 - rt4(4)
+ 10.0.255.2/32 IP TE 40 rt8 - rt2(4)
+ 10.0.255.4/32 IP TE 40 rt8 - rt4(4)
+ 10.0.255.6/32 IP TE 40 rt8 - rt6(4)
+ 10.0.255.3/32 IP TE 50 rt8 - rt3(4)
+ 10.0.255.1/32 IP TE 50 rt8 - rt1(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2577,73 +2715,77 @@ Q-space: rt12
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt6
-10.0.255.6/32 IP internal 0 rt6(4)
-rt3 TE-IS 10 rt3 - rt6(4)
-rt2 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt9 TE-IS 30 rt9 - rt6(4)
-rt5 TE-IS 30 rt3 - rt2(4)
-10.0.255.2/32 IP TE 30 rt3 - rt2(4)
-rt8 TE-IS 40 rt9 - rt9(4)
- rt3 - rt5(4)
-rt12 TE-IS 40 rt9 - rt9(4)
-rt4 TE-IS 40 rt3 - rt5(4)
-10.0.255.9/32 IP TE 40 rt9 - rt9(4)
-10.0.255.5/32 IP TE 40 rt3 - rt5(4)
-rt7 TE-IS 50 rt9 - rt8(4)
- rt3 - rt4(4)
-rt11 TE-IS 50 rt9 - rt8(4)
- rt3 - rt12(4)
-rt1 TE-IS 50 rt3 - rt4(4)
-10.0.255.8/32 IP TE 50 rt9 - rt8(4)
- rt3 -
-10.0.255.12/32 IP TE 50 rt9 - rt12(4)
-10.0.255.4/32 IP TE 50 rt3 - rt4(4)
-rt10 TE-IS 60 rt9 - rt11(4)
- rt3 -
-10.0.255.7/32 IP TE 60 rt9 - rt7(4)
- rt3 -
-10.0.255.11/32 IP TE 60 rt9 - rt11(4)
- rt3 -
-10.0.255.1/32 IP TE 60 rt3 - rt1(4)
-10.0.255.10/32 IP TE 70 rt9 - rt10(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt6
+ 10.0.255.6/32 IP internal 0 rt6(4)
+ rt3 TE-IS 10 rt3 - rt6(4)
+ rt2 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt9 TE-IS 30 rt9 - rt6(4)
+ rt5 TE-IS 30 rt3 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt3 - rt2(4)
+ rt8 TE-IS 40 rt9 - rt9(4)
+ rt3 - rt5(4)
+ rt12 TE-IS 40 rt9 - rt9(4)
+ rt4 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.9/32 IP TE 40 rt9 - rt9(4)
+ 10.0.255.5/32 IP TE 40 rt3 - rt5(4)
+ rt7 TE-IS 50 rt9 - rt8(4)
+ rt3 - rt4(4)
+ rt11 TE-IS 50 rt9 - rt8(4)
+ rt3 - rt12(4)
+ rt1 TE-IS 50 rt3 - rt4(4)
+ 10.0.255.8/32 IP TE 50 rt9 - rt8(4)
+ rt3 - rt8(4)
+ 10.0.255.12/32 IP TE 50 rt9 - rt12(4)
+ 10.0.255.4/32 IP TE 50 rt3 - rt4(4)
+ rt10 TE-IS 60 rt9 - rt11(4)
+ rt3 - rt11(4)
+ 10.0.255.7/32 IP TE 60 rt9 - rt7(4)
+ rt3 - rt7(4)
+ 10.0.255.11/32 IP TE 60 rt9 - rt11(4)
+ rt3 - rt11(4)
+ 10.0.255.1/32 IP TE 60 rt3 - rt1(4)
+ 10.0.255.10/32 IP TE 70 rt9 - rt10(4)
+ rt3 - rt10(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt6
-10.0.255.6/32 IP internal 0 rt6(4)
-rt3 TE-IS 10 rt3 - rt6(4)
-rt5 TE-IS 10 rt5 - rt6(4)
-rt2 TE-IS 20 rt3 - rt3(4)
- rt5 - rt5(4)
-rt4 TE-IS 20 rt5 - rt5(4)
-rt8 TE-IS 20 rt5 - rt5(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-rt9 TE-IS 30 rt9 - rt6(4)
- rt5 - rt8(4)
-rt1 TE-IS 30 rt5 - rt4(4)
-rt7 TE-IS 30 rt5 - rt4(4)
- rt8(4)
-rt11 TE-IS 30 rt5 - rt8(4)
-10.0.255.2/32 IP TE 30 rt3 - rt2(4)
- rt5 -
-10.0.255.4/32 IP TE 30 rt5 - rt4(4)
-10.0.255.8/32 IP TE 30 rt5 - rt8(4)
-rt12 TE-IS 40 rt9 - rt9(4)
- rt5 - rt11(4)
-rt10 TE-IS 40 rt5 - rt11(4)
-10.0.255.9/32 IP TE 40 rt9 - rt9(4)
- rt5 -
-10.0.255.1/32 IP TE 40 rt5 - rt1(4)
-10.0.255.7/32 IP TE 40 rt5 - rt7(4)
-10.0.255.11/32 IP TE 40 rt5 - rt11(4)
-10.0.255.12/32 IP TE 50 rt9 - rt12(4)
- rt5 -
-10.0.255.10/32 IP TE 50 rt5 - rt10(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt6
+ 10.0.255.6/32 IP internal 0 rt6(4)
+ rt3 TE-IS 10 rt3 - rt6(4)
+ rt5 TE-IS 10 rt5 - rt6(4)
+ rt2 TE-IS 20 rt3 - rt3(4)
+ rt5 - rt5(4)
+ rt4 TE-IS 20 rt5 - rt5(4)
+ rt8 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ rt9 TE-IS 30 rt9 - rt6(4)
+ rt5 - rt8(4)
+ rt1 TE-IS 30 rt5 - rt4(4)
+ rt7 TE-IS 30 rt5 - rt4(4)
+ rt8(4)
+ rt11 TE-IS 30 rt5 - rt8(4)
+ 10.0.255.2/32 IP TE 30 rt3 - rt2(4)
+ rt5 - rt2(4)
+ 10.0.255.4/32 IP TE 30 rt5 - rt4(4)
+ 10.0.255.8/32 IP TE 30 rt5 - rt8(4)
+ rt12 TE-IS 40 rt9 - rt9(4)
+ rt5 - rt11(4)
+ rt10 TE-IS 40 rt5 - rt11(4)
+ 10.0.255.9/32 IP TE 40 rt9 - rt9(4)
+ rt5 - rt9(4)
+ 10.0.255.1/32 IP TE 40 rt5 - rt1(4)
+ 10.0.255.7/32 IP TE 40 rt5 - rt7(4)
+ 10.0.255.11/32 IP TE 40 rt5 - rt11(4)
+ 10.0.255.12/32 IP TE 50 rt9 - rt12(4)
+ rt5 - rt12(4)
+ 10.0.255.10/32 IP TE 50 rt5 - rt10(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2706,62 +2848,66 @@ Q-space: rt12
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt1 TE-IS 10 rt1 - rt2(4)
-rt3 TE-IS 10 rt3 - rt2(4)
-rt4 TE-IS 20 rt1 - rt1(4)
-rt6 TE-IS 20 rt3 - rt3(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt1 - rt4(4)
-rt5 TE-IS 30 rt3 - rt6(4)
-10.0.255.4/32 IP TE 30 rt1 - rt4(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
-rt10 TE-IS 40 rt1 - rt7(4)
-rt8 TE-IS 40 rt3 - rt5(4)
-10.0.255.7/32 IP TE 40 rt1 - rt7(4)
-10.0.255.5/32 IP TE 40 rt3 - rt5(4)
-rt9 TE-IS 50 rt3 - rt8(4)
-rt11 TE-IS 50 rt3 - rt8(4)
-10.0.255.10/32 IP TE 50 rt1 - rt10(4)
-10.0.255.8/32 IP TE 50 rt3 - rt8(4)
-rt12 TE-IS 60 rt3 - rt9(4)
- rt11(4)
-10.0.255.9/32 IP TE 60 rt3 - rt9(4)
-10.0.255.11/32 IP TE 60 rt3 - rt11(4)
-10.0.255.12/32 IP TE 70 rt3 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt1 TE-IS 10 rt1 - rt2(4)
+ rt3 TE-IS 10 rt3 - rt2(4)
+ rt4 TE-IS 20 rt1 - rt1(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt1 - rt4(4)
+ rt5 TE-IS 30 rt3 - rt6(4)
+ 10.0.255.4/32 IP TE 30 rt1 - rt4(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ rt10 TE-IS 40 rt1 - rt7(4)
+ rt8 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.7/32 IP TE 40 rt1 - rt7(4)
+ 10.0.255.5/32 IP TE 40 rt3 - rt5(4)
+ rt9 TE-IS 50 rt3 - rt8(4)
+ rt11 TE-IS 50 rt3 - rt8(4)
+ 10.0.255.10/32 IP TE 50 rt1 - rt10(4)
+ 10.0.255.8/32 IP TE 50 rt3 - rt8(4)
+ rt12 TE-IS 60 rt3 - rt9(4)
+ rt11(4)
+ 10.0.255.9/32 IP TE 60 rt3 - rt9(4)
+ 10.0.255.11/32 IP TE 60 rt3 - rt11(4)
+ 10.0.255.12/32 IP TE 70 rt3 - rt12(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt1 TE-IS 10 rt1 - rt2(4)
-rt3 TE-IS 10 rt3 - rt2(4)
-rt5 TE-IS 10 rt5 - rt2(4)
-rt4 TE-IS 20 rt1 - rt1(4)
-rt6 TE-IS 20 rt3 - rt3(4)
- rt5 - rt5(4)
-rt8 TE-IS 20 rt5 - rt5(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-rt7 TE-IS 30 rt1 - rt4(4)
-rt9 TE-IS 30 rt5 - rt8(4)
-rt11 TE-IS 30 rt5 - rt8(4)
-10.0.255.4/32 IP TE 30 rt1 - rt4(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
- rt5 -
-10.0.255.8/32 IP TE 30 rt5 - rt8(4)
-rt10 TE-IS 40 rt1 - rt7(4)
-rt12 TE-IS 40 rt5 - rt9(4)
- rt11(4)
-10.0.255.7/32 IP TE 40 rt1 - rt7(4)
-10.0.255.9/32 IP TE 40 rt5 - rt9(4)
-10.0.255.11/32 IP TE 40 rt5 - rt11(4)
-10.0.255.10/32 IP TE 50 rt1 - rt10(4)
-10.0.255.12/32 IP TE 50 rt5 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt1 TE-IS 10 rt1 - rt2(4)
+ rt3 TE-IS 10 rt3 - rt2(4)
+ rt5 TE-IS 10 rt5 - rt2(4)
+ rt4 TE-IS 20 rt1 - rt1(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ rt5 - rt5(4)
+ rt8 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ rt7 TE-IS 30 rt1 - rt4(4)
+ rt9 TE-IS 30 rt5 - rt8(4)
+ rt11 TE-IS 30 rt5 - rt8(4)
+ 10.0.255.4/32 IP TE 30 rt1 - rt4(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ rt5 - rt6(4)
+ 10.0.255.8/32 IP TE 30 rt5 - rt8(4)
+ rt10 TE-IS 40 rt1 - rt7(4)
+ rt12 TE-IS 40 rt5 - rt9(4)
+ rt11(4)
+ 10.0.255.7/32 IP TE 40 rt1 - rt7(4)
+ 10.0.255.9/32 IP TE 40 rt5 - rt9(4)
+ 10.0.255.11/32 IP TE 40 rt5 - rt11(4)
+ 10.0.255.10/32 IP TE 50 rt1 - rt10(4)
+ 10.0.255.12/32 IP TE 50 rt5 - rt12(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2815,36 +2961,40 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt1 TE-IS 50 rt1 - rt2(4)
-rt3 TE-IS 50 rt3 - rt2(4)
-rt2
-rt5 TE-IS 60 rt3 - rt3(4)
-10.0.255.1/32 IP TE 60 rt1 - rt1(4)
-10.0.255.3/32 IP TE 60 rt3 - rt3(4)
-rt4 TE-IS 70 rt3 - rt5(4)
-rt6 TE-IS 70 rt3 - rt5(4)
-10.0.255.5/32 IP TE 70 rt3 - rt5(4)
-10.0.255.4/32 IP TE 80 rt3 - rt4(4)
-10.0.255.6/32 IP TE 80 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt1 TE-IS 50 rt1 - rt2(4)
+ rt3 TE-IS 50 rt3 - rt2(4)
+ rt2
+ rt5 TE-IS 60 rt3 - rt3(4)
+ 10.0.255.1/32 IP TE 60 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 60 rt3 - rt3(4)
+ rt4 TE-IS 70 rt3 - rt5(4)
+ rt6 TE-IS 70 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 70 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 80 rt3 - rt4(4)
+ 10.0.255.6/32 IP TE 80 rt3 - rt6(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt4 TE-IS 10 rt4 - rt2(4)
-rt5 TE-IS 20 rt4 - rt4(4)
-rt6 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-rt3 TE-IS 30 rt4 - rt5(4)
-10.0.255.5/32 IP TE 30 rt4 - rt5(4)
-10.0.255.6/32 IP TE 30 rt4 - rt6(4)
-rt2
-rt1 TE-IS 40 rt4 - rt2(2)
-10.0.255.3/32 IP TE 40 rt4 - rt3(4)
-10.0.255.1/32 IP TE 50 rt4 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt4 TE-IS 10 rt4 - rt2(4)
+ rt5 TE-IS 20 rt4 - rt4(4)
+ rt6 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ rt3 TE-IS 30 rt4 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt4 - rt5(4)
+ 10.0.255.6/32 IP TE 30 rt4 - rt6(4)
+ rt2
+ rt1 TE-IS 40 rt4 - rt2(2)
+ 10.0.255.3/32 IP TE 40 rt4 - rt3(4)
+ 10.0.255.1/32 IP TE 50 rt4 - rt1(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -2893,36 +3043,40 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-2001:db8::2/128 IP6 internal 0 rt2(4)
-rt1 TE-IS 50 rt1 - rt2(4)
-rt3 TE-IS 50 rt3 - rt2(4)
-rt2
-rt5 TE-IS 60 rt3 - rt3(4)
-2001:db8::1/128 IP6 internal 60 rt1 - rt1(4)
-2001:db8::3/128 IP6 internal 60 rt3 - rt3(4)
-rt4 TE-IS 70 rt3 - rt5(4)
-rt6 TE-IS 70 rt3 - rt5(4)
-2001:db8::5/128 IP6 internal 70 rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 80 rt3 - rt4(4)
-2001:db8::6/128 IP6 internal 80 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt2
+ 2001:db8::2/128 IP6 internal 0 rt2(4)
+ rt1 TE-IS 50 rt1 - rt2(4)
+ rt3 TE-IS 50 rt3 - rt2(4)
+ rt2
+ rt5 TE-IS 60 rt3 - rt3(4)
+ 2001:db8::1/128 IP6 internal 60 rt1 - rt1(4)
+ 2001:db8::3/128 IP6 internal 60 rt3 - rt3(4)
+ rt4 TE-IS 70 rt3 - rt5(4)
+ rt6 TE-IS 70 rt3 - rt5(4)
+ 2001:db8::5/128 IP6 internal 70 rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 80 rt3 - rt4(4)
+ 2001:db8::6/128 IP6 internal 80 rt3 - rt6(4)
+
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-2001:db8::2/128 IP6 internal 0 rt2(4)
-rt4 TE-IS 10 rt4 - rt2(4)
-rt5 TE-IS 20 rt4 - rt4(4)
-rt6 TE-IS 20 rt4 - rt4(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-rt3 TE-IS 30 rt4 - rt5(4)
-2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
-2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
-rt2
-rt1 TE-IS 40 rt4 - rt2(2)
-2001:db8::3/128 IP6 internal 40 rt4 - rt3(4)
-2001:db8::1/128 IP6 internal 50 rt4 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt2
+ 2001:db8::2/128 IP6 internal 0 rt2(4)
+ rt4 TE-IS 10 rt4 - rt2(4)
+ rt5 TE-IS 20 rt4 - rt4(4)
+ rt6 TE-IS 20 rt4 - rt4(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ rt3 TE-IS 30 rt4 - rt5(4)
+ 2001:db8::5/128 IP6 internal 30 rt4 - rt5(4)
+ 2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
+ rt2
+ rt1 TE-IS 40 rt4 - rt2(2)
+ 2001:db8::3/128 IP6 internal 40 rt4 - rt3(4)
+ 2001:db8::1/128 IP6 internal 50 rt4 - rt1(4)
+
Main:
IS-IS L1 IPv6 routing table:
@@ -2966,42 +3120,46 @@ Q-space: rt7
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt3 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-rt5 TE-IS 40 rt2 - rt3(4)
-rt6 TE-IS 40 rt2 - rt3(4)
-10.0.255.3/32 IP TE 40 rt2 - rt3(4)
-rt7 TE-IS 50 rt2 - rt5(4)
- rt6(4)
-10.0.255.5/32 IP TE 50 rt2 - rt5(4)
-10.0.255.6/32 IP TE 50 rt2 - rt6(4)
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt3 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt5 TE-IS 40 rt2 - rt3(4)
+ rt6 TE-IS 40 rt2 - rt3(4)
+ 10.0.255.3/32 IP TE 40 rt2 - rt3(4)
+ rt7 TE-IS 50 rt2 - rt5(4)
+ rt6(4)
+ 10.0.255.5/32 IP TE 50 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 50 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
- rt3 - rt3(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-rt6 TE-IS 20 rt3 - rt3(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
- rt6(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
- rt3 -
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ rt3 - rt3(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ rt6(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt3 - rt4(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+
Main:
IS-IS L1 IPv4 routing table:
@@ -3044,19 +3202,21 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt5(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt4 TE-IS 40 rt3 - rt6(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
-rt2 TE-IS 50 rt3 - rt4(4)
-10.0.255.4/32 IP TE 50 rt3 - rt4(4)
-10.0.255.2/32 IP TE 60 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt4 TE-IS 40 rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ rt2 TE-IS 50 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 50 rt3 - rt4(4)
+ 10.0.255.2/32 IP TE 60 rt3 - rt2(4)
+
IS-IS L1 IPv4 routing table:
@@ -3080,19 +3240,21 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt6 TE-IS 30 rt3 - rt5(4)
-2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
-rt4 TE-IS 40 rt3 - rt6(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
-rt2 TE-IS 50 rt3 - rt4(4)
-2001:db8::4/128 IP6 internal 50 rt3 - rt4(4)
-2001:db8::2/128 IP6 internal 60 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt6 TE-IS 30 rt3 - rt5(4)
+ 2001:db8::5/128 IP6 internal 30 rt3 - rt5(4)
+ rt4 TE-IS 40 rt3 - rt6(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ rt2 TE-IS 50 rt3 - rt4(4)
+ 2001:db8::4/128 IP6 internal 50 rt3 - rt4(4)
+ 2001:db8::2/128 IP6 internal 60 rt3 - rt2(4)
+
IS-IS L1 IPv6 routing table:
@@ -3127,22 +3289,24 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 10 rt5 - rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-rt1
-rt6 TE-IS 20 rt4 - rt4(4)
- rt5 - rt5(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.2/32 IP TE 25 rt2 - rt2(4)
-10.0.255.6/32 IP TE 30 rt4 - rt6(4)
- rt5 -
-rt3 TE-IS 50 rt5 - rt5(4)
-10.0.255.3/32 IP TE 60 rt5 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 10 rt5 - rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ rt1
+ rt6 TE-IS 20 rt4 - rt4(4)
+ rt5 - rt5(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.2/32 IP TE 25 rt2 - rt2(4)
+ 10.0.255.6/32 IP TE 30 rt4 - rt6(4)
+ rt5 - rt6(4)
+ rt3 TE-IS 50 rt5 - rt5(4)
+ 10.0.255.3/32 IP TE 60 rt5 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -3175,22 +3339,24 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt4 TE-IS 10 rt4 - rt1(4)
-rt5 TE-IS 10 rt5 - rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-rt1
-rt6 TE-IS 20 rt4 - rt4(4)
- rt5 - rt5(4)
-2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
-2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
- rt5 -
-rt3 TE-IS 50 rt5 - rt5(4)
-2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt4 TE-IS 10 rt4 - rt1(4)
+ rt5 TE-IS 10 rt5 - rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ rt1
+ rt6 TE-IS 20 rt4 - rt4(4)
+ rt5 - rt5(4)
+ 2001:db8::4/128 IP6 internal 20 rt4 - rt4(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
+ 2001:db8::6/128 IP6 internal 30 rt4 - rt6(4)
+ rt5 - rt6(4)
+ rt3 TE-IS 50 rt5 - rt5(4)
+ 2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
+
IS-IS L1 IPv6 routing table:
@@ -3217,20 +3383,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-10.0.255.2/32 IP TE 25 rt2 - rt2(4)
-rt3 TE-IS 30 rt3 - rt1(4)
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
-rt4 TE-IS 55 rt2 - rt2(4)
-rt1
-rt6 TE-IS 65 rt2 - rt4(4)
-rt5 TE-IS 65 rt2 - rt1(2)
-10.0.255.4/32 IP TE 65 rt2 - rt4(4)
-10.0.255.6/32 IP TE 75 rt2 - rt6(4)
-10.0.255.5/32 IP TE 75 rt2 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ 10.0.255.2/32 IP TE 25 rt2 - rt2(4)
+ rt3 TE-IS 30 rt3 - rt1(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ rt4 TE-IS 55 rt2 - rt2(4)
+ rt1
+ rt6 TE-IS 65 rt2 - rt4(4)
+ rt5 TE-IS 65 rt2 - rt1(2)
+ 10.0.255.4/32 IP TE 65 rt2 - rt4(4)
+ 10.0.255.6/32 IP TE 75 rt2 - rt6(4)
+ 10.0.255.5/32 IP TE 75 rt2 - rt5(4)
+
IS-IS L1 IPv4 routing table:
@@ -3258,20 +3426,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 15 rt2 - rt1(4)
-2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
-rt3 TE-IS 30 rt3 - rt1(4)
-2001:db8::3/128 IP6 internal 40 rt3 - rt3(4)
-rt4 TE-IS 55 rt2 - rt2(4)
-rt1
-rt6 TE-IS 65 rt2 - rt4(4)
-rt5 TE-IS 65 rt2 - rt1(2)
-2001:db8::4/128 IP6 internal 65 rt2 - rt4(4)
-2001:db8::6/128 IP6 internal 75 rt2 - rt6(4)
-2001:db8::5/128 IP6 internal 75 rt2 - rt5(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 15 rt2 - rt1(4)
+ 2001:db8::2/128 IP6 internal 25 rt2 - rt2(4)
+ rt3 TE-IS 30 rt3 - rt1(4)
+ 2001:db8::3/128 IP6 internal 40 rt3 - rt3(4)
+ rt4 TE-IS 55 rt2 - rt2(4)
+ rt1
+ rt6 TE-IS 65 rt2 - rt4(4)
+ rt5 TE-IS 65 rt2 - rt1(2)
+ 2001:db8::4/128 IP6 internal 65 rt2 - rt4(4)
+ 2001:db8::6/128 IP6 internal 75 rt2 - rt6(4)
+ 2001:db8::5/128 IP6 internal 75 rt2 - rt5(4)
+
IS-IS L1 IPv6 routing table:
@@ -3303,20 +3473,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt1 pseudo_TE-IS 30 rt6 - rt4(4)
-rt1 TE-IS 30 rt6 - rt1(2)
-10.0.255.4/32 IP TE 30 rt6 - rt4(4)
-rt3 TE-IS 40 rt3 - rt5(4)
-10.0.255.1/32 IP TE 40 rt6 - rt1(4)
-rt2 TE-IS 45 rt6 - rt1(4)
-10.0.255.3/32 IP TE 50 rt3 - rt3(4)
-10.0.255.2/32 IP TE 55 rt6 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ ------------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt1 pseudo_TE-IS 30 rt6 - rt4(4)
+ rt1 TE-IS 30 rt6 - rt1(2)
+ 10.0.255.4/32 IP TE 30 rt6 - rt4(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.1/32 IP TE 40 rt6 - rt1(4)
+ rt2 TE-IS 45 rt6 - rt1(4)
+ 10.0.255.3/32 IP TE 50 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 55 rt6 - rt2(4)
+
IS-IS L1 IPv4 routing table:
@@ -3347,20 +3519,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-2001:db8::5/128 IP6 internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-rt1 pseudo_TE-IS 30 rt6 - rt4(4)
-rt1 TE-IS 30 rt6 - rt1(2)
-2001:db8::4/128 IP6 internal 30 rt6 - rt4(4)
-rt3 TE-IS 40 rt3 - rt5(4)
-2001:db8::1/128 IP6 internal 40 rt6 - rt1(4)
-rt2 TE-IS 45 rt6 - rt1(4)
-2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
-2001:db8::2/128 IP6 internal 55 rt6 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt5
+ 2001:db8::5/128 IP6 internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ rt1 pseudo_TE-IS 30 rt6 - rt4(4)
+ rt1 TE-IS 30 rt6 - rt1(2)
+ 2001:db8::4/128 IP6 internal 30 rt6 - rt4(4)
+ rt3 TE-IS 40 rt3 - rt5(4)
+ 2001:db8::1/128 IP6 internal 40 rt6 - rt1(4)
+ rt2 TE-IS 45 rt6 - rt1(4)
+ 2001:db8::3/128 IP6 internal 50 rt3 - rt3(4)
+ 2001:db8::2/128 IP6 internal 55 rt6 - rt2(4)
+
IS-IS L1 IPv6 routing table:
@@ -3396,21 +3570,23 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt4 TE-IS 20 rt6 - rt6(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt3 - rt5(4)
-rt2 TE-IS 30 rt6 - rt4(4)
-10.0.255.4/32 IP TE 30 rt6 - rt4(4)
-rt1 TE-IS 40 rt3 - rt3(4)
- rt6 - rt2(4)
-10.0.255.3/32 IP TE 40 rt3 - rt3(4)
-10.0.255.2/32 IP TE 40 rt6 - rt2(4)
-10.0.255.1/32 IP TE 50 rt3 - rt1(4)
- rt6 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt4 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt3 - rt5(4)
+ rt2 TE-IS 30 rt6 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt6 - rt4(4)
+ rt1 TE-IS 40 rt3 - rt3(4)
+ rt6 - rt2(4)
+ 10.0.255.3/32 IP TE 40 rt3 - rt3(4)
+ 10.0.255.2/32 IP TE 40 rt6 - rt2(4)
+ 10.0.255.1/32 IP TE 50 rt3 - rt1(4)
+ rt6 - rt1(4)
+
IS-IS L1 IPv4 routing table:
@@ -3450,19 +3626,21 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt5
-10.0.255.5/32 IP internal 0 rt5(4)
-rt4 TE-IS 10 rt4 - rt5(4)
-rt6 TE-IS 10 rt6 - rt5(4)
-rt2 TE-IS 20 rt4 - rt4(4)
-10.0.255.4/32 IP TE 20 rt4 - rt4(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt1 TE-IS 30 rt4 - rt2(4)
-rt3 TE-IS 30 rt4 - rt2(4)
-10.0.255.2/32 IP TE 30 rt4 - rt2(4)
-10.0.255.1/32 IP TE 40 rt4 - rt1(4)
-10.0.255.3/32 IP TE 40 rt4 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt5
+ 10.0.255.5/32 IP internal 0 rt5(4)
+ rt4 TE-IS 10 rt4 - rt5(4)
+ rt6 TE-IS 10 rt6 - rt5(4)
+ rt2 TE-IS 20 rt4 - rt4(4)
+ 10.0.255.4/32 IP TE 20 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt1 TE-IS 30 rt4 - rt2(4)
+ rt3 TE-IS 30 rt4 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt4 - rt2(4)
+ 10.0.255.1/32 IP TE 40 rt4 - rt1(4)
+ 10.0.255.3/32 IP TE 40 rt4 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -3484,23 +3662,25 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-rt6 TE-IS 70 rt3 - rt5(4)
-rt4 TE-IS 80 rt3 - rt6(4)
-rt8 TE-IS 80 rt3 - rt6(4)
-10.0.255.6/32 IP TE 80 rt3 - rt6(4)
-rt2 TE-IS 90 rt3 - rt4(4)
-10.0.255.4/32 IP TE 90 rt3 - rt4(4)
-10.0.255.8/32 IP TE 90 rt3 - rt8(4)
-10.0.255.2/32 IP TE 100 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ rt6 TE-IS 70 rt3 - rt5(4)
+ rt4 TE-IS 80 rt3 - rt6(4)
+ rt8 TE-IS 80 rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 80 rt3 - rt6(4)
+ rt2 TE-IS 90 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 90 rt3 - rt4(4)
+ 10.0.255.8/32 IP TE 90 rt3 - rt8(4)
+ 10.0.255.2/32 IP TE 100 rt3 - rt2(4)
+
IS-IS L1 IPv4 routing table:
@@ -3531,23 +3711,25 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt2 TE-IS 10 rt2 - rt4(4)
-rt1 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt3 TE-IS 30 rt2 - rt1(4)
-10.0.255.1/32 IP TE 30 rt2 - rt1(4)
-rt5 TE-IS 40 rt2 - rt3(4)
-10.0.255.3/32 IP TE 40 rt2 - rt3(4)
-rt7 TE-IS 50 rt2 - rt5(4)
-10.0.255.5/32 IP TE 50 rt2 - rt5(4)
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
-rt6 TE-IS 90 rt2 - rt5(4)
-rt8 TE-IS 100 rt2 - rt6(4)
-10.0.255.6/32 IP TE 100 rt2 - rt6(4)
-10.0.255.8/32 IP TE 110 rt2 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt1 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt3 TE-IS 30 rt2 - rt1(4)
+ 10.0.255.1/32 IP TE 30 rt2 - rt1(4)
+ rt5 TE-IS 40 rt2 - rt3(4)
+ 10.0.255.3/32 IP TE 40 rt2 - rt3(4)
+ rt7 TE-IS 50 rt2 - rt5(4)
+ 10.0.255.5/32 IP TE 50 rt2 - rt5(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ rt6 TE-IS 90 rt2 - rt5(4)
+ rt8 TE-IS 100 rt2 - rt6(4)
+ 10.0.255.6/32 IP TE 100 rt2 - rt6(4)
+ 10.0.255.8/32 IP TE 110 rt2 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -3575,23 +3757,25 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-rt5 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt3 - rt5(4)
-10.0.255.5/32 IP TE 30 rt3 - rt5(4)
-rt8 TE-IS 40 rt3 - rt7(4)
-10.0.255.7/32 IP TE 40 rt3 - rt7(4)
-rt6 TE-IS 50 rt3 - rt8(4)
-10.0.255.8/32 IP TE 50 rt3 - rt8(4)
-rt4 TE-IS 60 rt3 - rt6(4)
-10.0.255.6/32 IP TE 60 rt3 - rt6(4)
-rt2 TE-IS 70 rt3 - rt4(4)
-10.0.255.4/32 IP TE 70 rt3 - rt4(4)
-10.0.255.2/32 IP TE 80 rt3 - rt2(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ rt5 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 30 rt3 - rt5(4)
+ rt8 TE-IS 40 rt3 - rt7(4)
+ 10.0.255.7/32 IP TE 40 rt3 - rt7(4)
+ rt6 TE-IS 50 rt3 - rt8(4)
+ 10.0.255.8/32 IP TE 50 rt3 - rt8(4)
+ rt4 TE-IS 60 rt3 - rt6(4)
+ 10.0.255.6/32 IP TE 60 rt3 - rt6(4)
+ rt2 TE-IS 70 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 70 rt3 - rt4(4)
+ 10.0.255.2/32 IP TE 80 rt3 - rt2(4)
+
IS-IS L1 IPv4 routing table:
@@ -3624,24 +3808,26 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt4
-10.0.255.4/32 IP internal 0 rt4(4)
-rt2 TE-IS 10 rt2 - rt4(4)
-rt6 TE-IS 10 rt6 - rt4(4)
-rt1 TE-IS 20 rt2 - rt2(4)
-rt5 TE-IS 20 rt6 - rt6(4)
-rt8 TE-IS 20 rt6 - rt6(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-rt3 TE-IS 30 rt2 - rt1(4)
-rt7 TE-IS 30 rt6 - rt5(4)
- rt8(4)
-10.0.255.1/32 IP TE 30 rt2 - rt1(4)
-10.0.255.5/32 IP TE 30 rt6 - rt5(4)
-10.0.255.8/32 IP TE 30 rt6 - rt8(4)
-10.0.255.3/32 IP TE 40 rt2 - rt3(4)
-10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt4
+ 10.0.255.4/32 IP internal 0 rt4(4)
+ rt2 TE-IS 10 rt2 - rt4(4)
+ rt6 TE-IS 10 rt6 - rt4(4)
+ rt1 TE-IS 20 rt2 - rt2(4)
+ rt5 TE-IS 20 rt6 - rt6(4)
+ rt8 TE-IS 20 rt6 - rt6(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ rt3 TE-IS 30 rt2 - rt1(4)
+ rt7 TE-IS 30 rt6 - rt5(4)
+ rt8(4)
+ 10.0.255.1/32 IP TE 30 rt2 - rt1(4)
+ 10.0.255.5/32 IP TE 30 rt6 - rt5(4)
+ 10.0.255.8/32 IP TE 30 rt6 - rt8(4)
+ 10.0.255.3/32 IP TE 40 rt2 - rt3(4)
+ 10.0.255.7/32 IP TE 40 rt6 - rt7(4)
+
IS-IS L1 IPv4 routing table:
@@ -3676,33 +3862,35 @@ Q-space: rt9
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt11
-10.0.255.11/32 IP internal 0 rt11(4)
-rt10 TE-IS 10 rt10 - rt11(4)
-rt12 TE-IS 10 rt12 - rt11(4)
-rt9 TE-IS 20 rt12 - rt12(4)
-10.0.255.10/32 IP TE 20 rt10 - rt10(4)
-10.0.255.12/32 IP TE 20 rt12 - rt12(4)
-rt7 TE-IS 30 rt10 - rt10(4)
-rt8 TE-IS 30 rt12 - rt9(4)
-10.0.255.9/32 IP TE 30 rt12 - rt9(4)
-rt4 TE-IS 40 rt10 - rt7(4)
-rt5 TE-IS 40 rt12 - rt8(4)
-10.0.255.7/32 IP TE 40 rt10 - rt7(4)
-10.0.255.8/32 IP TE 40 rt12 - rt8(4)
-rt6 TE-IS 50 rt12 - rt9(4)
- rt5(4)
-rt1 TE-IS 50 rt10 - rt4(4)
-rt2 TE-IS 50 rt12 - rt5(4)
-10.0.255.4/32 IP TE 50 rt10 - rt4(4)
-10.0.255.5/32 IP TE 50 rt12 - rt5(4)
-rt3 TE-IS 60 rt12 - rt6(4)
- rt2(4)
-10.0.255.6/32 IP TE 60 rt12 - rt6(4)
-10.0.255.1/32 IP TE 60 rt10 - rt1(4)
-10.0.255.2/32 IP TE 60 rt12 - rt2(4)
-10.0.255.3/32 IP TE 70 rt12 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt11
+ 10.0.255.11/32 IP internal 0 rt11(4)
+ rt10 TE-IS 10 rt10 - rt11(4)
+ rt12 TE-IS 10 rt12 - rt11(4)
+ rt9 TE-IS 20 rt12 - rt12(4)
+ 10.0.255.10/32 IP TE 20 rt10 - rt10(4)
+ 10.0.255.12/32 IP TE 20 rt12 - rt12(4)
+ rt7 TE-IS 30 rt10 - rt10(4)
+ rt8 TE-IS 30 rt12 - rt9(4)
+ 10.0.255.9/32 IP TE 30 rt12 - rt9(4)
+ rt4 TE-IS 40 rt10 - rt7(4)
+ rt5 TE-IS 40 rt12 - rt8(4)
+ 10.0.255.7/32 IP TE 40 rt10 - rt7(4)
+ 10.0.255.8/32 IP TE 40 rt12 - rt8(4)
+ rt6 TE-IS 50 rt12 - rt9(4)
+ rt5(4)
+ rt1 TE-IS 50 rt10 - rt4(4)
+ rt2 TE-IS 50 rt12 - rt5(4)
+ 10.0.255.4/32 IP TE 50 rt10 - rt4(4)
+ 10.0.255.5/32 IP TE 50 rt12 - rt5(4)
+ rt3 TE-IS 60 rt12 - rt6(4)
+ rt2(4)
+ 10.0.255.6/32 IP TE 60 rt12 - rt6(4)
+ 10.0.255.1/32 IP TE 60 rt10 - rt1(4)
+ 10.0.255.2/32 IP TE 60 rt12 - rt2(4)
+ 10.0.255.3/32 IP TE 70 rt12 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -3750,39 +3938,41 @@ Q-space: rt12
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt6
-10.0.255.6/32 IP internal 0 rt6(4)
-rt3 TE-IS 10 rt3 - rt6(4)
-rt2 TE-IS 20 rt3 - rt3(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt9 TE-IS 30 rt9 - rt6(4)
-rt5 TE-IS 30 rt3 - rt2(4)
-10.0.255.2/32 IP TE 30 rt3 - rt2(4)
-rt8 TE-IS 40 rt9 - rt9(4)
- rt3 - rt5(4)
-rt12 TE-IS 40 rt9 - rt9(4)
-rt4 TE-IS 40 rt3 - rt5(4)
-10.0.255.9/32 IP TE 40 rt9 - rt9(4)
-10.0.255.5/32 IP TE 40 rt3 - rt5(4)
-rt7 TE-IS 50 rt9 - rt8(4)
- rt3 - rt4(4)
-rt11 TE-IS 50 rt9 - rt8(4)
- rt3 - rt12(4)
-rt1 TE-IS 50 rt3 - rt4(4)
-10.0.255.8/32 IP TE 50 rt9 - rt8(4)
- rt3 -
-10.0.255.12/32 IP TE 50 rt9 - rt12(4)
-10.0.255.4/32 IP TE 50 rt3 - rt4(4)
-rt10 TE-IS 60 rt9 - rt11(4)
- rt3 -
-10.0.255.7/32 IP TE 60 rt9 - rt7(4)
- rt3 -
-10.0.255.11/32 IP TE 60 rt9 - rt11(4)
- rt3 -
-10.0.255.1/32 IP TE 60 rt3 - rt1(4)
-10.0.255.10/32 IP TE 70 rt9 - rt10(4)
- rt3 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt6
+ 10.0.255.6/32 IP internal 0 rt6(4)
+ rt3 TE-IS 10 rt3 - rt6(4)
+ rt2 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt9 TE-IS 30 rt9 - rt6(4)
+ rt5 TE-IS 30 rt3 - rt2(4)
+ 10.0.255.2/32 IP TE 30 rt3 - rt2(4)
+ rt8 TE-IS 40 rt9 - rt9(4)
+ rt3 - rt5(4)
+ rt12 TE-IS 40 rt9 - rt9(4)
+ rt4 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.9/32 IP TE 40 rt9 - rt9(4)
+ 10.0.255.5/32 IP TE 40 rt3 - rt5(4)
+ rt7 TE-IS 50 rt9 - rt8(4)
+ rt3 - rt4(4)
+ rt11 TE-IS 50 rt9 - rt8(4)
+ rt3 - rt12(4)
+ rt1 TE-IS 50 rt3 - rt4(4)
+ 10.0.255.8/32 IP TE 50 rt9 - rt8(4)
+ rt3 - rt8(4)
+ 10.0.255.12/32 IP TE 50 rt9 - rt12(4)
+ 10.0.255.4/32 IP TE 50 rt3 - rt4(4)
+ rt10 TE-IS 60 rt9 - rt11(4)
+ rt3 - rt11(4)
+ 10.0.255.7/32 IP TE 60 rt9 - rt7(4)
+ rt3 - rt7(4)
+ 10.0.255.11/32 IP TE 60 rt9 - rt11(4)
+ rt3 - rt11(4)
+ 10.0.255.1/32 IP TE 60 rt3 - rt1(4)
+ 10.0.255.10/32 IP TE 70 rt9 - rt10(4)
+ rt3 - rt10(4)
+
IS-IS L1 IPv4 routing table:
@@ -3829,34 +4019,36 @@ Q-space: rt10
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt3 TE-IS 10 rt3 - rt2(4)
-rt5 TE-IS 10 rt5 - rt2(4)
-rt6 TE-IS 20 rt3 - rt3(4)
- rt5 - rt5(4)
-rt8 TE-IS 20 rt5 - rt5(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-rt9 TE-IS 30 rt5 - rt8(4)
-rt11 TE-IS 30 rt5 - rt8(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
- rt5 -
-10.0.255.8/32 IP TE 30 rt5 - rt8(4)
-rt12 TE-IS 40 rt5 - rt9(4)
- rt11(4)
-10.0.255.9/32 IP TE 40 rt5 - rt9(4)
-10.0.255.11/32 IP TE 40 rt5 - rt11(4)
-10.0.255.12/32 IP TE 50 rt5 - rt12(4)
-rt10 TE-IS 60 rt5 - rt11(4)
-rt7 TE-IS 70 rt5 - rt10(4)
-10.0.255.10/32 IP TE 70 rt5 - rt10(4)
-rt4 TE-IS 80 rt5 - rt7(4)
-10.0.255.7/32 IP TE 80 rt5 - rt7(4)
-rt1 TE-IS 90 rt5 - rt4(4)
-10.0.255.4/32 IP TE 90 rt5 - rt4(4)
-10.0.255.1/32 IP TE 100 rt5 - rt1(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt3 TE-IS 10 rt3 - rt2(4)
+ rt5 TE-IS 10 rt5 - rt2(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ rt5 - rt5(4)
+ rt8 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ rt9 TE-IS 30 rt5 - rt8(4)
+ rt11 TE-IS 30 rt5 - rt8(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ rt5 - rt6(4)
+ 10.0.255.8/32 IP TE 30 rt5 - rt8(4)
+ rt12 TE-IS 40 rt5 - rt9(4)
+ rt11(4)
+ 10.0.255.9/32 IP TE 40 rt5 - rt9(4)
+ 10.0.255.11/32 IP TE 40 rt5 - rt11(4)
+ 10.0.255.12/32 IP TE 50 rt5 - rt12(4)
+ rt10 TE-IS 60 rt5 - rt11(4)
+ rt7 TE-IS 70 rt5 - rt10(4)
+ 10.0.255.10/32 IP TE 70 rt5 - rt10(4)
+ rt4 TE-IS 80 rt5 - rt7(4)
+ 10.0.255.7/32 IP TE 80 rt5 - rt7(4)
+ rt1 TE-IS 90 rt5 - rt4(4)
+ 10.0.255.4/32 IP TE 90 rt5 - rt4(4)
+ 10.0.255.1/32 IP TE 100 rt5 - rt1(4)
+
IS-IS L1 IPv4 routing table:
@@ -3894,32 +4086,34 @@ Q-space: rt12
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt1 TE-IS 10 rt1 - rt2(4)
-rt3 TE-IS 10 rt3 - rt2(4)
-rt4 TE-IS 20 rt1 - rt1(4)
-rt6 TE-IS 20 rt3 - rt3(4)
-10.0.255.1/32 IP TE 20 rt1 - rt1(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt7 TE-IS 30 rt1 - rt4(4)
-rt5 TE-IS 30 rt3 - rt6(4)
-10.0.255.4/32 IP TE 30 rt1 - rt4(4)
-10.0.255.6/32 IP TE 30 rt3 - rt6(4)
-rt10 TE-IS 40 rt1 - rt7(4)
-rt8 TE-IS 40 rt3 - rt5(4)
-10.0.255.7/32 IP TE 40 rt1 - rt7(4)
-10.0.255.5/32 IP TE 40 rt3 - rt5(4)
-rt9 TE-IS 50 rt3 - rt8(4)
-rt11 TE-IS 50 rt3 - rt8(4)
-10.0.255.10/32 IP TE 50 rt1 - rt10(4)
-10.0.255.8/32 IP TE 50 rt3 - rt8(4)
-rt12 TE-IS 60 rt3 - rt9(4)
- rt11(4)
-10.0.255.9/32 IP TE 60 rt3 - rt9(4)
-10.0.255.11/32 IP TE 60 rt3 - rt11(4)
-10.0.255.12/32 IP TE 70 rt3 - rt12(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt1 TE-IS 10 rt1 - rt2(4)
+ rt3 TE-IS 10 rt3 - rt2(4)
+ rt4 TE-IS 20 rt1 - rt1(4)
+ rt6 TE-IS 20 rt3 - rt3(4)
+ 10.0.255.1/32 IP TE 20 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt7 TE-IS 30 rt1 - rt4(4)
+ rt5 TE-IS 30 rt3 - rt6(4)
+ 10.0.255.4/32 IP TE 30 rt1 - rt4(4)
+ 10.0.255.6/32 IP TE 30 rt3 - rt6(4)
+ rt10 TE-IS 40 rt1 - rt7(4)
+ rt8 TE-IS 40 rt3 - rt5(4)
+ 10.0.255.7/32 IP TE 40 rt1 - rt7(4)
+ 10.0.255.5/32 IP TE 40 rt3 - rt5(4)
+ rt9 TE-IS 50 rt3 - rt8(4)
+ rt11 TE-IS 50 rt3 - rt8(4)
+ 10.0.255.10/32 IP TE 50 rt1 - rt10(4)
+ 10.0.255.8/32 IP TE 50 rt3 - rt8(4)
+ rt12 TE-IS 60 rt3 - rt9(4)
+ rt11(4)
+ 10.0.255.9/32 IP TE 60 rt3 - rt9(4)
+ 10.0.255.11/32 IP TE 60 rt3 - rt11(4)
+ 10.0.255.12/32 IP TE 70 rt3 - rt12(4)
+
IS-IS L1 IPv4 routing table:
@@ -3954,28 +4148,30 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-rt9 TE-IS 40 rt2 - rt5(4)
-10.0.255.5/32 IP TE 40 rt2 - rt5(4)
-rt6 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt7 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt8 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-10.0.255.9/32 IP TE 50 rt2 - rt9(4)
-10.0.255.6/32 IP TE 60 rt2 - rt6(4)
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
-10.0.255.8/32 IP TE 60 rt2 - rt8(4)
-rt3 TE-IS 120 rt2 - rt4(4)
-10.0.255.3/32 IP TE 130 rt2 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt9 TE-IS 40 rt2 - rt5(4)
+ 10.0.255.5/32 IP TE 40 rt2 - rt5(4)
+ rt6 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ 10.0.255.9/32 IP TE 50 rt2 - rt9(4)
+ 10.0.255.6/32 IP TE 60 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ 10.0.255.8/32 IP TE 60 rt2 - rt8(4)
+ rt3 TE-IS 120 rt2 - rt4(4)
+ 10.0.255.3/32 IP TE 130 rt2 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -4005,28 +4201,30 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-rt5 TE-IS 30 rt2 - rt4(4)
-2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
-rt9 TE-IS 40 rt2 - rt5(4)
-2001:db8::5/128 IP6 internal 40 rt2 - rt5(4)
-rt6 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt7 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-rt8 TE-IS 50 rt2 - rt4(4)
- rt9(4)
-2001:db8::9/128 IP6 internal 50 rt2 - rt9(4)
-2001:db8::6/128 IP6 internal 60 rt2 - rt6(4)
-2001:db8::7/128 IP6 internal 60 rt2 - rt7(4)
-2001:db8::8/128 IP6 internal 60 rt2 - rt8(4)
-rt3 TE-IS 120 rt2 - rt4(4)
-2001:db8::3/128 IP6 internal 130 rt2 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ rt5 TE-IS 30 rt2 - rt4(4)
+ 2001:db8::4/128 IP6 internal 30 rt2 - rt4(4)
+ rt9 TE-IS 40 rt2 - rt5(4)
+ 2001:db8::5/128 IP6 internal 40 rt2 - rt5(4)
+ rt6 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 50 rt2 - rt4(4)
+ rt9(4)
+ 2001:db8::9/128 IP6 internal 50 rt2 - rt9(4)
+ 2001:db8::6/128 IP6 internal 60 rt2 - rt6(4)
+ 2001:db8::7/128 IP6 internal 60 rt2 - rt7(4)
+ 2001:db8::8/128 IP6 internal 60 rt2 - rt8(4)
+ rt3 TE-IS 120 rt2 - rt4(4)
+ 2001:db8::3/128 IP6 internal 130 rt2 - rt3(4)
+
IS-IS L1 IPv6 routing table:
@@ -4051,28 +4249,30 @@ Q-space: rt9
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-10.0.255.3/32 IP TE 20 rt3 - rt3(4)
-rt4 TE-IS 110 rt3 - rt3(4)
-rt2 TE-IS 120 rt3 - rt4(4)
-rt5 TE-IS 120 rt3 - rt4(4)
-10.0.255.4/32 IP TE 120 rt3 - rt4(4)
-rt9 TE-IS 130 rt3 - rt5(4)
-10.0.255.2/32 IP TE 130 rt3 - rt2(4)
-10.0.255.5/32 IP TE 130 rt3 - rt5(4)
-rt6 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-rt7 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-rt8 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-10.0.255.9/32 IP TE 140 rt3 - rt9(4)
-10.0.255.6/32 IP TE 150 rt3 - rt6(4)
-10.0.255.7/32 IP TE 150 rt3 - rt7(4)
-10.0.255.8/32 IP TE 150 rt3 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ 10.0.255.3/32 IP TE 20 rt3 - rt3(4)
+ rt4 TE-IS 110 rt3 - rt3(4)
+ rt2 TE-IS 120 rt3 - rt4(4)
+ rt5 TE-IS 120 rt3 - rt4(4)
+ 10.0.255.4/32 IP TE 120 rt3 - rt4(4)
+ rt9 TE-IS 130 rt3 - rt5(4)
+ 10.0.255.2/32 IP TE 130 rt3 - rt2(4)
+ 10.0.255.5/32 IP TE 130 rt3 - rt5(4)
+ rt6 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ 10.0.255.9/32 IP TE 140 rt3 - rt9(4)
+ 10.0.255.6/32 IP TE 150 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 150 rt3 - rt7(4)
+ 10.0.255.8/32 IP TE 150 rt3 - rt8(4)
+
IS-IS L1 IPv4 routing table:
@@ -4102,28 +4302,30 @@ Q-space: rt9
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 10 rt3 - rt1(4)
-2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
-rt4 TE-IS 110 rt3 - rt3(4)
-rt2 TE-IS 120 rt3 - rt4(4)
-rt5 TE-IS 120 rt3 - rt4(4)
-2001:db8::4/128 IP6 internal 120 rt3 - rt4(4)
-rt9 TE-IS 130 rt3 - rt5(4)
-2001:db8::2/128 IP6 internal 130 rt3 - rt2(4)
-2001:db8::5/128 IP6 internal 130 rt3 - rt5(4)
-rt6 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-rt7 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-rt8 TE-IS 140 rt3 - rt4(4)
- rt9(4)
-2001:db8::9/128 IP6 internal 140 rt3 - rt9(4)
-2001:db8::6/128 IP6 internal 150 rt3 - rt6(4)
-2001:db8::7/128 IP6 internal 150 rt3 - rt7(4)
-2001:db8::8/128 IP6 internal 150 rt3 - rt8(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 10 rt3 - rt1(4)
+ 2001:db8::3/128 IP6 internal 20 rt3 - rt3(4)
+ rt4 TE-IS 110 rt3 - rt3(4)
+ rt2 TE-IS 120 rt3 - rt4(4)
+ rt5 TE-IS 120 rt3 - rt4(4)
+ 2001:db8::4/128 IP6 internal 120 rt3 - rt4(4)
+ rt9 TE-IS 130 rt3 - rt5(4)
+ 2001:db8::2/128 IP6 internal 130 rt3 - rt2(4)
+ 2001:db8::5/128 IP6 internal 130 rt3 - rt5(4)
+ rt6 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ rt7 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ rt8 TE-IS 140 rt3 - rt4(4)
+ rt9(4)
+ 2001:db8::9/128 IP6 internal 140 rt3 - rt9(4)
+ 2001:db8::6/128 IP6 internal 150 rt3 - rt6(4)
+ 2001:db8::7/128 IP6 internal 150 rt3 - rt7(4)
+ 2001:db8::8/128 IP6 internal 150 rt3 - rt8(4)
+
IS-IS L1 IPv6 routing table:
@@ -4160,45 +4362,47 @@ Q-space: rt5
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt9
-10.0.255.9/32 IP internal 0 rt9(4)
-rt6 TE-IS 10 rt6 - rt9(4)
-rt7 TE-IS 10 rt7 - rt9(4)
-rt8 TE-IS 10 rt8 - rt9(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-10.0.255.7/32 IP TE 20 rt7 - rt7(4)
-10.0.255.8/32 IP TE 20 rt8 - rt8(4)
-rt4 TE-IS 40 rt6 - rt6(4)
- rt7 - rt7(4)
- rt8 - rt8(4)
-rt2 TE-IS 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-rt5 TE-IS 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-10.0.255.4/32 IP TE 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-rt1 TE-IS 60 rt6 - rt2(4)
- rt7 -
- rt8 -
-10.0.255.2/32 IP TE 60 rt6 - rt2(4)
- rt7 -
- rt8 -
-10.0.255.5/32 IP TE 60 rt6 - rt5(4)
- rt7 -
- rt8 -
-rt3 TE-IS 70 rt6 - rt1(4)
- rt7 -
- rt8 -
-10.0.255.1/32 IP TE 70 rt6 - rt1(4)
- rt7 -
- rt8 -
-10.0.255.3/32 IP TE 80 rt6 - rt3(4)
- rt7 -
- rt8 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt9
+ 10.0.255.9/32 IP internal 0 rt9(4)
+ rt6 TE-IS 10 rt6 - rt9(4)
+ rt7 TE-IS 10 rt7 - rt9(4)
+ rt8 TE-IS 10 rt8 - rt9(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ 10.0.255.7/32 IP TE 20 rt7 - rt7(4)
+ 10.0.255.8/32 IP TE 20 rt8 - rt8(4)
+ rt4 TE-IS 40 rt6 - rt6(4)
+ rt7 - rt7(4)
+ rt8 - rt8(4)
+ rt2 TE-IS 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ rt5 TE-IS 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ 10.0.255.4/32 IP TE 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ rt1 TE-IS 60 rt6 - rt2(4)
+ rt7 - rt2(4)
+ rt8 - rt2(4)
+ 10.0.255.2/32 IP TE 60 rt6 - rt2(4)
+ rt7 - rt2(4)
+ rt8 - rt2(4)
+ 10.0.255.5/32 IP TE 60 rt6 - rt5(4)
+ rt7 - rt5(4)
+ rt8 - rt5(4)
+ rt3 TE-IS 70 rt6 - rt1(4)
+ rt7 - rt1(4)
+ rt8 - rt1(4)
+ 10.0.255.1/32 IP TE 70 rt6 - rt1(4)
+ rt7 - rt1(4)
+ rt8 - rt1(4)
+ 10.0.255.3/32 IP TE 80 rt6 - rt3(4)
+ rt7 - rt3(4)
+ rt8 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -4242,45 +4446,47 @@ Q-space: rt5
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt9
-2001:db8::9/128 IP6 internal 0 rt9(4)
-rt6 TE-IS 10 rt6 - rt9(4)
-rt7 TE-IS 10 rt7 - rt9(4)
-rt8 TE-IS 10 rt8 - rt9(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-2001:db8::7/128 IP6 internal 20 rt7 - rt7(4)
-2001:db8::8/128 IP6 internal 20 rt8 - rt8(4)
-rt4 TE-IS 40 rt6 - rt6(4)
- rt7 - rt7(4)
- rt8 - rt8(4)
-rt2 TE-IS 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-rt5 TE-IS 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-2001:db8::4/128 IP6 internal 50 rt6 - rt4(4)
- rt7 -
- rt8 -
-rt1 TE-IS 60 rt6 - rt2(4)
- rt7 -
- rt8 -
-2001:db8::2/128 IP6 internal 60 rt6 - rt2(4)
- rt7 -
- rt8 -
-2001:db8::5/128 IP6 internal 60 rt6 - rt5(4)
- rt7 -
- rt8 -
-rt3 TE-IS 70 rt6 - rt1(4)
- rt7 -
- rt8 -
-2001:db8::1/128 IP6 internal 70 rt6 - rt1(4)
- rt7 -
- rt8 -
-2001:db8::3/128 IP6 internal 80 rt6 - rt3(4)
- rt7 -
- rt8 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt9
+ 2001:db8::9/128 IP6 internal 0 rt9(4)
+ rt6 TE-IS 10 rt6 - rt9(4)
+ rt7 TE-IS 10 rt7 - rt9(4)
+ rt8 TE-IS 10 rt8 - rt9(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ 2001:db8::7/128 IP6 internal 20 rt7 - rt7(4)
+ 2001:db8::8/128 IP6 internal 20 rt8 - rt8(4)
+ rt4 TE-IS 40 rt6 - rt6(4)
+ rt7 - rt7(4)
+ rt8 - rt8(4)
+ rt2 TE-IS 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ rt5 TE-IS 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ 2001:db8::4/128 IP6 internal 50 rt6 - rt4(4)
+ rt7 - rt4(4)
+ rt8 - rt4(4)
+ rt1 TE-IS 60 rt6 - rt2(4)
+ rt7 - rt2(4)
+ rt8 - rt2(4)
+ 2001:db8::2/128 IP6 internal 60 rt6 - rt2(4)
+ rt7 - rt2(4)
+ rt8 - rt2(4)
+ 2001:db8::5/128 IP6 internal 60 rt6 - rt5(4)
+ rt7 - rt5(4)
+ rt8 - rt5(4)
+ rt3 TE-IS 70 rt6 - rt1(4)
+ rt7 - rt1(4)
+ rt8 - rt1(4)
+ 2001:db8::1/128 IP6 internal 70 rt6 - rt1(4)
+ rt7 - rt1(4)
+ rt8 - rt1(4)
+ 2001:db8::3/128 IP6 internal 80 rt6 - rt3(4)
+ rt7 - rt3(4)
+ rt8 - rt3(4)
+
IS-IS L1 IPv6 routing table:
@@ -4329,25 +4535,27 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt9
-10.0.255.9/32 IP internal 0 rt9(4)
-rt5 TE-IS 10 rt5 - rt9(4)
-rt6 TE-IS 10 rt6 - rt9(4)
-rt7 TE-IS 10 rt7 - rt9(4)
-rt4 TE-IS 20 rt5 - rt5(4)
-10.0.255.5/32 IP TE 20 rt5 - rt5(4)
-10.0.255.6/32 IP TE 20 rt6 - rt6(4)
-10.0.255.7/32 IP TE 20 rt7 - rt7(4)
-rt2 TE-IS 30 rt5 - rt4(4)
-10.0.255.4/32 IP TE 30 rt5 - rt4(4)
-rt1 TE-IS 40 rt5 - rt2(4)
-10.0.255.2/32 IP TE 40 rt5 - rt2(4)
-rt8 TE-IS 50 rt5 - rt4(4)
-rt3 TE-IS 50 rt5 - rt1(4)
-10.0.255.1/32 IP TE 50 rt5 - rt1(4)
-10.0.255.8/32 IP TE 60 rt5 - rt8(4)
-10.0.255.3/32 IP TE 60 rt5 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt9
+ 10.0.255.9/32 IP internal 0 rt9(4)
+ rt5 TE-IS 10 rt5 - rt9(4)
+ rt6 TE-IS 10 rt6 - rt9(4)
+ rt7 TE-IS 10 rt7 - rt9(4)
+ rt4 TE-IS 20 rt5 - rt5(4)
+ 10.0.255.5/32 IP TE 20 rt5 - rt5(4)
+ 10.0.255.6/32 IP TE 20 rt6 - rt6(4)
+ 10.0.255.7/32 IP TE 20 rt7 - rt7(4)
+ rt2 TE-IS 30 rt5 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt5 - rt4(4)
+ rt1 TE-IS 40 rt5 - rt2(4)
+ 10.0.255.2/32 IP TE 40 rt5 - rt2(4)
+ rt8 TE-IS 50 rt5 - rt4(4)
+ rt3 TE-IS 50 rt5 - rt1(4)
+ 10.0.255.1/32 IP TE 50 rt5 - rt1(4)
+ 10.0.255.8/32 IP TE 60 rt5 - rt8(4)
+ 10.0.255.3/32 IP TE 60 rt5 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -4381,25 +4589,27 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt9
-2001:db8::9/128 IP6 internal 0 rt9(4)
-rt5 TE-IS 10 rt5 - rt9(4)
-rt6 TE-IS 10 rt6 - rt9(4)
-rt7 TE-IS 10 rt7 - rt9(4)
-rt4 TE-IS 20 rt5 - rt5(4)
-2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
-2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
-2001:db8::7/128 IP6 internal 20 rt7 - rt7(4)
-rt2 TE-IS 30 rt5 - rt4(4)
-2001:db8::4/128 IP6 internal 30 rt5 - rt4(4)
-rt1 TE-IS 40 rt5 - rt2(4)
-2001:db8::2/128 IP6 internal 40 rt5 - rt2(4)
-rt8 TE-IS 50 rt5 - rt4(4)
-rt3 TE-IS 50 rt5 - rt1(4)
-2001:db8::1/128 IP6 internal 50 rt5 - rt1(4)
-2001:db8::8/128 IP6 internal 60 rt5 - rt8(4)
-2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt9
+ 2001:db8::9/128 IP6 internal 0 rt9(4)
+ rt5 TE-IS 10 rt5 - rt9(4)
+ rt6 TE-IS 10 rt6 - rt9(4)
+ rt7 TE-IS 10 rt7 - rt9(4)
+ rt4 TE-IS 20 rt5 - rt5(4)
+ 2001:db8::5/128 IP6 internal 20 rt5 - rt5(4)
+ 2001:db8::6/128 IP6 internal 20 rt6 - rt6(4)
+ 2001:db8::7/128 IP6 internal 20 rt7 - rt7(4)
+ rt2 TE-IS 30 rt5 - rt4(4)
+ 2001:db8::4/128 IP6 internal 30 rt5 - rt4(4)
+ rt1 TE-IS 40 rt5 - rt2(4)
+ 2001:db8::2/128 IP6 internal 40 rt5 - rt2(4)
+ rt8 TE-IS 50 rt5 - rt4(4)
+ rt3 TE-IS 50 rt5 - rt1(4)
+ 2001:db8::1/128 IP6 internal 50 rt5 - rt1(4)
+ 2001:db8::8/128 IP6 internal 60 rt5 - rt8(4)
+ 2001:db8::3/128 IP6 internal 60 rt5 - rt3(4)
+
IS-IS L1 IPv6 routing table:
@@ -4428,29 +4638,31 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt4 TE-IS 20 rt4 - rt1(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt7 TE-IS 30 rt4 - rt4(4)
-10.0.255.3/32 IP TE 30 rt3 - rt3(4)
-10.0.255.4/32 IP TE 30 rt4 - rt4(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
-10.0.255.7/32 IP TE 40 rt4 - rt7(4)
-rt8 TE-IS 80 rt3 - rt6(4)
- rt4 - rt7(4)
-rt5 TE-IS 90 rt3 - rt8(4)
- rt4 -
-10.0.255.8/32 IP TE 90 rt3 - rt8(4)
- rt4 -
-rt2 TE-IS 100 rt3 - rt5(4)
- rt4 -
-10.0.255.5/32 IP TE 100 rt3 - rt5(4)
- rt4 -
-10.0.255.2/32 IP TE 110 rt3 - rt2(4)
- rt4 -
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt4 TE-IS 20 rt4 - rt1(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt7 TE-IS 30 rt4 - rt4(4)
+ 10.0.255.3/32 IP TE 30 rt3 - rt3(4)
+ 10.0.255.4/32 IP TE 30 rt4 - rt4(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ 10.0.255.7/32 IP TE 40 rt4 - rt7(4)
+ rt8 TE-IS 80 rt3 - rt6(4)
+ rt4 - rt7(4)
+ rt5 TE-IS 90 rt3 - rt8(4)
+ rt4 - rt8(4)
+ 10.0.255.8/32 IP TE 90 rt3 - rt8(4)
+ rt4 - rt8(4)
+ rt2 TE-IS 100 rt3 - rt5(4)
+ rt4 - rt5(4)
+ 10.0.255.5/32 IP TE 100 rt3 - rt5(4)
+ rt4 - rt5(4)
+ 10.0.255.2/32 IP TE 110 rt3 - rt2(4)
+ rt4 - rt2(4)
+
IS-IS L1 IPv4 routing table:
@@ -4483,29 +4695,31 @@ Q-space: rt8
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt4 TE-IS 20 rt4 - rt1(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt7 TE-IS 30 rt4 - rt4(4)
-2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
-2001:db8::4/128 IP6 internal 30 rt4 - rt4(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
-2001:db8::7/128 IP6 internal 40 rt4 - rt7(4)
-rt8 TE-IS 80 rt3 - rt6(4)
- rt4 - rt7(4)
-rt5 TE-IS 90 rt3 - rt8(4)
- rt4 -
-2001:db8::8/128 IP6 internal 90 rt3 - rt8(4)
- rt4 -
-rt2 TE-IS 100 rt3 - rt5(4)
- rt4 -
-2001:db8::5/128 IP6 internal 100 rt3 - rt5(4)
- rt4 -
-2001:db8::2/128 IP6 internal 110 rt3 - rt2(4)
- rt4 -
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt4 TE-IS 20 rt4 - rt1(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt7 TE-IS 30 rt4 - rt4(4)
+ 2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
+ 2001:db8::4/128 IP6 internal 30 rt4 - rt4(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ 2001:db8::7/128 IP6 internal 40 rt4 - rt7(4)
+ rt8 TE-IS 80 rt3 - rt6(4)
+ rt4 - rt7(4)
+ rt5 TE-IS 90 rt3 - rt8(4)
+ rt4 - rt8(4)
+ 2001:db8::8/128 IP6 internal 90 rt3 - rt8(4)
+ rt4 - rt8(4)
+ rt2 TE-IS 100 rt3 - rt5(4)
+ rt4 - rt5(4)
+ 2001:db8::5/128 IP6 internal 100 rt3 - rt5(4)
+ rt4 - rt5(4)
+ 2001:db8::2/128 IP6 internal 110 rt3 - rt2(4)
+ rt4 - rt2(4)
+
IS-IS L1 IPv6 routing table:
@@ -4540,23 +4754,25 @@ Q-space: rt7
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt5 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt8 TE-IS 30 rt2 - rt5(4)
-10.0.255.3/32 IP TE 30 rt3 - rt3(4)
-10.0.255.5/32 IP TE 30 rt2 - rt5(4)
-10.0.255.6/32 IP TE 40 rt3 - rt6(4)
-10.0.255.8/32 IP TE 40 rt2 - rt8(4)
-rt7 TE-IS 80 rt2 - rt8(4)
-rt4 TE-IS 90 rt2 - rt7(4)
-10.0.255.7/32 IP TE 90 rt2 - rt7(4)
-10.0.255.4/32 IP TE 100 rt2 - rt4(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt5 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt8 TE-IS 30 rt2 - rt5(4)
+ 10.0.255.3/32 IP TE 30 rt3 - rt3(4)
+ 10.0.255.5/32 IP TE 30 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 40 rt3 - rt6(4)
+ 10.0.255.8/32 IP TE 40 rt2 - rt8(4)
+ rt7 TE-IS 80 rt2 - rt8(4)
+ rt4 TE-IS 90 rt2 - rt7(4)
+ 10.0.255.7/32 IP TE 90 rt2 - rt7(4)
+ 10.0.255.4/32 IP TE 100 rt2 - rt4(4)
+
IS-IS L1 IPv4 routing table:
@@ -4586,23 +4802,25 @@ Q-space: rt7
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-2001:db8::1/128 IP6 internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt3 TE-IS 20 rt3 - rt1(4)
-rt5 TE-IS 20 rt2 - rt2(4)
-2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
-rt6 TE-IS 30 rt3 - rt3(4)
-rt8 TE-IS 30 rt2 - rt5(4)
-2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
-2001:db8::5/128 IP6 internal 30 rt2 - rt5(4)
-2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
-2001:db8::8/128 IP6 internal 40 rt2 - rt8(4)
-rt7 TE-IS 80 rt2 - rt8(4)
-rt4 TE-IS 90 rt2 - rt7(4)
-2001:db8::7/128 IP6 internal 90 rt2 - rt7(4)
-2001:db8::4/128 IP6 internal 100 rt2 - rt4(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt1
+ 2001:db8::1/128 IP6 internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt3 TE-IS 20 rt3 - rt1(4)
+ rt5 TE-IS 20 rt2 - rt2(4)
+ 2001:db8::2/128 IP6 internal 20 rt2 - rt2(4)
+ rt6 TE-IS 30 rt3 - rt3(4)
+ rt8 TE-IS 30 rt2 - rt5(4)
+ 2001:db8::3/128 IP6 internal 30 rt3 - rt3(4)
+ 2001:db8::5/128 IP6 internal 30 rt2 - rt5(4)
+ 2001:db8::6/128 IP6 internal 40 rt3 - rt6(4)
+ 2001:db8::8/128 IP6 internal 40 rt2 - rt8(4)
+ rt7 TE-IS 80 rt2 - rt8(4)
+ rt4 TE-IS 90 rt2 - rt7(4)
+ 2001:db8::7/128 IP6 internal 90 rt2 - rt7(4)
+ 2001:db8::4/128 IP6 internal 100 rt2 - rt4(4)
+
IS-IS L1 IPv6 routing table:
@@ -4633,20 +4851,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-10.0.255.2/32 IP internal 0 rt2(4)
-rt1 TE-IS 50 rt1 - rt2(4)
-rt3 TE-IS 50 rt3 - rt2(4)
-rt2
-rt5 TE-IS 60 rt3 - rt3(4)
-10.0.255.1/32 IP TE 60 rt1 - rt1(4)
-10.0.255.3/32 IP TE 60 rt3 - rt3(4)
-rt4 TE-IS 70 rt3 - rt5(4)
-rt6 TE-IS 70 rt3 - rt5(4)
-10.0.255.5/32 IP TE 70 rt3 - rt5(4)
-10.0.255.4/32 IP TE 80 rt3 - rt4(4)
-10.0.255.6/32 IP TE 80 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt2
+ 10.0.255.2/32 IP internal 0 rt2(4)
+ rt1 TE-IS 50 rt1 - rt2(4)
+ rt3 TE-IS 50 rt3 - rt2(4)
+ rt2
+ rt5 TE-IS 60 rt3 - rt3(4)
+ 10.0.255.1/32 IP TE 60 rt1 - rt1(4)
+ 10.0.255.3/32 IP TE 60 rt3 - rt3(4)
+ rt4 TE-IS 70 rt3 - rt5(4)
+ rt6 TE-IS 70 rt3 - rt5(4)
+ 10.0.255.5/32 IP TE 70 rt3 - rt5(4)
+ 10.0.255.4/32 IP TE 80 rt3 - rt4(4)
+ 10.0.255.6/32 IP TE 80 rt3 - rt6(4)
+
IS-IS L1 IPv4 routing table:
@@ -4679,20 +4899,22 @@ Q-space: rt6
IS-IS paths to level-1 routers that speak IPv6
-Vertex Type Metric Next-Hop Interface Parent
-rt2
-2001:db8::2/128 IP6 internal 0 rt2(4)
-rt1 TE-IS 50 rt1 - rt2(4)
-rt3 TE-IS 50 rt3 - rt2(4)
-rt2
-rt5 TE-IS 60 rt3 - rt3(4)
-2001:db8::1/128 IP6 internal 60 rt1 - rt1(4)
-2001:db8::3/128 IP6 internal 60 rt3 - rt3(4)
-rt4 TE-IS 70 rt3 - rt5(4)
-rt6 TE-IS 70 rt3 - rt5(4)
-2001:db8::5/128 IP6 internal 70 rt3 - rt5(4)
-2001:db8::4/128 IP6 internal 80 rt3 - rt4(4)
-2001:db8::6/128 IP6 internal 80 rt3 - rt6(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ --------------------------------------------------------------------
+ rt2
+ 2001:db8::2/128 IP6 internal 0 rt2(4)
+ rt1 TE-IS 50 rt1 - rt2(4)
+ rt3 TE-IS 50 rt3 - rt2(4)
+ rt2
+ rt5 TE-IS 60 rt3 - rt3(4)
+ 2001:db8::1/128 IP6 internal 60 rt1 - rt1(4)
+ 2001:db8::3/128 IP6 internal 60 rt3 - rt3(4)
+ rt4 TE-IS 70 rt3 - rt5(4)
+ rt6 TE-IS 70 rt3 - rt5(4)
+ 2001:db8::5/128 IP6 internal 70 rt3 - rt5(4)
+ 2001:db8::4/128 IP6 internal 80 rt3 - rt4(4)
+ 2001:db8::6/128 IP6 internal 80 rt3 - rt6(4)
+
IS-IS L1 IPv6 routing table:
@@ -4723,27 +4945,29 @@ Q-space: rt3
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt6 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-rt8 TE-IS 40 rt2 - rt6(4)
-10.0.255.6/32 IP TE 40 rt2 - rt6(4)
-rt10 TE-IS 50 rt2 - rt8(4)
-10.0.255.8/32 IP TE 50 rt2 - rt8(4)
-10.0.255.10/32 IP TE 60 rt2 - rt10(4)
-rt7 TE-IS 140 rt2 - rt8(4)
-rt9 TE-IS 150 rt2 - rt7(4)
-10.0.255.7/32 IP TE 150 rt2 - rt7(4)
-10.0.255.9/32 IP TE 160 rt2 - rt9(4)
-rt5 TE-IS 340 rt2 - rt7(4)
-10.0.255.5/32 IP TE 350 rt2 - rt5(4)
-rt3 TE-IS 740 rt2 - rt5(4)
-10.0.255.3/32 IP TE 750 rt2 - rt3(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -------------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt6 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt8 TE-IS 40 rt2 - rt6(4)
+ 10.0.255.6/32 IP TE 40 rt2 - rt6(4)
+ rt10 TE-IS 50 rt2 - rt8(4)
+ 10.0.255.8/32 IP TE 50 rt2 - rt8(4)
+ 10.0.255.10/32 IP TE 60 rt2 - rt10(4)
+ rt7 TE-IS 140 rt2 - rt8(4)
+ rt9 TE-IS 150 rt2 - rt7(4)
+ 10.0.255.7/32 IP TE 150 rt2 - rt7(4)
+ 10.0.255.9/32 IP TE 160 rt2 - rt9(4)
+ rt5 TE-IS 340 rt2 - rt7(4)
+ 10.0.255.5/32 IP TE 350 rt2 - rt5(4)
+ rt3 TE-IS 740 rt2 - rt5(4)
+ 10.0.255.3/32 IP TE 750 rt2 - rt3(4)
+
IS-IS L1 IPv4 routing table:
@@ -4770,22 +4994,24 @@ Q-space: rt7
IS-IS paths to level-1 routers that speak IP
-Vertex Type Metric Next-Hop Interface Parent
-rt1
-10.0.255.1/32 IP internal 0 rt1(4)
-rt2 TE-IS 10 rt2 - rt1(4)
-rt4 TE-IS 20 rt2 - rt2(4)
-10.0.255.2/32 IP TE 20 rt2 - rt2(4)
-rt3 TE-IS 30 rt2 - rt4(4)
-10.0.255.4/32 IP TE 30 rt2 - rt4(4)
-rt5 TE-IS 40 rt2 - rt3(4)
-rt6 TE-IS 40 rt2 - rt3(4)
-10.0.255.3/32 IP TE 40 rt2 - rt3(4)
-rt7 TE-IS 50 rt2 - rt5(4)
- rt6(4)
-10.0.255.5/32 IP TE 50 rt2 - rt5(4)
-10.0.255.6/32 IP TE 50 rt2 - rt6(4)
-10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+ Vertex Type Metric Next-Hop Interface Parent
+ -----------------------------------------------------------------
+ rt1
+ 10.0.255.1/32 IP internal 0 rt1(4)
+ rt2 TE-IS 10 rt2 - rt1(4)
+ rt4 TE-IS 20 rt2 - rt2(4)
+ 10.0.255.2/32 IP TE 20 rt2 - rt2(4)
+ rt3 TE-IS 30 rt2 - rt4(4)
+ 10.0.255.4/32 IP TE 30 rt2 - rt4(4)
+ rt5 TE-IS 40 rt2 - rt3(4)
+ rt6 TE-IS 40 rt2 - rt3(4)
+ 10.0.255.3/32 IP TE 40 rt2 - rt3(4)
+ rt7 TE-IS 50 rt2 - rt5(4)
+ rt6(4)
+ 10.0.255.5/32 IP TE 50 rt2 - rt5(4)
+ 10.0.255.6/32 IP TE 50 rt2 - rt6(4)
+ 10.0.255.7/32 IP TE 60 rt2 - rt7(4)
+
IS-IS L1 IPv4 routing table:
@@ -4796,5 +5022,5 @@ IS-IS L1 IPv4 routing table: 10.0.255.6/32 50 - rt2 16040/16060
10.0.255.7/32 60 - rt2 16040/16070
-test# -end. +test#
+end.
diff --git a/tests/topotests/all_protocol_startup/r1/show_ip_ospf_interface.ref b/tests/topotests/all_protocol_startup/r1/show_ip_ospf_interface.ref index f52b51d9d8..e4e3290111 100644 --- a/tests/topotests/all_protocol_startup/r1/show_ip_ospf_interface.ref +++ b/tests/topotests/all_protocol_startup/r1/show_ip_ospf_interface.ref @@ -11,6 +11,7 @@ r1-eth0 is up Hello due in XX.XXXs Neighbor Count is 0, Adjacent neighbor count is 0 Graceful Restart hello delay: 10s + LSA retransmissions: 0 r1-eth3 is up ifindex X, MTU 1500 bytes, BW XX Mbit <UP,LOWER_UP,BROADCAST,RUNNING,MULTICAST> Internet Address 192.168.3.1/26, Broadcast 192.168.3.63, Area 0.0.0.0 @@ -24,3 +25,4 @@ r1-eth3 is up Hello due in XX.XXXs Neighbor Count is 0, Adjacent neighbor count is 0 Graceful Restart hello delay: 10s + LSA retransmissions: 0 diff --git a/tests/topotests/bgp_confed1/r2/bgpd.conf b/tests/topotests/bgp_confed1/r2/bgpd.conf index fe13dfe729..ba2da4160e 100644 --- a/tests/topotests/bgp_confed1/r2/bgpd.conf +++ b/tests/topotests/bgp_confed1/r2/bgpd.conf @@ -4,7 +4,6 @@ !debug bgp updates out ! router bgp 200 - no bgp ebgp-requires-policy bgp confederation identifier 300 bgp confederation peers 300 neighbor 192.0.2.1 remote-as 100 @@ -12,7 +11,9 @@ router bgp 200 ! address-family ipv4 unicast network 203.0.113.16/28 + neighbor 192.0.2.1 route-map any in + neighbor 192.0.2.1 route-map any out neighbor 192.0.2.18 default-originate exit-address-family ! - +route-map any permit 10 diff --git a/tests/topotests/bgp_dampening_per_safi/__init__.py b/tests/topotests/bgp_dampening_per_safi/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/topotests/bgp_dampening_per_safi/__init__.py diff --git a/tests/topotests/bgp_dampening_per_safi/r1/frr.conf b/tests/topotests/bgp_dampening_per_safi/r1/frr.conf new file mode 100644 index 0000000000..b4e82f581d --- /dev/null +++ b/tests/topotests/bgp_dampening_per_safi/r1/frr.conf @@ -0,0 +1,13 @@ +! +int r1-eth0 + ip address 192.168.1.1/24 +! +router bgp 65001 + no bgp ebgp-requires-policy + neighbor 192.168.1.2 remote-as external + neighbor 192.168.1.2 timers 1 3 + neighbor 192.168.1.2 timers connect 1 + address-family ipv4 unicast + bgp dampening 1 1 1 1 + exit-address-family +! diff --git a/tests/topotests/bgp_dampening_per_safi/r2/frr.conf b/tests/topotests/bgp_dampening_per_safi/r2/frr.conf new file mode 100644 index 0000000000..d68d13d075 --- /dev/null +++ b/tests/topotests/bgp_dampening_per_safi/r2/frr.conf @@ -0,0 +1,17 @@ +! +int lo + ip address 10.10.10.10/32 +! +int r2-eth0 + ip address 192.168.1.2/24 +! +router bgp 65002 + no bgp ebgp-requires-policy + neighbor 192.168.1.1 remote-as external + neighbor 192.168.1.1 timers 1 3 + neighbor 192.168.1.1 timers connect 1 + ! + address-family ipv4 unicast + redistribute connected + exit-address-family +! diff --git a/tests/topotests/bgp_dampening_per_safi/test_bgp_dampening_per_safi.py b/tests/topotests/bgp_dampening_per_safi/test_bgp_dampening_per_safi.py new file mode 100644 index 0000000000..c8d7e675d1 --- /dev/null +++ b/tests/topotests/bgp_dampening_per_safi/test_bgp_dampening_per_safi.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python +# SPDX-License-Identifier: ISC + +# Copyright (c) 2024 by +# Donatas Abraitis <donatas@opensourcerouting.org> +# + +import os +import re +import sys +import json +import pytest +import functools + +pytestmark = [pytest.mark.bgpd] + +CWD = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(os.path.join(CWD, "../")) + +# pylint: disable=C0413 +from lib import topotest +from lib.topogen import Topogen, get_topogen + + +def setup_module(mod): + topodef = {"s1": ("r1", "r2")} + tgen = Topogen(topodef, mod.__name__) + tgen.start_topology() + + router_list = tgen.routers() + + for _, (rname, router) in enumerate(router_list.items(), 1): + router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname))) + + tgen.start_router() + + +def teardown_module(mod): + tgen = get_topogen() + tgen.stop_topology() + + +def test_bgp_dampening_per_peer(): + tgen = get_topogen() + + if tgen.routers_have_failure(): + pytest.skip(tgen.errors) + + r1 = tgen.gears["r1"] + r2 = tgen.gears["r2"] + + def _show_dampening_parameters(): + output = json.loads(r1.vtysh_cmd("show ip bgp dampening parameters json")) + expected = { + "halfLifeSecs": 60, + "reusePenalty": 1, + "suppressPenalty": 1, + "maxSuppressTimeSecs": 60, + "maxSuppressPenalty": 2, + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _show_dampening_parameters, + ) + _, result = topotest.run_and_expect(test_func, None, count=15, wait=1) + assert result is None, "Can't show BGP per-safi dampening parameters" + + def _converge(): + output = json.loads(r1.vtysh_cmd("show bgp ipv4 unicast 10.10.10.10/32 json")) + expected = { + "paths": [ + { + "valid": True, + "nexthops": [ + { + "hostname": "r2", + "accessible": True, + } + ], + } + ] + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _converge, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "Can't converge" + + #### + # Withdraw 10.10.10.10/32, and check if it's flagged as history. + #### + r2.vtysh_cmd( + """ + configure terminal + router bgp + address-family ipv4 unicast + no redistribute connected + """ + ) + + def _check_bgp_dampening_history(): + output = json.loads(r1.vtysh_cmd("show bgp ipv4 unicast 10.10.10.10/32 json")) + expected = { + "paths": [ + { + "dampeningHistoryEntry": True, + "nexthops": [ + { + "hostname": "r2", + "accessible": True, + } + ], + } + ], + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _check_bgp_dampening_history, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "10.10.10.10/32 is not flagged as history entry" + + #### + # Reannounce 10.10.10.10/32, and check if it's flagged as dampened. + #### + r2.vtysh_cmd( + """ + configure terminal + router bgp + address-family ipv4 unicast + redistribute connected + """ + ) + + def _check_bgp_dampening_dampened(): + output = json.loads(r1.vtysh_cmd("show bgp ipv4 unicast 10.10.10.10/32 json")) + expected = { + "paths": [ + { + "valid": True, + "dampeningSuppressed": True, + "nexthops": [ + { + "hostname": "r2", + "accessible": True, + } + ], + } + ], + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _check_bgp_dampening_dampened, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "10.10.10.10/32 is not flagged as dampened entry" + + #### + # Check if the route becomes non-dampened again after some time. + #### + def _check_bgp_dampening_undampened(): + output = json.loads(r1.vtysh_cmd("show bgp ipv4 unicast 10.10.10.10/32 json")) + expected = { + "paths": [ + { + "valid": True, + "dampeningHistoryEntry": None, + "dampeningSuppressed": None, + "nexthops": [ + { + "hostname": "r2", + "accessible": True, + } + ], + } + ], + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _check_bgp_dampening_undampened, + ) + _, result = topotest.run_and_expect(test_func, None, count=120, wait=10) + assert result is None, "10.10.10.10/32 is flagged as history/dampened" + + +if __name__ == "__main__": + args = ["-s"] + sys.argv[1:] + sys.exit(pytest.main(args)) diff --git a/tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-4.py b/tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-4.py index 31aaa0b8a6..de4b94032c 100644 --- a/tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-4.py +++ b/tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-4.py @@ -81,6 +81,8 @@ import os import sys import time import pytest +import functools +import json # Save the Current Working Directory to find configuration files. CWD = os.path.dirname(os.path.realpath(__file__)) @@ -91,6 +93,7 @@ sys.path.append(os.path.join("../lib/")) # Import topogen and topotest helpers from lib.topogen import Topogen, get_topogen from lib.topolog import logger +from lib import topotest # Required to instantiate the topology builder class. @@ -1680,6 +1683,304 @@ def BGP_GR_TC_52_p1(request): write_test_footer(tc_name) +def test_BGP_GR_TC_53_p1(request): + """ + Test Objective : Peer-level inherit from BGP wide Restarting + Global Mode : GR Restart + PerPeer Mode : None + GR Mode effective : GR Restart + + """ + + tgen = get_topogen() + tc_name = request.node.name + write_test_header(tc_name) + + # Check router status + check_router_status(tgen) + + # Don't run this test if we have any failure. + if tgen.routers_have_failure(): + pytest.skip(tgen.errors) + + # Creating configuration from JSON + reset_config_on_routers(tgen) + + step("Configure R1 as GR restarting node in global level") + + input_dict = { + "r1": {"graceful-restart": {"graceful-restart": True}}, + "r2": {"graceful-restart": {"graceful-restart-helper": True}}, + } + + output = tgen.gears["r1"].vtysh_cmd( + """ + configure terminal + bgp graceful-restart + ! + """ + ) + + step("Verify that R2 receives GR restarting capabilities" " from R1") + + for addr_type in ADDR_TYPES: + result = verify_graceful_restart( + tgen, topo, addr_type, input_dict, dut="r1", peer="r2" + ) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + result = verify_graceful_restart( + tgen, topo, addr_type, input_dict, dut="r2", peer="r1" + ) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + for addr_type in ADDR_TYPES: + dut = "r1" + peer = "r2" + protocol = "bgp" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_2 + ) + input_topo = {"r2": topo["routers"]["r2"]} + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + dut = "r2" + peer = "r1" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_1 + ) + input_topo = {"r1": topo["routers"]["r1"]} + result = verify_bgp_rib(tgen, addr_type, dut, input_topo, next_hop) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + step("Kill BGPd on router R1") + + kill_router_daemons(tgen, "r1", ["bgpd"]) + + step( + "Verify that R1 keeps the stale entries in FIB and R2 keeps stale entries in RIB & FIB" + ) + + for addr_type in ADDR_TYPES: + dut = "r1" + peer = "r2" + protocol = "bgp" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_2 + ) + input_topo = {"r2": topo["routers"]["r2"]} + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + dut = "r2" + peer = "r1" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_1 + ) + input_topo = {"r1": topo["routers"]["r1"]} + result = verify_bgp_rib(tgen, addr_type, dut, input_topo, next_hop) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + # Configure graceful-restart-disable at config global level verify that the functionality works + step("Bring up BGP on R1 and configure graceful-restart-disable") + + start_router_daemons(tgen, "r1", ["bgpd"]) + + input_dict = { + "r1": {"graceful-restart": {"graceful-restart-disable": True}}, + "r2": {"graceful-restart": {"graceful-restart-helper": True}}, + } + + output = tgen.gears["r1"].vtysh_cmd( + """ + configure terminal + bgp graceful-restart-disable + ! + """ + ) + + step("Verify on R2 that R1 does't advertise any GR capabilities") + + for addr_type in ADDR_TYPES: + result = verify_graceful_restart( + tgen, topo, addr_type, input_dict, dut="r1", peer="r2" + ) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + result = verify_graceful_restart( + tgen, topo, addr_type, input_dict, dut="r2", peer="r1" + ) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + for addr_type in ADDR_TYPES: + dut = "r1" + peer = "r2" + protocol = "bgp" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_2 + ) + input_topo = {"r2": topo["routers"]["r2"]} + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + dut = "r2" + peer = "r1" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_1 + ) + input_topo = {"r1": topo["routers"]["r1"]} + result = verify_bgp_rib(tgen, addr_type, dut, input_topo, next_hop) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + result = verify_rib(tgen, addr_type, dut, input_topo, next_hop, protocol) + assert result is True, "Testcase {} :Failed \n Error {}".format(tc_name, result) + + step("Kill BGP on R1") + + kill_router_daemons(tgen, "r1", ["bgpd"]) + + step("Verify on R2 and R1 that none of the routers keep stale entries") + + for addr_type in ADDR_TYPES: + dut = "r1" + peer = "r2" + protocol = "bgp" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_2 + ) + input_topo = {"r2": topo["routers"]["r2"]} + result = verify_rib( + tgen, addr_type, dut, input_topo, next_hop, protocol, expected=False + ) + assert result is not True, ( + "Testcase {} : Failed \n " + "Expected: Routes should not be present in {} FIB \n " + "Found: {}".format(tc_name, dut, result) + ) + + dut = "r2" + peer = "r1" + next_hop = next_hop_per_address_family( + tgen, dut, peer, addr_type, NEXT_HOP_IP_1 + ) + input_topo = {"r1": topo["routers"]["r1"]} + result = verify_bgp_rib( + tgen, addr_type, dut, input_topo, next_hop, expected=False + ) + assert result is not True, ( + "Testcase {} : Failed \n " + "Expected: Routes should not be present in {} BGP RIB \n " + "Found: {}".format(tc_name, dut, result) + ) + + result = verify_rib( + tgen, addr_type, dut, input_topo, next_hop, protocol, expected=False + ) + assert result is not True, ( + "Testcase {} : Failed \n " + "Expected: Routes should not be present in {} FIB \n " + "Found: {}".format(tc_name, dut, result) + ) + + step( + "Bring up BGP on R1, enable GR and configure bgp graceful-restart restart-time at global level" + ) + + start_router_daemons(tgen, "r1", ["bgpd"]) + + output = tgen.gears["r1"].vtysh_cmd( + """ + configure terminal + no bgp graceful-restart-disable + bgp graceful-restart + bgp graceful-restart stalepath-time 420 + bgp graceful-restart restart-time 240 + bgp graceful-restart select-defer-time 420 + ! + """ + ) + + step("Verify on R2 that R1 sent the updated GR restart-time") + + def _bgp_check_if_gr_restart_time_was_updated(): + output = json.loads(tgen.gears["r2"].vtysh_cmd("show bgp neighbor json")) + + expected = { + "192.168.0.1": { + "gracefulRestartInfo": { + "localGrMode": "Helper*", + "remoteGrMode": "Restart", + "timers": { + "configuredRestartTimer": 120, + "receivedRestartTimer": 240, + }, + }, + }, + "fd00::1": { + "gracefulRestartInfo": { + "localGrMode": "Helper*", + "remoteGrMode": "Restart", + "timers": { + "configuredRestartTimer": 120, + "receivedRestartTimer": 240, + }, + }, + }, + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_check_if_gr_restart_time_was_updated, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "R2 did not receive the updated GR restart-time of 240s" + + def _bgp_check_if_gr_timer_on_restarting_node_was_updated(): + output = json.loads(tgen.gears["r1"].vtysh_cmd("show bgp neighbor json")) + + expected = { + "192.168.0.2": { + "gracefulRestartInfo": { + "localGrMode": "Restart*", + "remoteGrMode": "Helper", + "timers": { + "configuredRestartTimer": 240, + "receivedRestartTimer": 120, + }, + "ipv4Unicast": { + "timers": {"stalePathTimer": 420, "selectionDeferralTimer": 420} + }, + }, + }, + "fd00::2": { + "gracefulRestartInfo": { + "localGrMode": "Restart*", + "remoteGrMode": "Helper", + "timers": { + "configuredRestartTimer": 240, + "receivedRestartTimer": 120, + }, + "ipv6Unicast": { + "timers": {"stalePathTimer": 420, "selectionDeferralTimer": 420} + }, + }, + }, + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_check_if_gr_timer_on_restarting_node_was_updated, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert ( + result is None + ), "R1 did not update the GR select-deferral and stale-path timer to 420s" + + write_test_footer(tc_name) + + if __name__ == "__main__": args = ["-s"] + sys.argv[1:] sys.exit(pytest.main(args)) diff --git a/tests/topotests/bgp_gr_notification/test_bgp_gr_notification.py b/tests/topotests/bgp_gr_notification/test_bgp_gr_notification.py index 16459a25a3..5d8338d6eb 100644 --- a/tests/topotests/bgp_gr_notification/test_bgp_gr_notification.py +++ b/tests/topotests/bgp_gr_notification/test_bgp_gr_notification.py @@ -195,16 +195,16 @@ def test_bgp_administrative_reset_gr(): step("Reset and shutdown R1") _bgp_clear_r1_and_shutdown() - step("Check if Hard Reset notification wasn't sent from R2") - test_func = functools.partial(_bgp_check_hard_reset) - _, result = topotest.run_and_expect(test_func, None, count=60, wait=0.5) - assert result is None, "Failed to send Administrative Reset notification from R2" - step("Check if stale routes are retained on R1") test_func = functools.partial(_bgp_check_gr_notification_stale) _, result = topotest.run_and_expect(test_func, None, count=60, wait=0.5) assert result is None, "Failed to see retained stale routes on R1" + step("Check if Hard Reset notification wasn't sent from R2") + test_func = functools.partial(_bgp_check_hard_reset) + _, result = topotest.run_and_expect(test_func, None, count=60, wait=0.5) + assert result is None, "Failed to send Administrative Reset notification from R2" + if __name__ == "__main__": args = ["-s"] + sys.argv[1:] diff --git a/tests/topotests/bgp_oad/test_bgp_oad.py b/tests/topotests/bgp_oad/test_bgp_oad.py index a2ca37a2b7..bb779462db 100644 --- a/tests/topotests/bgp_oad/test_bgp_oad.py +++ b/tests/topotests/bgp_oad/test_bgp_oad.py @@ -46,7 +46,7 @@ def teardown_module(mod): tgen.stop_topology() -def test_bgp_dynamic_capability_role(): +def test_bgp_oad(): tgen = get_topogen() if tgen.routers_have_failure(): diff --git a/tests/topotests/bgp_remote_as_auto/__init__.py b/tests/topotests/bgp_remote_as_auto/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/__init__.py diff --git a/tests/topotests/bgp_remote_as_auto/r1/frr.conf b/tests/topotests/bgp_remote_as_auto/r1/frr.conf new file mode 100644 index 0000000000..2f1bcd275f --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/r1/frr.conf @@ -0,0 +1,23 @@ +! +int r1-eth0 + ip address 192.168.1.1/24 +! +int r1-eth1 + ip address 192.168.14.1/24 +! +router bgp 65001 + no bgp ebgp-requires-policy + no bgp network import-check + neighbor 192.168.1.2 remote-as auto + neighbor 192.168.1.2 timers 1 3 + neighbor 192.168.1.2 timers connect 1 + neighbor 192.168.1.3 remote-as auto + neighbor 192.168.1.3 timers 1 3 + neighbor 192.168.1.3 timers connect 1 + neighbor r1-eth1 interface remote-as auto + neighbor r1-eth1 timers 1 3 + neighbor r1-eth1 timers connect 1 + address-family ipv4 unicast + network 10.0.0.1/32 + exit-address-family +! diff --git a/tests/topotests/bgp_remote_as_auto/r2/frr.conf b/tests/topotests/bgp_remote_as_auto/r2/frr.conf new file mode 100644 index 0000000000..f8d19a0bfd --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/r2/frr.conf @@ -0,0 +1,10 @@ +! +int r2-eth0 + ip address 192.168.1.2/24 +! +router bgp 65001 + no bgp ebgp-requires-policy + neighbor 192.168.1.1 remote-as auto + neighbor 192.168.1.1 timers 1 3 + neighbor 192.168.1.1 timers connect 1 +! diff --git a/tests/topotests/bgp_remote_as_auto/r3/frr.conf b/tests/topotests/bgp_remote_as_auto/r3/frr.conf new file mode 100644 index 0000000000..fc6862764f --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/r3/frr.conf @@ -0,0 +1,10 @@ +! +int r3-eth0 + ip address 192.168.1.3/24 +! +router bgp 65003 + no bgp ebgp-requires-policy + neighbor 192.168.1.1 remote-as auto + neighbor 192.168.1.1 timers 1 3 + neighbor 192.168.1.1 timers connect 1 +! diff --git a/tests/topotests/bgp_remote_as_auto/r4/frr.conf b/tests/topotests/bgp_remote_as_auto/r4/frr.conf new file mode 100644 index 0000000000..e280a6c6e8 --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/r4/frr.conf @@ -0,0 +1,10 @@ +! +int r4-eth0 + ip address 192.168.14.4/24 +! +router bgp 65004 + no bgp ebgp-requires-policy + neighbor r4-eth0 interface remote-as auto + neighbor r4-eth0 timers 1 3 + neighbor r4-eth0 timers connect 1 +! diff --git a/tests/topotests/bgp_remote_as_auto/test_bgp_remote_as_auto.py b/tests/topotests/bgp_remote_as_auto/test_bgp_remote_as_auto.py new file mode 100644 index 0000000000..1db6d98a42 --- /dev/null +++ b/tests/topotests/bgp_remote_as_auto/test_bgp_remote_as_auto.py @@ -0,0 +1,161 @@ +#!/usr/bin/env python +# SPDX-License-Identifier: ISC + +# Copyright (c) 2024 by +# Donatas Abraitis <donatas@opensourcerouting.org> +# + +import os +import re +import sys +import json +import pytest +import functools + +CWD = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(os.path.join(CWD, "../")) + +# pylint: disable=C0413 +from lib import topotest +from lib.topogen import Topogen, get_topogen + +pytestmark = [pytest.mark.bgpd] + + +def setup_module(mod): + topodef = {"s1": ("r1", "r2", "r3"), "s2": ("r1", "r4")} + tgen = Topogen(topodef, mod.__name__) + tgen.start_topology() + + router_list = tgen.routers() + + for _, (rname, router) in enumerate(router_list.items(), 1): + router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname))) + + tgen.start_router() + + +def teardown_module(mod): + tgen = get_topogen() + tgen.stop_topology() + + +def test_bgp_remote_as_auto(): + tgen = get_topogen() + + if tgen.routers_have_failure(): + pytest.skip(tgen.errors) + + r1 = tgen.gears["r1"] + r2 = tgen.gears["r2"] + r3 = tgen.gears["r3"] + r4 = tgen.gears["r4"] + + def _bgp_converge(): + output = json.loads(r1.vtysh_cmd("show bgp ipv4 unicast summary json")) + expected = { + "peers": { + "r1-eth1": { + "hostname": "r4", + "remoteAs": 65004, + "localAs": 65001, + "state": "Established", + }, + "192.168.1.2": { + "hostname": "r2", + "remoteAs": 65001, + "localAs": 65001, + "state": "Established", + }, + "192.168.1.3": { + "hostname": "r3", + "remoteAs": 65003, + "localAs": 65001, + "state": "Established", + }, + } + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_converge, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "Can't see automatic iBGP/eBGP peerings" + + def _bgp_converge_internal(): + output = json.loads(r2.vtysh_cmd("show bgp ipv4 unicast 10.0.0.1/32 json")) + expected = { + "paths": [ + { + "aspath": { + "string": "Local", + }, + "valid": True, + "peer": { + "hostname": "r1", + "type": "internal", + }, + } + ] + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_converge_internal, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "Can't see automatic iBGP peering" + + def _bgp_converge_external(): + output = json.loads(r3.vtysh_cmd("show bgp ipv4 unicast 10.0.0.1/32 json")) + expected = { + "paths": [ + { + "aspath": { + "string": "65001", + }, + "valid": True, + "peer": { + "hostname": "r1", + "type": "external", + }, + } + ] + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_converge_external, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "Can't see automatic eBGP peering" + + def _bgp_converge_external_unnumbered(): + output = json.loads(r4.vtysh_cmd("show bgp ipv4 unicast 10.0.0.1/32 json")) + expected = { + "paths": [ + { + "aspath": { + "string": "65001", + }, + "valid": True, + "peer": { + "hostname": "r1", + "type": "external", + }, + } + ] + } + return topotest.json_cmp(output, expected) + + test_func = functools.partial( + _bgp_converge_external_unnumbered, + ) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=1) + assert result is None, "Can't see automatic unnumbered eBGP peering" + + +if __name__ == "__main__": + args = ["-s"] + sys.argv[1:] + sys.exit(pytest.main(args)) diff --git a/tests/topotests/bgp_set_aspath_exclude/r1/bgpd.conf b/tests/topotests/bgp_set_aspath_exclude/r1/bgpd.conf index 9bef24f931..c70b4934a0 100644 --- a/tests/topotests/bgp_set_aspath_exclude/r1/bgpd.conf +++ b/tests/topotests/bgp_set_aspath_exclude/r1/bgpd.conf @@ -8,10 +8,19 @@ router bgp 65001 exit-address-family ! ip prefix-list p1 seq 5 permit 172.16.255.31/32 +ip prefix-list p2 seq 5 permit 172.16.255.32/32 +ip prefix-list p3 seq 5 permit 172.16.255.30/32 ! +bgp as-path access-list FIRST permit ^65 +bgp as-path access-list SECOND permit 2$ + +route-map r2 permit 6 + match ip address prefix-list p2 + set as-path exclude as-path-access-list SECOND route-map r2 permit 10 match ip address prefix-list p1 set as-path exclude 65003 route-map r2 permit 20 + match ip address prefix-list p3 set as-path exclude all ! diff --git a/tests/topotests/bgp_set_aspath_exclude/r3/zebra.conf b/tests/topotests/bgp_set_aspath_exclude/r3/zebra.conf index 3fa6c64484..56893158a4 100644 --- a/tests/topotests/bgp_set_aspath_exclude/r3/zebra.conf +++ b/tests/topotests/bgp_set_aspath_exclude/r3/zebra.conf @@ -1,5 +1,6 @@ ! int lo + ip address 172.16.255.30/32 ip address 172.16.255.31/32 ip address 172.16.255.32/32 ! diff --git a/tests/topotests/bgp_set_aspath_exclude/test_bgp_set_aspath_exclude.py b/tests/topotests/bgp_set_aspath_exclude/test_bgp_set_aspath_exclude.py index 64cc48e54f..63f1719e1d 100644 --- a/tests/topotests/bgp_set_aspath_exclude/test_bgp_set_aspath_exclude.py +++ b/tests/topotests/bgp_set_aspath_exclude/test_bgp_set_aspath_exclude.py @@ -64,29 +64,33 @@ def teardown_module(mod): expected_1 = { "routes": { + "172.16.255.30/32": [{"path": ""}], "172.16.255.31/32": [{"path": "65002"}], - "172.16.255.32/32": [{"path": ""}], + "172.16.255.32/32": [{"path": "65003"}], } } expected_2 = { "routes": { - "172.16.255.31/32": [{"path": ""}], + "172.16.255.30/32": [{"path": ""}], + "172.16.255.31/32": [{"path": "65002"}], "172.16.255.32/32": [{"path": ""}], } } expected_3 = { "routes": { - "172.16.255.31/32": [{"path": "65003"}], - "172.16.255.32/32": [{"path": "65003"}], + "172.16.255.30/32": [{"path": ""}], + "172.16.255.31/32": [{"path": "65002"}], + "172.16.255.32/32": [{"path": "65002 65003"}], } } expected_4 = { "routes": { - "172.16.255.31/32": [{"path": "65002 65003"}], - "172.16.255.32/32": [{"path": "65002 65003"}], + "172.16.255.30/32": [{"path": ""}], + "172.16.255.31/32": [{"path": "65002"}], + "172.16.255.32/32": [{"path": "65002"}], } } @@ -117,34 +121,42 @@ def test_bgp_set_aspath_exclude_access_list(): rname = "r1" r1 = tgen.gears[rname] + # tgen.mininet_cli() r1.vtysh_cmd( """ conf bgp as-path access-list FIRST permit ^65 route-map r2 permit 6 + no set as-path exclude as-path-access-list SECOND set as-path exclude as-path-access-list FIRST """ ) + # tgen.mininet_cli() + r1.vtysh_cmd( + """ +clear bgp * + """ + ) test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_2) _, result = topotest.run_and_expect(test_func, None, count=30, wait=0.5) - assert result is None, "Failed overriding incoming AS-PATH with regex 1 route-map" + assert result is None, "Failed change of exclude rule in route map" r1.vtysh_cmd( """ conf - bgp as-path access-list SECOND permit 2 route-map r2 permit 6 + no set as-path exclude as-path-access-list FIRST set as-path exclude as-path-access-list SECOND """ ) # tgen.mininet_cli() - test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_3) + test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_1) _, result = topotest.run_and_expect(test_func, None, count=30, wait=0.5) - assert result is None, "Failed overriding incoming AS-PATH with regex 2 route-map" + assert result is None, "Failed reverting exclude rule in route map" def test_no_bgp_set_aspath_exclude_access_list(): @@ -159,15 +171,28 @@ def test_no_bgp_set_aspath_exclude_access_list(): r1.vtysh_cmd( """ conf - no bgp as-path access-list SECOND permit 2 + no bgp as-path access-list SECOND permit 2$ + """ + ) + + r1.vtysh_cmd( + """ +clear bgp * """ ) test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_3) _, result = topotest.run_and_expect(test_func, None, count=30, wait=0.5) - assert result is None, "Failed removing bgp as-path access-list" + assert result is None, "Failed to removing current accesslist" + # tgen.mininet_cli() + r1.vtysh_cmd( + """ +conf + bgp as-path access-list SECOND permit 3$ + """ + ) r1.vtysh_cmd( """ clear bgp * @@ -177,7 +202,26 @@ clear bgp * test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_4) _, result = topotest.run_and_expect(test_func, None, count=30, wait=0.5) - assert result is None, "Failed to renegotiate with peers" + assert result is None, "Failed to renegotiate with peers 2" + + r1.vtysh_cmd( + """ +conf + route-map r2 permit 6 + no set as-path exclude as-path-access-list SECOND + """ + ) + + r1.vtysh_cmd( + """ +clear bgp * + """ + ) + + test_func = functools.partial(bgp_converge, tgen.gears["r1"], expected_3) + _, result = topotest.run_and_expect(test_func, None, count=30, wait=0.5) + + assert result is None, "Failed to renegotiate with peers 2" if __name__ == "__main__": diff --git a/tests/topotests/isis_srv6_topo1/rt1/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt1/step1/show_srv6_locator_table.ref index bb10aba942..c4a5d7507b 100644 --- a/tests/topotests/isis_srv6_topo1/rt1/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt1/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:1::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt1/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt1/step3/show_srv6_locator_table.ref index bb10aba942..c4a5d7507b 100644 --- a/tests/topotests/isis_srv6_topo1/rt1/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt1/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:1::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt1/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt1/step5/show_srv6_locator_table.ref index bb10aba942..c4a5d7507b 100644 --- a/tests/topotests/isis_srv6_topo1/rt1/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt1/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:1::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt1/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt1/step7/show_srv6_locator_table.ref index bb10aba942..c4a5d7507b 100644 --- a/tests/topotests/isis_srv6_topo1/rt1/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt1/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:1::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt1/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt1/step9/show_srv6_locator_table.ref index bb10aba942..c4a5d7507b 100644 --- a/tests/topotests/isis_srv6_topo1/rt1/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt1/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:1::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step1/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step2/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step2/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step2/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step2/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step3/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step4/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step4/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step4/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step4/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step5/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step6/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step6/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step6/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step6/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step7/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step8/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step8/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step8/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step8/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt2/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt2/step9/show_srv6_locator_table.ref index f3399319f3..f8a5d93f3c 100644 --- a/tests/topotests/isis_srv6_topo1/rt2/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt2/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:2::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step1/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step2/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step2/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step2/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step2/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step3/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step4/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step4/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step4/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step4/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step5/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step6/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step6/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step6/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step6/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step7/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step8/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step8/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step8/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step8/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt3/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt3/step9/show_srv6_locator_table.ref index ffa626123d..c62870587b 100644 --- a/tests/topotests/isis_srv6_topo1/rt3/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt3/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:3::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step1/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step2/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step2/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step2/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step2/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step3/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step4/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step4/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step4/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step4/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step5/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step6/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step6/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step6/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step6/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step7/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step8/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step8/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step8/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step8/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt4/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt4/step9/show_srv6_locator_table.ref index 189943f737..cb052dbbb5 100644 --- a/tests/topotests/isis_srv6_topo1/rt4/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt4/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:4::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step1/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step2/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step2/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step2/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step2/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step3/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step4/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step4/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step4/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step4/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step5/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step6/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step6/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step6/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step6/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step7/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step8/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step8/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step8/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step8/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt5/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt5/step9/show_srv6_locator_table.ref index 54780fce8a..ec55f24d7b 100644 --- a/tests/topotests/isis_srv6_topo1/rt5/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt5/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:5::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step1/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step1/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step1/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step1/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step2/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step2/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step2/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step2/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step3/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step3/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step3/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step3/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step4/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step4/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step4/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step4/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step5/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step5/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step5/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step5/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step6/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step6/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step6/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step6/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step7/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step7/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step7/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step7/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step8/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step8/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step8/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step8/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_srv6_topo1/rt6/step9/show_srv6_locator_table.ref b/tests/topotests/isis_srv6_topo1/rt6/step9/show_srv6_locator_table.ref index 35aa61d8e6..abcdeddea4 100644 --- a/tests/topotests/isis_srv6_topo1/rt6/step9/show_srv6_locator_table.ref +++ b/tests/topotests/isis_srv6_topo1/rt6/step9/show_srv6_locator_table.ref @@ -9,10 +9,6 @@ "argumentBitsLength":0, "statusUp":true, "chunks":[ - { - "prefix":"fc00:0:6::/48", - "proto":"isis" - } ] } ] diff --git a/tests/topotests/isis_topo1/r1/r1_topology.json b/tests/topotests/isis_topo1/r1/r1_topology.json index 337d6bf5ef..6b3374cc4d 100644 --- a/tests/topotests/isis_topo1/r1/r1_topology.json +++ b/tests/topotests/isis_topo1/r1/r1_topology.json @@ -1,96 +1,98 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r1" - } - ], - "ipv6": [ - { - "vertex": "r1" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r1" - }, - { - "metric": "0", - "parent": "r1(4)", - "type": "IP internal", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r1(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.254.0.3/32" - } - ], - "ipv6": [ - { - "vertex": "r1" - }, - { - "metric": "0", - "parent": "r1(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r1(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "metric": "10", - "interface": "r1-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r1" + } + ], + "ipv6-paths": [ + { + "vertex": "r1" + } + ] }, - { - "metric": "10", - "interface": "r1-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::3/128" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r1" + }, + { + "metric": 0, + "parent": "r1(4)", + "type": "IP internal", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r1(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.254.0.3/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r1" + }, + { + "metric": 0, + "parent": "r1(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r1(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "metric": 10, + "interface": "r1-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "metric": 10, + "interface": "r1-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::3/128" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1/r2/r2_topology.json b/tests/topotests/isis_topo1/r2/r2_topology.json index de90fb5a32..8720bc1cac 100644 --- a/tests/topotests/isis_topo1/r2/r2_topology.json +++ b/tests/topotests/isis_topo1/r2/r2_topology.json @@ -1,96 +1,98 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r2" - } - ], - "ipv6": [ - { - "vertex": "r2" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r2" - }, - { - "metric": "0", - "parent": "r2(4)", - "type": "IP internal", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r2(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.254.0.4/32" - } - ], - "ipv6": [ - { - "vertex": "r2" - }, - { - "metric": "0", - "parent": "r2(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r2(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "metric": "10", - "interface": "r2-eth0", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r2" + } + ], + "ipv6-paths": [ + { + "vertex": "r2" + } + ] }, - { - "metric": "10", - "interface": "r2-eth0", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::4/128" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r2" + }, + { + "metric": 0, + "parent": "r2(4)", + "type": "IP internal", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r2(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.254.0.4/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r2" + }, + { + "metric": 0, + "parent": "r2(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r2(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 10, + "interface": "r2-eth0", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "metric": 10, + "interface": "r2-eth0", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::4/128" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1/r3/r3_topology.json b/tests/topotests/isis_topo1/r3/r3_topology.json index 2d36f9b427..568b6dfeed 100644 --- a/tests/topotests/isis_topo1/r3/r3_topology.json +++ b/tests/topotests/isis_topo1/r3/r3_topology.json @@ -1,194 +1,196 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP internal", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.254.0.5/32" - }, - { - "interface": "r3-eth1", - "metric": "20", - "next-hop": "r5", - "type": "TE-IS", - "vertex": "r4" - }, - { - "interface": "r3-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r3-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.254.0.4/32" - } - ], - "ipv6": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "metric": "10", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "metric": "10", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::5/128" - }, - { - "interface": "r3-eth1", - "metric": "20", - "next-hop": "r5", - "type": "TE-IS", - "vertex": "r4" - }, - { - "metric": "20", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "metric": "20", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::4/128" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP internal", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r1" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r1(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r1(4)", - "type": "IP TE", - "vertex": "10.254.0.1/32" - } - ], - "ipv6": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r1" - }, - { - "metric": "10", - "interface": "r3-eth0", - "next-hop": "r1", - "parent": "r1(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::1/128" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP internal", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.254.0.5/32" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.254.0.4/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "metric": 10, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "metric": 10, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::5/128" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 20, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "metric": 20, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::4/128" + } + ] + }, + "level-2": { + "ipv4-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP internal", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r1" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r1(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r1(4)", + "type": "IP TE", + "vertex": "10.254.0.1/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r1" + }, + { + "metric": 10, + "interface": "r3-eth0", + "nextHop": "r1", + "parent": "r1(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::1/128" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1/r4/r4_topology.json b/tests/topotests/isis_topo1/r4/r4_topology.json index e7d7841912..9a53955cc9 100644 --- a/tests/topotests/isis_topo1/r4/r4_topology.json +++ b/tests/topotests/isis_topo1/r4/r4_topology.json @@ -1,194 +1,196 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP internal", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.254.0.5/32" - }, - { - "interface": "r4-eth1", - "metric": "20", - "next-hop": "r5", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r4-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r4-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.254.0.3/32" - } - ], - "ipv6": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "metric": "10", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "metric": "10", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::5/128" - }, - { - "interface": "r4-eth1", - "metric": "20", - "next-hop": "r5", - "type": "TE-IS", - "vertex": "r3" - }, - { - "metric": "20", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "metric": "20", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::3/128" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP internal", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r2" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r2(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r2(4)", - "type": "IP TE", - "vertex": "10.254.0.2/32" - } - ], - "ipv6": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r2" - }, - { - "metric": "10", - "interface": "r4-eth0", - "next-hop": "r2", - "parent": "r2(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::2/128" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP internal", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.254.0.5/32" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.254.0.3/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "metric": 10, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "metric": 10, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::5/128" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r3" + }, + { + "metric": 20, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "metric": 20, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::3/128" + } + ] + }, + "level-2": { + "ipv4-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP internal", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r2" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r2(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r2(4)", + "type": "IP TE", + "vertex": "10.254.0.2/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r2" + }, + { + "metric": 10, + "interface": "r4-eth0", + "nextHop": "r2", + "parent": "r2(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::2/128" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1/r5/r5_topology.json b/tests/topotests/isis_topo1/r5/r5_topology.json index 3d887b7cea..64590d8eb2 100644 --- a/tests/topotests/isis_topo1/r5/r5_topology.json +++ b/tests/topotests/isis_topo1/r5/r5_topology.json @@ -1,156 +1,154 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r5" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP internal", - "vertex": "10.0.10.0/24" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP internal", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.254.0.3/32" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.254.0.4/32" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r5" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP internal", + "vertex": "10.0.10.0/24" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP internal", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.254.0.3/32" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.254.0.4/32" + } + ], + "ipv6-paths": [ + { + "vertex": "r5" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 10, + "interface": "r5-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "metric": 10, + "interface": "r5-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::3/128" + }, + { + "metric": 10, + "interface": "r5-eth1", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "metric": 10, + "interface": "r5-eth1", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:f::4/128" + } + ] } - ], - "ipv6": [ - { - "vertex": "r5" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "metric": "10", - "interface": "r5-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "metric": "10", - "interface": "r5-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::3/128" - }, - { - "metric": "10", - "interface": "r5-eth1", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "metric": "10", - "interface": "r5-eth1", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:f::4/128" - } - ] - }, - "level-2": { - "ipv4": [], - "ipv6": [] } - } -} +] diff --git a/tests/topotests/isis_topo1/test_isis_topo1.py b/tests/topotests/isis_topo1/test_isis_topo1.py index cea284963d..8b6fb98612 100644 --- a/tests/topotests/isis_topo1/test_isis_topo1.py +++ b/tests/topotests/isis_topo1/test_isis_topo1.py @@ -120,19 +120,13 @@ def test_isis_convergence(): pytest.skip(tgen.errors) logger.info("waiting for ISIS protocol to converge") - # Code to generate the json files. - # for rname, router in tgen.routers().items(): - # open('/tmp/{}_topology.json'.format(rname), 'w').write( - # json.dumps(show_isis_topology(router), indent=2, sort_keys=True) - # ) - for rname, router in tgen.routers().items(): filename = "{0}/{1}/{1}_topology.json".format(CWD, rname) expected = json.loads(open(filename).read()) def compare_isis_topology(router, expected): "Helper function to test ISIS topology convergence." - actual = show_isis_topology(router) + actual = json.loads(router.vtysh_cmd("show isis topology json")) return topotest.json_cmp(actual, expected) test_func = functools.partial(compare_isis_topology, router, expected) @@ -845,52 +839,3 @@ def parse_topology(lines, level): continue return areas - - -def show_isis_topology(router): - """ - Get the ISIS topology in a dictionary format. - - Sample: - { - 'area-name': { - 'level-1': [ - { - 'vertex': 'r1' - } - ], - 'level-2': [ - { - 'vertex': '10.0.0.1/24', - 'type': 'IP', - 'parent': '0', - 'metric': 'internal' - } - ] - }, - 'area-name-2': { - 'level-2': [ - { - "interface": "rX-ethY", - "metric": "Z", - "next-hop": "rA", - "parent": "rC(B)", - "type": "TE-IS", - "vertex": "rD" - } - ] - } - } - """ - l1out = topotest.normalize_text( - router.vtysh_cmd("show isis topology level-1") - ).splitlines() - l2out = topotest.normalize_text( - router.vtysh_cmd("show isis topology level-2") - ).splitlines() - - l1 = parse_topology(l1out, "level-1") - l2 = parse_topology(l2out, "level-2") - - dict_merge(l1, l2) - return l1 diff --git a/tests/topotests/isis_topo1_vrf/r1/r1_topology.json b/tests/topotests/isis_topo1_vrf/r1/r1_topology.json index 666fa52b19..da537c552b 100644 --- a/tests/topotests/isis_topo1_vrf/r1/r1_topology.json +++ b/tests/topotests/isis_topo1_vrf/r1/r1_topology.json @@ -1,80 +1,82 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r1" - } - ], - "ipv6": [ - { - "vertex": "r1" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r1" - }, - { - "metric": "0", - "parent": "r1(4)", - "type": "IP internal", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r1(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - } - ], - "ipv6": [ - { - "vertex": "r1" - }, - { - "metric": "0", - "parent": "r1(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "interface": "r1-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r1(4)", - "type": "TE-IS", - "vertex": "r3" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r1" + } + ], + "ipv6-paths": [ + { + "vertex": "r1" + } + ] }, - { - "metric": "10", - "interface": "r1-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r1" + }, + { + "metric": 0, + "parent": "r1(4)", + "type": "IP internal", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r1(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r1" + }, + { + "metric": 0, + "parent": "r1(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "interface": "r1-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r1(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "metric": 10, + "interface": "r1-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1_vrf/r2/r2_topology.json b/tests/topotests/isis_topo1_vrf/r2/r2_topology.json index c26ad1ee37..bf965659be 100644 --- a/tests/topotests/isis_topo1_vrf/r2/r2_topology.json +++ b/tests/topotests/isis_topo1_vrf/r2/r2_topology.json @@ -1,80 +1,82 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r2" - } - ], - "ipv6": [ - { - "vertex": "r2" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r2" - }, - { - "metric": "0", - "parent": "r2(4)", - "type": "IP internal", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r2(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - } - ], - "ipv6": [ - { - "vertex": "r2" - }, - { - "metric": "0", - "parent": "r2(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "interface": "r2-eth0", - "metric": "10", - "next-hop": "r4", - "parent": "r2(4)", - "type": "TE-IS", - "vertex": "r4" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r2" + } + ], + "ipv6-paths": [ + { + "vertex": "r2" + } + ] }, - { - "metric": "10", - "interface": "r2-eth0", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r2" + }, + { + "metric": 0, + "parent": "r2(4)", + "type": "IP internal", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r2(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r2" + }, + { + "metric": 0, + "parent": "r2(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "interface": "r2-eth0", + "metric": 10, + "nextHop": "r4", + "parent": "r2(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 10, + "interface": "r2-eth0", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1_vrf/r3/r3_topology.json b/tests/topotests/isis_topo1_vrf/r3/r3_topology.json index 044a6c0438..94592b50a7 100644 --- a/tests/topotests/isis_topo1_vrf/r3/r3_topology.json +++ b/tests/topotests/isis_topo1_vrf/r3/r3_topology.json @@ -1,132 +1,148 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r3" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP internal", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "interface": "r3-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "metric": 10, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "interface": "r3-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 20, + "interface": "r3-eth1", + "nextHop": "r5", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + } + ] }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP internal", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r3-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - } - ], - "ipv6": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "interface": "r3-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "metric": "10", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "metric": "20", - "interface": "r3-eth1", - "next-hop": "r5", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP internal", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r1" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r1(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - } - ], - "ipv6": [ - { - "vertex": "r3" - }, - { - "metric": "0", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "interface": "r3-eth0", - "metric": "10", - "next-hop": "r1", - "parent": "r3(4)", - "type": "TE-IS", - "vertex": "r1" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP internal", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r1" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r1(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r3" + }, + { + "metric": 0, + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "interface": "r3-eth0", + "metric": 10, + "nextHop": "r1", + "parent": "r3(4)", + "type": "TE-IS", + "vertex": "r1" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1_vrf/r4/r4_topology.json b/tests/topotests/isis_topo1_vrf/r4/r4_topology.json index d40008aa30..b8295e87b9 100644 --- a/tests/topotests/isis_topo1_vrf/r4/r4_topology.json +++ b/tests/topotests/isis_topo1_vrf/r4/r4_topology.json @@ -1,132 +1,148 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r4" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP internal", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "interface": "r4-eth1", + "metric": 10, + "nextHop": "r5", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r5" + }, + { + "metric": 10, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "interface": "r4-eth1", + "metric": 20, + "nextHop": "r5", + "type": "TE-IS", + "vertex": "r3" + }, + { + "metric": 20, + "interface": "r4-eth1", + "nextHop": "r5", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + } + ] }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP internal", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r4-eth1", - "metric": "20", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - } - ], - "ipv6": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "interface": "r4-eth1", - "metric": "10", - "next-hop": "r5", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r5" - }, - { - "metric": "10", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "metric": "20", - "interface": "r4-eth1", - "next-hop": "r5", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - } - ] - }, - "level-2": { - "ipv4": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP internal", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r2" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r2(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - } - ], - "ipv6": [ - { - "vertex": "r4" - }, - { - "metric": "0", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - }, - { - "interface": "r4-eth0", - "metric": "10", - "next-hop": "r2", - "parent": "r4(4)", - "type": "TE-IS", - "vertex": "r2" + "level-2": { + "ipv4-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP internal", + "vertex": "10.0.21.0/24" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r2" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r2(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r4" + }, + { + "metric": 0, + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + }, + { + "interface": "r4-eth0", + "metric": 10, + "nextHop": "r2", + "parent": "r4(4)", + "type": "TE-IS", + "vertex": "r2" + } + ] } - ] } - } -} +] diff --git a/tests/topotests/isis_topo1_vrf/r5/r5_topology.json b/tests/topotests/isis_topo1_vrf/r5/r5_topology.json index 2a088cae30..8b5159cbfb 100644 --- a/tests/topotests/isis_topo1_vrf/r5/r5_topology.json +++ b/tests/topotests/isis_topo1_vrf/r5/r5_topology.json @@ -1,124 +1,122 @@ -{ - "1": { - "level-1": { - "ipv4": [ - { - "vertex": "r5" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP internal", - "vertex": "10.0.10.0/24" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP internal", - "vertex": "10.0.11.0/24" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.20.0/24" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP TE", - "vertex": "10.0.10.0/24" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.21.0/24" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP TE", - "vertex": "10.0.11.0/24" +[ + { + "area": "1", + "algorithm": 0, + "level-1": { + "ipv4-paths": [ + { + "vertex": "r5" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP internal", + "vertex": "10.0.10.0/24" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP internal", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.10.0/24" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP TE", + "vertex": "10.0.20.0/24" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.11.0/24" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP TE", + "vertex": "10.0.21.0/24" + } + ], + "ipv6-paths": [ + { + "vertex": "r5" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:1::/64" + }, + { + "metric": 0, + "parent": "r5(4)", + "type": "IP6 internal", + "vertex": "2001:db8:2:2::/64" + }, + { + "interface": "r5-eth0", + "metric": 10, + "nextHop": "r3", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r3" + }, + { + "interface": "r5-eth1", + "metric": 10, + "nextHop": "r4", + "parent": "r5(4)", + "type": "TE-IS", + "vertex": "r4" + }, + { + "metric": 10, + "interface": "r5-eth0", + "nextHop": "r3", + "parent": "r3(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:1::/64" + }, + { + "metric": 10, + "interface": "r5-eth1", + "nextHop": "r4", + "parent": "r4(4)", + "type": "IP6 internal", + "vertex": "2001:db8:1:2::/64" + } + ] } - ], - "ipv6": [ - { - "vertex": "r5" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:1::/64" - }, - { - "metric": "0", - "parent": "r5(4)", - "type": "IP6 internal", - "vertex": "2001:db8:2:2::/64" - }, - { - "interface": "r5-eth0", - "metric": "10", - "next-hop": "r3", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r3" - }, - { - "interface": "r5-eth1", - "metric": "10", - "next-hop": "r4", - "parent": "r5(4)", - "type": "TE-IS", - "vertex": "r4" - }, - { - "metric": "10", - "interface": "r5-eth0", - "next-hop": "r3", - "parent": "r3(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:1::/64" - }, - { - "metric": "10", - "interface": "r5-eth1", - "next-hop": "r4", - "parent": "r4(4)", - "type": "IP6 internal", - "vertex": "2001:db8:1:2::/64" - } - ] - }, - "level-2": { - "ipv4": [], - "ipv6": [] } - } -} +] diff --git a/tests/topotests/isis_topo1_vrf/test_isis_topo1_vrf.py b/tests/topotests/isis_topo1_vrf/test_isis_topo1_vrf.py index 7aac7c704d..afc6864b98 100644 --- a/tests/topotests/isis_topo1_vrf/test_isis_topo1_vrf.py +++ b/tests/topotests/isis_topo1_vrf/test_isis_topo1_vrf.py @@ -141,8 +141,9 @@ def test_isis_convergence(): def compare_isis_topology(router, expected): "Helper function to test ISIS vrf topology convergence." - actual = show_isis_topology(router) - + actual = json.loads( + router.vtysh_cmd(f"show isis vrf {router.name}-cust1 topology json") + ) return topotest.json_cmp(actual, expected) test_func = functools.partial(compare_isis_topology, router, expected) @@ -377,52 +378,3 @@ def parse_topology(lines, level): continue return areas - - -def show_isis_topology(router): - """ - Get the ISIS vrf topology in a dictionary format. - - Sample: - { - 'area-name': { - 'level-1': [ - { - 'vertex': 'r1' - } - ], - 'level-2': [ - { - 'vertex': '10.0.0.1/24', - 'type': 'IP', - 'parent': '0', - 'metric': 'internal' - } - ] - }, - 'area-name-2': { - 'level-2': [ - { - "interface": "rX-ethY", - "metric": "Z", - "next-hop": "rA", - "parent": "rC(B)", - "type": "TE-IS", - "vertex": "rD" - } - ] - } - } - """ - l1out = topotest.normalize_text( - router.vtysh_cmd("show isis vrf {}-cust1 topology level-1".format(router.name)) - ).splitlines() - l2out = topotest.normalize_text( - router.vtysh_cmd("show isis vrf {}-cust1 topology level-2".format(router.name)) - ).splitlines() - - l1 = parse_topology(l1out, "level-1") - l2 = parse_topology(l2out, "level-2") - - dict_merge(l1, l2) - return l1 diff --git a/tests/topotests/lib/bgp.py b/tests/topotests/lib/bgp.py index 4250c405f3..bcd1c74812 100644 --- a/tests/topotests/lib/bgp.py +++ b/tests/topotests/lib/bgp.py @@ -3266,27 +3266,43 @@ def verify_graceful_restart( lmode = None rmode = None + # Local GR mode - if "address_family" in input_dict[dut]["bgp"]: - bgp_neighbors = input_dict[dut]["bgp"]["address_family"][addr_type][ - "unicast" - ]["neighbor"][peer]["dest_link"] + if "bgp" not in input_dict[dut] and "graceful-restart" in input_dict[dut]: + if ( + "graceful-restart" in input_dict[dut]["graceful-restart"] + and input_dict[dut]["graceful-restart"]["graceful-restart"] + ): + lmode = "Restart*" + elif ( + "graceful-restart-disable" in input_dict[dut]["graceful-restart"] + and input_dict[dut]["graceful-restart"]["graceful-restart-disable"] + ): + lmode = "Disable*" + else: + lmode = "Helper*" - for dest_link, data in bgp_neighbors.items(): - if ( - "graceful-restart-helper" in data - and data["graceful-restart-helper"] - ): - lmode = "Helper" - elif "graceful-restart" in data and data["graceful-restart"]: - lmode = "Restart" - elif ( - "graceful-restart-disable" in data - and data["graceful-restart-disable"] - ): - lmode = "Disable" - else: - lmode = None + if lmode is None: + if "address_family" in input_dict[dut]["bgp"]: + bgp_neighbors = input_dict[dut]["bgp"]["address_family"][addr_type][ + "unicast" + ]["neighbor"][peer]["dest_link"] + + for dest_link, data in bgp_neighbors.items(): + if ( + "graceful-restart-helper" in data + and data["graceful-restart-helper"] + ): + lmode = "Helper" + elif "graceful-restart" in data and data["graceful-restart"]: + lmode = "Restart" + elif ( + "graceful-restart-disable" in data + and data["graceful-restart-disable"] + ): + lmode = "Disable" + else: + lmode = None if lmode is None: if "graceful-restart" in input_dict[dut]["bgp"]: @@ -3314,7 +3330,11 @@ def verify_graceful_restart( return True # Remote GR mode - if "address_family" in input_dict[peer]["bgp"]: + + if ( + "bgp" in input_dict[peer] + and "address_family" in input_dict[peer]["bgp"] + ): bgp_neighbors = input_dict[peer]["bgp"]["address_family"][addr_type][ "unicast" ]["neighbor"][dut]["dest_link"] @@ -3336,7 +3356,10 @@ def verify_graceful_restart( rmode = None if rmode is None: - if "graceful-restart" in input_dict[peer]["bgp"]: + if ( + "bgp" in input_dict[peer] + and "graceful-restart" in input_dict[peer]["bgp"] + ): if ( "graceful-restart" in input_dict[peer]["bgp"]["graceful-restart"] @@ -3355,6 +3378,27 @@ def verify_graceful_restart( rmode = "Disable" else: rmode = "Helper" + + if rmode is None: + if ( + "bgp" not in input_dict[peer] + and "graceful-restart" in input_dict[peer] + ): + if ( + "graceful-restart" in input_dict[peer]["graceful-restart"] + and input_dict[peer]["graceful-restart"]["graceful-restart"] + ): + rmode = "Restart" + elif ( + "graceful-restart-disable" + in input_dict[peer]["graceful-restart"] + and input_dict[peer]["graceful-restart"][ + "graceful-restart-disable" + ] + ): + rmode = "Disable" + else: + rmode = "Helper" else: rmode = "Helper" diff --git a/tests/topotests/ospf_p2mp/r1/frr-p2mp.conf b/tests/topotests/ospf_p2mp/r1/frr-p2mp.conf index cb4538c0e3..89f255bb44 100644 --- a/tests/topotests/ospf_p2mp/r1/frr-p2mp.conf +++ b/tests/topotests/ospf_p2mp/r1/frr-p2mp.conf @@ -1,4 +1,10 @@ ! +!log file ospfd.log debug +! debug ospf event +! debug ospf client +! debug ospf lsa +! debug ospf packet all + hostname r1 password zebra log file /tmp/r1-frr.log diff --git a/tests/topotests/ospf_p2mp/r2/frr-p2mp.conf b/tests/topotests/ospf_p2mp/r2/frr-p2mp.conf index 0ca8aec3bf..429330987e 100644 --- a/tests/topotests/ospf_p2mp/r2/frr-p2mp.conf +++ b/tests/topotests/ospf_p2mp/r2/frr-p2mp.conf @@ -1,4 +1,10 @@ ! +!log file ospfd.log debug +! debug ospf event +! debug ospf client +! debug ospf lsa +! debug ospf packet all +! hostname r2 password zebra log file /tmp/r1-frr.log diff --git a/tests/topotests/ospf_p2mp/r3/frr-p2mp.conf b/tests/topotests/ospf_p2mp/r3/frr-p2mp.conf index 41ea70d443..eada78450e 100644 --- a/tests/topotests/ospf_p2mp/r3/frr-p2mp.conf +++ b/tests/topotests/ospf_p2mp/r3/frr-p2mp.conf @@ -1,4 +1,10 @@ ! +!log file ospfd.log debug +! debug ospf event +! debug ospf client +! debug ospf lsa +! debug ospf packet all +! hostname r3 password zebra log file /tmp/r1-frr.log diff --git a/tests/topotests/ospf_p2mp/r4/frr-p2mp.conf b/tests/topotests/ospf_p2mp/r4/frr-p2mp.conf index 21fa9c72f9..3146ea0957 100644 --- a/tests/topotests/ospf_p2mp/r4/frr-p2mp.conf +++ b/tests/topotests/ospf_p2mp/r4/frr-p2mp.conf @@ -1,4 +1,10 @@ ! +!log file ospfd.log debug +! debug ospf event +! debug ospf client +! debug ospf lsa +! debug ospf packet all +! hostname r4 password zebra log file /tmp/r1-frr.log diff --git a/tests/topotests/ospf_p2mp/test_ospf_p2mp_broadcast.py b/tests/topotests/ospf_p2mp/test_ospf_p2mp_broadcast.py index d52c8147fe..455c737f0d 100644 --- a/tests/topotests/ospf_p2mp/test_ospf_p2mp_broadcast.py +++ b/tests/topotests/ospf_p2mp/test_ospf_p2mp_broadcast.py @@ -9,6 +9,7 @@ import os import sys +from time import sleep from functools import partial import pytest @@ -113,7 +114,9 @@ def teardown_module(): tgen.stop_topology() -def verify_p2mp_interface(tgen, router, nbr_cnt, nbr_adj_cnt, nbr_filter): +def verify_p2mp_interface( + tgen, router, nbr_cnt, nbr_adj_cnt, delay_reflood, nbr_filter +): "Verify the P2MP Configuration and interface settings" topo_router = tgen.gears[router] @@ -147,7 +150,7 @@ def verify_p2mp_interface(tgen, router, nbr_cnt, nbr_adj_cnt, nbr_filter): "nbrCount": nbr_cnt, "nbrAdjacentCount": nbr_adj_cnt, "prefixSuppression": False, - "p2mpDelayReflood": False, + "p2mpDelayReflood": delay_reflood, "nbrFilterPrefixList": nbr_filter, } } @@ -280,7 +283,7 @@ def test_p2mp_broadcast_interface(): pytest.skip("Skipped because of router(s) failure") step("Verify router r1 interface r1-eth0 p2mp configuration") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, False, "N/A") step("Verify router r1 p2mp interface r1-eth0 neighbors") verify_p2mp_neighbor( @@ -305,7 +308,7 @@ def test_p2mp_broadcast_interface(): step("Verify router r1 interface r1-eth0 p2mp configuration application") r1.vtysh_cmd("conf t\ninterface r1-eth0\nip ospf network point-to-multipoint") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, False, "N/A") step("Verify restablishment of r1-eth0 p2mp neighbors") verify_p2mp_neighbor( @@ -324,14 +327,14 @@ def test_p2mp_broadcast_interface(): verify_p2mp_route(tgen, "r1", "10.1.4.0/24", 24, "10.1.0.4", "r1-eth0") -def test_p2mp_broadcast_neighbor_filter(): +def p2mp_broadcast_neighbor_filter_common(delay_reflood): tgen = get_topogen() if tgen.routers_have_failure(): pytest.skip("Skipped because of router(s) failure") step("Verify router r1 interface r1-eth0 p2mp configuration") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, delay_reflood, "N/A") step("Verify router r1 p2mp interface r1-eth0 neighbors") verify_p2mp_neighbor( @@ -362,7 +365,7 @@ def test_p2mp_broadcast_neighbor_filter(): assert neighbor_filter_cfg == " ip ospf neighbor-filter nbr-filter", assertmsg step("Verify non-existent neighbor-filter is not applied to r1 interfaces") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, delay_reflood, "N/A") step("Add nbr-filter prefix-list configuration to r1") r1.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 200 permit any") @@ -370,7 +373,7 @@ def test_p2mp_broadcast_neighbor_filter(): step( "Verify neighbor-filter is now applied to r1 interface and neighbors still adjacent" ) - verify_p2mp_interface(tgen, "r1", 3, 3, "nbr-filter") + verify_p2mp_interface(tgen, "r1", 3, 3, delay_reflood, "nbr-filter") step("Add nbr-filter prefix-list configuration to block r4") r1.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 10 deny 10.1.0.4/32") @@ -378,7 +381,7 @@ def test_p2mp_broadcast_neighbor_filter(): step( "Verify neighbor-filter is now applied to r1 interface and r4 is no longer adjacent" ) - verify_p2mp_interface(tgen, "r1", 2, 2, "nbr-filter") + verify_p2mp_interface(tgen, "r1", 2, 2, delay_reflood, "nbr-filter") verify_p2mp_neighbor_missing(tgen, "r1", "4.4.4.4") step("Verify route to r4 subnet is now through r2") @@ -390,7 +393,7 @@ def test_p2mp_broadcast_neighbor_filter(): step( "Verify neighbor-filter is now applied to r1 interface and r2 is no longer adjacent" ) - verify_p2mp_interface(tgen, "r1", 1, 1, "nbr-filter") + verify_p2mp_interface(tgen, "r1", 1, 1, delay_reflood, "nbr-filter") verify_p2mp_neighbor_missing(tgen, "r1", "2.2.2.2") step("Verify route to r4 and r2 subnet are now through r3") @@ -406,24 +409,105 @@ def test_p2mp_broadcast_neighbor_filter(): assert rc, assertmsg step("Verify interface neighbor-filter is removed and neighbors present") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, delay_reflood, "N/A") step("Add neighbor filter configuration and verify neighbors are filtered") r1.vtysh_cmd("conf t\ninterface r1-eth0\nip ospf neighbor-filter nbr-filter") - verify_p2mp_interface(tgen, "r1", 1, 1, "nbr-filter") + verify_p2mp_interface(tgen, "r1", 1, 1, delay_reflood, "nbr-filter") verify_p2mp_neighbor_missing(tgen, "r1", "2.2.2.2") verify_p2mp_neighbor_missing(tgen, "r1", "4.4.4.4") step("Remove nbr-filter prefix-list configuration to block r2 and verify neighbor") r1.vtysh_cmd("conf t\nno ip prefix-list nbr-filter seq 20") - verify_p2mp_interface(tgen, "r1", 2, 2, "nbr-filter") + verify_p2mp_interface(tgen, "r1", 2, 2, delay_reflood, "nbr-filter") verify_p2mp_neighbor( tgen, "r1", "2.2.2.2", "Full/DROther", "10.1.0.2", "r1-eth0:10.1.0.1" ) step("Delete nbr-filter prefix-list and verify neighbors are present") r1.vtysh_cmd("conf t\nno ip prefix-list nbr-filter") - verify_p2mp_interface(tgen, "r1", 3, 3, "N/A") + verify_p2mp_interface(tgen, "r1", 3, 3, delay_reflood, "N/A") + + +def test_p2mp_broadcast_neighbor_filter(): + p2mp_broadcast_neighbor_filter_common(False) + + +def test_p2mp_broadcast_neighbor_filter_delay_reflood(): + tgen = get_topogen() + + if tgen.routers_have_failure(): + pytest.skip("Skipped because of router(s) failure") + + step("Modify router r1 interface r1-eth0 p2mp delay-reflood configuration") + r1 = tgen.gears["r1"] + r1.vtysh_cmd( + "conf t\ninterface r1-eth0\nip ospf network point-to-multipoint delay-reflood" + ) + verify_p2mp_interface(tgen, "r1", 3, 3, True, "N/A") + + step("Modify router r2 interface r2-eth0 p2mp delay-reflood configuration") + r2 = tgen.gears["r2"] + r2.vtysh_cmd( + "conf t\ninterface r2-eth0\nip ospf network point-to-multipoint delay-reflood" + ) + + step("Modify router r3 interface r3-eth0 p2mp delay-reflood configuration") + r3 = tgen.gears["r3"] + r3.vtysh_cmd( + "conf t\ninterface r3-eth0\nip ospf network point-to-multipoint delay-reflood" + ) + + step("Modify router r4 interface r4-eth0 p2mp delay-reflood configuration") + r4 = tgen.gears["r4"] + r4.vtysh_cmd( + "conf t\ninterface r4-eth0\nip ospf network point-to-multipoint delay-reflood" + ) + + p2mp_broadcast_neighbor_filter_common(True) + + step("Recreate a partial P2MP mesh with neighbor filters") + step("Add nbr-filter prefix-list configuration to block r4") + r1.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 30 permit any") + r1.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 10 deny 10.1.0.3/32") + r1.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 20 deny 10.1.0.4/32") + r1.vtysh_cmd("conf t\ninterface r1-eth0\nip ospf neighbor-filter nbr-filter") + + r2.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 30 permit any") + r2.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 10 deny 10.1.0.4/32") + r2.vtysh_cmd("conf t\ninterface r2-eth0\nip ospf neighbor-filter nbr-filter") + + r3.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 30 permit any") + r3.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 10 deny 10.1.0.1/32") + r3.vtysh_cmd("conf t\ninterface r3-eth0\nip ospf neighbor-filter nbr-filter") + + r4.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 30 permit any") + r4.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 10 deny 10.1.0.1/32") + r4.vtysh_cmd("conf t\nip prefix-list nbr-filter seq 20 deny 10.1.0.2/32") + r4.vtysh_cmd("conf t\ninterface r4-eth0\nip ospf neighbor-filter nbr-filter") + + step( + "Add redistribution and spaced static routes to r1 to test delay flood retransmission" + ) + r1.vtysh_cmd("conf t\nrouter ospf\nredistribute static") + r1.vtysh_cmd("conf t\nip route 20.1.1.1/32 null0") + sleep(1) + r1.vtysh_cmd("conf t\nip route 20.1.1.2/32 null0") + sleep(1) + r1.vtysh_cmd("conf t\nip route 20.1.1.3/32 null0") + sleep(1) + r1.vtysh_cmd("conf t\nip route 20.1.1.4/32 null0") + sleep(1) + r1.vtysh_cmd("conf t\nip route 20.1.1.5/32 null0") + sleep(1) + + step( + "Verify the routes are installed on r1 with delay-reflood in P2MP partial mesh" + ) + verify_p2mp_route(tgen, "r4", "20.1.1.1/32", 32, "10.1.0.3", "r4-eth0") + verify_p2mp_route(tgen, "r4", "20.1.1.2/32", 32, "10.1.0.3", "r4-eth0") + verify_p2mp_route(tgen, "r4", "20.1.1.3/32", 32, "10.1.0.3", "r4-eth0") + verify_p2mp_route(tgen, "r4", "20.1.1.4/32", 32, "10.1.0.3", "r4-eth0") def test_memory_leak(): |
