ISIS Basic Multi-Topology

Basic multi-topology IGP using ISIS and SR. Blue topology prefers the northen path, red topology prefers the southern path, black is the default IGP path which is ECMP.

"Using ISIS unicast multi-topology applied to Segment Routing allows users to define multiple overlay topologies. For example, users may want to create a latency optimized topology and a bandwidth optimized topology. Per link is decided if the link is part of a topology and, if so, the metric that link has with in its established topology. The same is the case for loopback prefixes and their associated prefix-SID. This way multiple “overlay” topologies can be tailored over a single physical topology. SPF is calculated in each topology and the resulting shortest paths are downloaded to global FIB. If a prefix exists in multiple topologies, the topology with the lowest index wins."

R1:

interface Loopback0
 description Loopback
 ipv4 address 100.0.0.1 255.255.255.255
!
interface Loopback1
 ipv4 address 1.1.1.1 255.255.255.255
!
interface Loopback2
 ipv4 address 2.2.2.1 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 description to xrvr-2
 cdp
 ipv4 address 99.1.2.1 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 description to xrvr-8
 cdp
 ipv4 address 99.1.8.1 255.255.255.0
!
router isis 1
 is-type level-2-only
 net 49.0001.0000.0000.0001.00
 address-family ipv4 unicast topology red
  topology-id 8
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast topology blue
  topology-id 9
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast
  metric-style wide
  segment-routing mpls
 !
 interface Loopback0
  passive
  address-family ipv4 unicast
   prefix-sid-value 1
  !
 !
 interface Loopback1
  passive
  address-family ipv4 unicast topology red
   prefix-sid-value 6111
  !
 !
 interface Loopback2
  passive
  address-family ipv4 unicast topology blue
   prefix-sid-value 6221
  !
 !
 interface GigabitEthernet0/0/0/0
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/1
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
!
end



R2:

interface Loopback0
 description Loopback
 ipv4 address 100.0.0.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 description to xrvr-1
 cdp
 ipv4 address 99.1.2.2 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 description to xrvr-3
 cdp
 ipv4 address 99.2.3.2 255.255.255.0
 shutdown
!
interface GigabitEthernet0/0/0/2
 description to xrvr-8
 cdp
 ipv4 address 99.2.8.2 255.255.255.0
!
router isis 1
 is-type level-2-only
 net 49.0001.0000.0000.0002.00
 address-family ipv4 unicast topology red
  topology-id 8
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast topology blue
  topology-id 9
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast
  metric-style wide
  segment-routing mpls
 !
 interface Loopback0
  passive
  circuit-type level-2-only
  address-family ipv4 unicast
  !
 !
 interface GigabitEthernet0/0/0/0
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/1
  point-to-point
  address-family ipv4 unicast topology red
   metric 200
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/2
  point-to-point
  address-family ipv4 unicast topology red
   metric 10
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
!
end




R3:

interface Loopback0
 description Loopback
 ipv4 address 100.0.0.3 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 description to xrvr-2
 cdp
 ipv4 address 99.2.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 description to xrvr-4
 cdp
 ipv4 address 99.3.4.3 255.255.255.0
 shutdown
!
interface GigabitEthernet0/0/0/2
 description to xrvr-7
 cdp
 ipv4 address 99.3.7.3 255.255.255.0
!
router isis 1
 is-type level-2-only
 net 49.0001.0000.0000.0003.00
 address-family ipv4 unicast topology red
  topology-id 8
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast topology blue
  topology-id 9
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast
  metric-style wide
  segment-routing mpls
 !
 interface Loopback0
  passive
  address-family ipv4 unicast
   prefix-sid-value 3
  !
 !
 interface GigabitEthernet0/0/0/0
  point-to-point
  address-family ipv4 unicast topology red
   metric 200
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/1
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/2
  point-to-point
  address-family ipv4 unicast topology red
   metric 10
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
!
end



R4:

interface Loopback0
 description Loopback
 ipv4 address 100.0.0.4 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 description to xrvr-3
 cdp
 ipv4 address 99.3.4.4 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 description to xrvr-5
 cdp
 ipv4 address 99.4.5.4 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 description to xrvr-6
 cdp
 ipv4 address 99.4.6.4 255.255.255.0
!
router isis 1
 is-type level-2-only
 net 49.0001.0000.0000.0004.00
 address-family ipv4 unicast topology red
  topology-id 8
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast topology blue
  topology-id 9
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast
  metric-style wide
  segment-routing mpls
 !
 interface Loopback0
  passive
  address-family ipv4 unicast
   prefix-sid-value 4
  !
 !
 interface GigabitEthernet0/0/0/0
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/1
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/2
  point-to-point
  address-family ipv4 unicast topology red
   metric 10
  !
  address-family ipv4 unicast topology blue
   metric 10
  !
  address-family ipv4 unicast
   metric 10
  !
 !
!
end



R5:
interface Loopback0
 description Loopback
 ipv4 address 100.0.0.5 255.255.255.255
!
interface Loopback1
 ipv4 address 1.1.1.2 255.255.255.255
!
interface Loopback2
 ipv4 address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 description to xrvr-4
 cdp
 ipv4 address 99.4.5.5 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 description to xrvr-6
 cdp
 ipv4 address 99.5.6.5 255.255.255.0
!
router isis 1
 is-type level-2-only
 net 49.0001.0000.0000.0005.00
 address-family ipv4 unicast topology red
  topology-id 8
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast topology blue
  topology-id 9
  metric-style wide
  segment-routing mpls
 !
 address-family ipv4 unicast
  metric-style wide
  segment-routing mpls
 !
 interface Loopback0
  passive
  address-family ipv4 unicast
   prefix-sid-value 5
  !
 !
 interface Loopback1
  passive
  address-family ipv4 unicast topology red
   prefix-sid-value 6112
  !
 !
 interface Loopback2
  passive
  address-family ipv4 unicast topology blue
   prefix-sid-value 6222
  !
 !
 interface GigabitEthernet0/0/0/0
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
 interface GigabitEthernet0/0/0/1
  point-to-point
  address-family ipv4 unicast topology red
   metric 100
  !
  address-family ipv4 unicast topology blue
   metric 100
  !
  address-family ipv4 unicast
   metric 10
  !
 !
!
end
R5:
RP/0/0/CPU0:xrvr-5# show isis database verbose xrvr-5

IS-IS 1 (Level-2) Link State Database
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime  ATT/P/OL
xrvr-5.00-00        * 0x0000000a   0xc8c9        1105            0/0/0
  Area Address: 49.0001
  NLPID:        0xcc
  MT:           Standard (IPv4 Unicast)
  MT:           TID 8                                            0/0/0
  MT:           TID 9                                            0/0/0
  Hostname:     xrvr-5
  IP Address:   100.0.0.5
  Router Cap:   100.0.0.5, D:0, S:0
    Segment Routing: I:1 V:0, SRGB Base: 24000 Range: 7999
  Metric: 10         IS-Extended xrvr-4.00
    Interface IP Address: 99.4.5.5
    Neighbor IP Address: 99.4.5.4
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32001
  Metric: 10         IS-Extended xrvr-6.00
    Interface IP Address: 99.5.6.5
    Neighbor IP Address: 99.5.6.6
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32000
  Metric: 10         IP-Extended 99.4.5.0/24
  Metric: 10         IP-Extended 99.5.6.0/24
  Metric: 0          IP-Extended 100.0.0.5/32
    Prefix-SID Index: 5, R:0 N:0 P:0
  Metric: 100        MT (TID 8) IS-Extended xrvr-4.00
    Interface IP Address: 99.4.5.5
    Neighbor IP Address: 99.4.5.4
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32001
  Metric: 100        MT (TID 8) IS-Extended xrvr-6.00
    Interface IP Address: 99.5.6.5
    Neighbor IP Address: 99.5.6.6
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32000
  Metric: 0          MT (TID 8) IP-Extended 1.1.1.2/32
    Prefix-SID Index: 6112, R:0 N:0 P:0
  Metric: 100        MT (TID 8) IP-Extended 99.4.5.0/24
  Metric: 100        MT (TID 8) IP-Extended 99.5.6.0/24
  Metric: 100        MT (TID 9) IS-Extended xrvr-4.00
    Interface IP Address: 99.4.5.5
    Neighbor IP Address: 99.4.5.4
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32001
  Metric: 100        MT (TID 9) IS-Extended xrvr-6.00
    Interface IP Address: 99.5.6.5
    Neighbor IP Address: 99.5.6.6
    ADJ-SID: F:0 B:0 weight:0 Adjacency-sid:32000
  Metric: 0          MT (TID 9) IP-Extended 2.2.2.2/32
    Prefix-SID Index: 6222, R:0 N:0 P:0
  Metric: 100        MT (TID 9) IP-Extended 99.4.5.0/24
  Metric: 100        MT (TID 9) IP-Extended 99.5.6.0/24

 Total Level-2 LSP count: 1     Local Level-2 LSP count: 1




R1
RP/0/0/CPU0:xrvr-1#show mpls forwarding
Local  Outgoing    Prefix             Outgoing     Next Hop        Bytes
Label  Label       or ID              Interface                    Switched
------ ----------- ------------------ ------------ --------------- ------------
24001  Aggregate   No ID              default                      0
24003  24003       No ID              Gi0/0/0/1    99.1.8.8        0
24004  24004       No ID              Gi0/0/0/1    99.1.8.8        0
24005  24005       No ID              Gi0/0/0/1    99.1.8.8        384
24006  24006       No ID              Gi0/0/0/1    99.1.8.8        0
24007  24007       No ID              Gi0/0/0/1    99.1.8.8        0
24008  Pop         No ID              Gi0/0/0/1    99.1.8.8        0
30111  Aggregate   No ID              default                      0
30112  30112       No ID              Gi0/0/0/1    99.1.8.8        76800
30221  Aggregate   No ID              default                      0
30222  30222       No ID              Gi0/0/0/1    99.1.2.2        0
32000  Pop         No ID              Gi0/0/0/0    99.1.2.2        0
32001  Pop         No ID              Gi0/0/0/1    99.1.8.8        0





RP/0/0/CPU0:xrvr-1#show route 100.0.0.5

Routing entry for 100.0.0.5/32
  Known via "isis 1", distance 115, metric 40, type level-2
  Installed Jun 29 20:53:57.117 for 00:20:57
  Routing Descriptor Blocks
    99.1.2.2, from 100.0.0.5, via GigabitEthernet0/0/0/0
      Route metric is 40
99.1.8.8, from 100.0.0.5, via GigabitEthernet0/0/0/1
Route metric is 40 No advertising protos. RP/0/0/CPU0:xrvr-1#show route 1.1.1.2/32 Routing entry for 1.1.1.2/32 Known via "isis 1", distance 115, metric 220, type level-2 Installed Jun 29 20:34:51.686 for 00:40:17 Routing Descriptor Blocks 99.1.8.8, from 100.0.0.5, via GigabitEthernet0/0/0/1 Route metric is 220 No advertising protos.

RP/0/0/CPU0:xrvr-1#show route 2.2.2.2/32 Routing entry for 2.2.2.2/32 Known via "isis 1", distance 115, metric 220, type level-2 Installed Jun 29 20:55:10.712 for 00:20:03 Routing Descriptor Blocks 99.1.2.2, from 100.0.0.5, via GigabitEthernet0/0/0/0 Route metric is 220 No advertising protos.

NOW THE LINKS R2-R3 and R3-R4 ARE SHUT DOWN - BLUE TAKES THE SAME PATH AS RED (FOR THE REMAINDER OF THE OUTPUT BELOW)

RP/0/0/CPU0:xrvr-1#show cef 100.0.0.5/32 100.0.0.5/32, version 322, internal 0x4000001 0x0 (ptr 0xace1da20) [1], 0x0 (0xace05538), 0x450 (0xacdb93d8) Updated Jun 29 20:53:57.138 local adjacency 99.1.8.8 Prefix Len 32, traffic index 0, precedence n/a, priority 1 via 99.1.8.8, GigabitEthernet0/0/0/1, 7 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xacaf6d80 0x0] next hop 99.1.8.8 local adjacency local label 24005 labels imposed {24005}

RP/0/0/CPU0:xrvr-1#show cef 1.1.1.2/32 1.1.1.2/32, version 304, internal 0x4000001 0x0 (ptr 0xace1d8a0) [1], 0x0 (0xace053ac), 0x450 (0xacdb92c0) Updated Jun 29 20:34:51.715 local adjacency 99.1.8.8 Prefix Len 32, traffic index 0, precedence n/a, priority 1 via 99.1.8.8, GigabitEthernet0/0/0/1, 7 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xacaf6d80 0x0] next hop 99.1.8.8 local adjacency local label 30112 labels imposed {30112}

RP/0/0/CPU0:xrvr-1#show cef 2.2.2.2/32 2.2.2.2/32, version 353, internal 0x4000001 0x0 (ptr 0xace1d920) [1], 0x0 (0xace055a4), 0x450 (0xacdb9388) Updated Jun 29 20:55:10.733 local adjacency 99.1.8.8 Prefix Len 32, traffic index 0, precedence n/a, priority 1 via 99.1.8.8, GigabitEthernet0/0/0/1, 7 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xacaf6d80 0x0] next hop 99.1.8.8 local adjacency local label 30222 labels imposed {30222} R2 RP/0/0/CPU0:xrvr-2# show mpls forwarding Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 24001 Pop No ID Gi0/0/0/0 99.1.2.1 0 24003 24003 No ID Gi0/0/0/2 99.2.8.8 0 24004 24004 No ID Gi0/0/0/2 99.2.8.8 0 24005 24005 No ID Gi0/0/0/2 99.2.8.8 0 24006 24006 No ID Gi0/0/0/2 99.2.8.8 0 24007 24007 No ID Gi0/0/0/2 99.2.8.8 0 24008 Pop No ID Gi0/0/0/2 99.2.8.8 0 30111 Pop No ID Gi0/0/0/0 99.1.2.1 0 30112 30112 No ID Gi0/0/0/2 99.2.8.8 0 30221 Pop No ID Gi0/0/0/0 99.1.2.1 0 30222 30222 No ID Gi0/0/0/2 99.2.8.8 0 32000 Pop No ID Gi0/0/0/0 99.1.2.1 0 32002 Pop No ID Gi0/0/0/2 99.2.8.8 0 RP/0/0/CPU0:xrvr-1#traceroute 1.1.1.2 Type escape sequence to abort. Tracing the route to 1.1.1.2 1 99.1.8.8 [MPLS: Label 30112 Exp 0] 39 msec 29 msec 19 msec 2 99.7.8.7 [MPLS: Label 30112 Exp 0] 19 msec 19 msec 29 msec 3 99.6.7.6 [MPLS: Label 30112 Exp 0] 39 msec 19 msec 39 msec 4 99.5.6.5 19 msec * 29 msec RP/0/0/CPU0:xrvr-1#traceroute 2.2.2.2 Type escape sequence to abort. Tracing the route to 2.2.2.2 1 99.1.8.8 [MPLS: Label 30222 Exp 0] 29 msec 29 msec 19 msec 2 99.7.8.7 [MPLS: Label 30222 Exp 0] 29 msec 39 msec 29 msec 3 99.6.7.6 [MPLS: Label 30222 Exp 0] 29 msec 29 msec 19 msec 4 99.5.6.5 29 msec * 29 msec

Previous page: Securing IOS-XR Devices
Next page: Add/Remove Config