Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
IS-IS User Guide
Table of Contents Expand all
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Example: Configuring SRv6 Network Programming in IS-IS Networks

date_range 20-Feb-24

This example shows how to configure SRv6 network programing in an IS-IS network. This feature is useful for service providers whose networks are predominantly IPv6 and have not deployed MPLS. Such networks depend only on the IPv6 headers and header extensions for transmitting data. SRv6 network programming provides flexibility to leverage segment routing without deploying MPLS.

Requirements

This example uses the following hardware and software components:

  • Eight MX Series routers with MPC7E, MPC8E, or MPC9E line cards

  • Junos OS Release 20.3R1 or later

Overview

Starting in Junos OS Release 20.3R1, you can configure SRv6 without MPLS in a core IPv6 network. SRv6 network programming is the capability of a network to encode a network program into individual network instructions that are then inserted into the IPv6 packet headers. The IPv6 packet carrying the network instructions explicitly tells the network about the precise SRv6 nodes available for packet processing. The network instruction is the SRv6 segment identifier (SID) that is represented by 128-bit IPv6 addresses. These instructions are distributed through the network in the IPv6 packet headers. Along with the addressing, network instructions define a particular task or function for each SRv6-capable node in the SRv6 network. This feature benefits networks that need to deploy SR traffic through transit routers that do not have segment routing capability yet.

Topology

In Figure 1, Router R0 and Router R7 are ingress and egress routers that support IPv4 only devices CE1 and CE2. Routers R1, R2, R3, R4, R5, and R6 comprise an IPv6 only provider core network. All routers belong to the same autonomous system. IS-IS is the interior gateway protocol in the IPv6 core and is configured to support SRv6. In this example the Router R2 is configured as an IPv6 route reflector with IBGP peering sessions to both R0 and R7. No other routers speak BGP in this example.

Note:

To better demonstrate SRv6 tunneling this example is based on a pure IPv6 provider core. SRv6 is supported with a dual stack core where both IPv6 and IPv4 are deployed.

The edge routers that support IPv4 devices need to transport IPv4 traffic using IPv6 tunnel encapsulation. The encapsulation tunnels are derived from SRv6 SIDs configured at SRv6-enabled routers. The IS-IS protocol processes these SRv6 SIDs and updates the inet6.3 table with the next-hop addresses of the available tunnel endpoints. When an IPv4 route is learned through BGP the router attempts to resolve the associated next hop through the inet6.3 table. When a matching entry is found the result is an automatic IPv6 tunnel to the endpoint that advertised the BGP route.

In this example both the R0 and R7 routers advertise their attached IPv4 subnet using BGP. This results in IPv6 tunnels between the edge routers. The tunnels are used to transport the IPv4 traffic over the IPv6 provider core. At egress, the edge routers decapsulate the outer IPv6 header and perform an IPv4 route lookup to forward the packet to its destination.

Figure 1: SRv6 Network Programming in IS-ISSRv6 Network Programming in IS-IS

Configuration

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Router R0

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R1
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:1::1/64
set interfaces xe-0/0/0:2 description To_R4
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:4::1/64
set interfaces xe-0/0/1:0 description To_CE1
set interfaces xe-0/0/1:0 unit 0 family inet address 172.16.10.2/24
set interfaces xe-0/0/1:0 unit 0 family iso
set interfaces lo0 unit 0 family iso address 49.0001.000a.0a0a.0a00
set interfaces lo0 unit 0 family inet6 address 2001:db8:10:255::10/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a0::/64
set routing-options forwarding-table export pplb
set routing-options router-id 172.16.255.10
set policy-options policy-statement CE1_v4 term 1 from protocol direct
set policy-options policy-statement CE1_v4 term 1 from route-filter 172.16.10.0/24 exact
set policy-options policy-statement CE1_v4 term 1 then next-hop 2001:db8:0:a0:d01::
set policy-options policy-statement CE1_v4 term 1 then accept
set routing-options autonomous-system 65550 
set protocols bgp group to-R2RRv6 type internal
set protocols bgp group to-R2RRv6 export CE1_v4
set protocols bgp group to-R2RRv6 local-address 2001:db8:10:255::10
set protocols bgp group to-R2RRv6 neighbor 2001:db8:2:255::2 family inet unicast extended-nexthop
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a0:1a01:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a0:1a04:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a0:d01:: flavor usd
set protocols isis level 1 disable

Router R1

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R0
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:1::2/64
set interfaces xe-0/0/0:2 description To_R2
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:12:1/64
set interfaces xe-0/0/0:3 description to-R4
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:14::1/64
set interfaces xe-0/0/1:0 description to-R5
set interfaces xe-0/0/1:0 mtu 4000
set interfaces xe-0/0/1:0 unit 0 family iso
set interfaces xe-0/0/1:0 unit 0 family inet6 address 2001:db8:15::1/64
set interfaces lo0 unit 0 family iso address 49.0001.0001.0101.0100
set interfaces lo0 unit 0 family inet6 address 2001:db8:1:255::1/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a1::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.1
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a1:1a10:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a1:1a12:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:2.1 node-link-protection
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a1:1a14:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface xe-0/0/1:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a1:1a15:: flavor psp
set protocols isis interface xe-0/0/1:0.0 node-link-protection
set protocols isis interface xe-0/0/1:0.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a1:d11:: flavor usd
set protocols isis level 1 disable

Router R2

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R1
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:12::2/64
set interfaces xe-0/0/0:1 description To_R3
set interfaces xe-0/0/0:1 mtu 4000
set interfaces xe-0/0/0:1 unit 0 family iso
set interfaces xe-0/0/0:1 unit 0 family inet6 address 2001:db8:23::1/64
set interfaces xe-0/0/0:2 description To_R4
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2011:db8:24::1/64
set interfaces xe-0/0/0:3 description To_R5
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:25::1/64
set interfaces xe-0/0/1:0 description To_R6
set interfaces xe-0/0/1:0 mtu 4000
set interfaces xe-0/0/1:0 unit 0 family iso
set interfaces xe-0/0/1:0 unit 0 family inet6 address 2001:db8:26::1/64
set interfaces lo0 unit 0 family iso address 49.0001.0002.0202.0200
set interfaces lo0 unit 0 family inet6 address 2001:db8:2:255::2/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a2::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.2
set routing-options autonomous-system 65550
set protocols bgp group RRv6 type internal
set protocols bgp group RRv6 local-address 2001:db8:2:255::2
set protocols bgp group RRv6 neighbor 2001:db8:10:255::10 family inet unicast extended-nexthop
set protocols bgp group RRv6 neighbor 2001:db8:20:255::20 family inet unicast extended-nexthop
set protocols bgp group RRv6 cluster 192.168.255.2
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a2:1a21:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:1.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a2:1a23:: flavor psp
set protocols isis interface xe-0/0/0:1.0 node-link-protection
set protocols isis interface xe-0/0/0:1.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a2:1a24:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a2:1a25:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface xe-0/0/1:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a2:1a26:: flavor psp
set protocols isis interface xe-0/0/1:0.0 node-link-protection
set protocols isis interface xe-0/0/1:0.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a2:d21:: flavor usd
set protocols isis level 1 disable

Router R3

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R2
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:23::2/64
set interfaces xe-0/0/0:1 description To_R5
set interfaces xe-0/0/0:1 mtu 4000
set interfaces xe-0/0/0:1 unit 0 family iso
set interfaces xe-0/0/0:1 unit 0 family inet6 address 2001:db8:35::1/64
set interfaces xe-0/0/0:2 description To_R6
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 36::1/64
set interfaces xe-0/0/0:3 description To_R7
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:37::1/64
set interfaces lo0 unit 0 family iso address 49.0001.0003.0303.0300
set interfaces lo0 unit 0 family inet6 address 2001:db8:3:255::3/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a3::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.3
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a3:1a32:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:1.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a3:1a35:: flavor psp
set protocols isis interface xe-0/0/0:1.0 node-link-protection
set protocols isis interface xe-0/0/0:1.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a3:1a36:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a3:1a37:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a3:d31:: flavor usd
set protocols isis level 1 disable

Router R4

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R0
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:4::2/64
set interfaces xe-0/0/0:2 description To_R1
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:14::2/64
set interfaces xe-0/0/0:3 description To_R2
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:24::2/64
set interfaces xe-0/0/1:0 description To_R5
set interfaces xe-0/0/1:0 mtu 4000
set interfaces xe-0/0/1:0 unit 0 family iso
set interfaces xe-0/0/1:0 unit 0 family inet6 address 2001:db8:25::1/64
set interfaces lo0 unit 0 family iso address 49.0001.0004.0404.0400
set interfaces lo0 unit 0 family inet6 address 2001:db8:4:255::4/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a4::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.4
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a4:1a40:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a4:1a41:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a4:1a42:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface xe-0/0/1:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a4:1a45:: flavor psp
set protocols isis interface xe-0/0/1:0.0 node-link-protection
set protocols isis interface xe-0/0/1:0.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a4:d41:: flavor usd
set protocols isis level 1 disable

Router R5

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R1
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:15::2/64
set interfaces xe-0/0/0:1 description To_R2
set interfaces xe-0/0/0:1 mtu 4000
set interfaces xe-0/0/0:1 unit 0 family iso
set interfaces xe-0/0/0:1 unit 0 family inet6 address 2001:db8:25::2/64
set interfaces xe-0/0/0:2 description To_R3
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:35::2/64
set interfaces xe-0/0/0:3 description To_R4
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:45::2/64
set interfaces xe-0/0/1:0 description To_R6
set interfaces xe-0/0/1:0 mtu 4000
set interfaces xe-0/0/1:0 unit 0 family iso
set interfaces xe-0/0/1:0 unit 0 family inet6 address 2001:db8:56::1/64
set interfaces lo0 unit 0 family iso address 49.0001.0005.0505.0500
set interfaces lo0 unit 0 family inet6 address 2001:db8:5:255::5/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a5::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.5
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a5:1a51:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:1.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a5:1a52:: flavor psp
set protocols isis interface xe-0/0/0:1.0 node-link-protection
set protocols isis interface xe-0/0/0:1.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a5:1a53:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a5:1a54:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface xe-0/0/1:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a5:1a56:: flavor psp
set protocols isis interface xe-0/0/1:0.0 node-link-protection
set protocols isis interface xe-0/0/1:0.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a5:d51:: flavor usd
set protocols isis level 1 disable

Router R6

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R2
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:26::2/64
set interfaces xe-0/0/0:1 description To_R3
set interfaces xe-0/0/0:1 mtu 4000
set interfaces xe-0/0/0:1 unit 0 family iso
set interfaces xe-0/0/0:1 unit 0 family inet6 address 2001:db8:36::2/128
set interfaces xe-0/0/0:2 description To_R5
set interfaces xe-0/0/0:2 mtu 4000
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:56::2/128
set interfaces xe-0/0/0:3 description To_R7
set interfaces xe-0/0/0:3 mtu 4000
set interfaces xe-0/0/0:3 unit 0 family iso
set interfaces xe-0/0/0:3 unit 0 family inet6 address 2001:db8:67::1/128
set interfaces lo0 unit 0 family iso address 49.0001.0006.0606.0600
set interfaces lo0 unit 0 family inet6 address 2001:db8:6:255::6/128
set policy-options policy-statement pplb then load-balance per-packet
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a6::/64
set routing-options forwarding-table export pplb
set routing-options router-id 192.168.255.6
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a6:1a62:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:1.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a6:1a63:: flavor psp
set protocols isis interface xe-0/0/0:1.0 node-link-protection
set protocols isis interface xe-0/0/0:1.0 point-to-point
set protocols isis interface xe-0/0/0:2.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a6:1a65:: flavor psp
set protocols isis interface xe-0/0/0:2.0 node-link-protection
set protocols isis interface xe-0/0/0:2.0 point-to-point
set protocols isis interface xe-0/0/0:3.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a6:1a67:: flavor psp
set protocols isis interface xe-0/0/0:3.0 node-link-protection
set protocols isis interface xe-0/0/0:3.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a6:d61:: flavor usd
set protocols isis level 1 disable

Router R7

content_copy zoom_out_map
set interfaces xe-0/0/0:0 description To_R3
set interfaces xe-0/0/0:0 mtu 4000
set interfaces xe-0/0/0:0 unit 0 family iso
set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:37::2/64
set interfaces xe-0/0/0:1 description To_R6
set interfaces xe-0/0/0:1 mtu 4000
set interfaces xe-0/0/0:1 unit 0 family iso
set interfaces xe-0/0/0:1 unit 0 family inet6 address 2001:db8:67::2/128
set interfaces xe-0/0/0:2 description To_CE2
set interfaces xe-0/0/0:2 unit 0 family inet address 172.16.20.2/24
set interfaces xe-0/0/0:2 unit 0 family iso
set interfaces lo0 unit 0 family iso address 49.0001.0007.0707.0700
set interfaces lo0 unit 0 family inet6 address 2001:db8:20:255::20/32
set policy-options policy-statement pplb then load-balance per-packet
set policy-options policy-statement CE2_v4 term 1 from protocol direct
set policy-options policy-statement CE2_v4 term 1 from route-filter 172.16.20.0/24 exact
set policy-options policy-statement CE2_v4 term 1 then next-hop 2001:db8:0:a7:d71::
set policy-options policy-statement CE2_v4 term 1 then accept
set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a7::/64
set routing-options forwarding-table export pplb
set routing-options router-id 172.16.255.20
set routing-options autonomous-system 65550
set protocols bgp group to-R2RRv6 type internal
set protocols bgp group to-R2RRv6 local-address 2001:db8:20:255::20
set protocols bgp group to-R2RRv6 neighbor 2001:db8:2:255::2 family inet unicast extended-nexthop
set protocols bgp group to-R2RRv6 export CE2_v4
set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a7:1a73:: flavor psp
set protocols isis interface xe-0/0/0:0.0 node-link-protection
set protocols isis interface xe-0/0/0:0.0 point-to-point
set protocols isis interface xe-0/0/0:1.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a7:1a76:: flavor psp
set protocols isis interface xe-0/0/0:1.0 node-link-protection
set protocols isis interface xe-0/0/0:1.0 point-to-point
set protocols isis interface lo0.0 passive
set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a7:d71:: flavor usd
set protocols isis level 1 disable

Configuring Router R0

The following example requires that you navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure SRv6 network programming to support IPv4 tunnels over a IPv6 core, perform the following steps on the R0 router:

Step-by-Step Procedure

  1. Configure the device interfaces to enable IP transport.

    content_copy zoom_out_map
    [edit]
    user@R0# set interfaces xe-0/0/0:0 description To_R1_1
    user@R0# set interfaces xe-0/0/0:0 vlan-tagging
    user@R0# set interfaces xe-0/0/0:0 unit 0 vlan-id 1
    user@R0# set interfaces xe-0/0/0:0 unit 0 family inet address 10.11.1.1/24
    user@R0# set interfaces xe-0/0/0:0 unit 0 family iso
    user@R0# set interfaces xe-0/0/0:0 unit 0 family inet6 address 2001:db8:1001::1/32
    user@R0# set interfaces xe-0/0/0:2 description To_R4_1
    user@R0# set interfaces xe-0/0/0:2 vlan-tagging
    user@R0# set interfaces xe-0/0/0:2 unit 0 vlan-id 1
    user@R0# set interfaces xe-0/0/0:2 unit 0 family inet address 10.21.1.1/24
    user@R0# set interfaces xe-0/0/0:2 unit 0 family iso
    user@R0# set interfaces xe-0/0/0:2 unit 0 family inet6 address 2001:db8:2021::1/32
    user@R0# set interfaces xe-0/0/1:0 description to_RT
    user@R0# set interfaces xe-0/0/1:0 vlan-tagging
    user@R0# set interfaces xe-0/0/1:0 unit 1 vlan-id 1
    user@R0# set interfaces xe-0/0/1:0 unit 1 family inet address 172.20.1.1/24
    user@R0# set interfaces xe-0/0/1:0 unit 1 family iso
    user@R0# set interfaces xe-0/0/1:0 unit 1 family inet6 address 2001:db8::20:1:1:1/120
    user@R0# set interfaces xe-0/0/1:0 unit 4 vlan-id 4
    user@R0# set interfaces xe-0/0/1:0 unit 4 family inet address 172.20.2.1/24 
    user@R0# set interfaces xe-0/0/1:0 unit 4 family iso
    user@R0# set interfaces xe-0/0/1:0 unit 4 family inet6 address 2001:db8::20:2:1:1/120
    
  2. Configure the loopback interface with IPv4 and IPv6 addresses that is used as router ID for BGP sessions.

    content_copy zoom_out_map
    [edit]
    user@R0# set interfaces lo0 unit 0 family inet address 192.168.0.10/32
    user@R0# set interfaces lo0 unit 0 family iso address 49.0001.000a.0a0a.0a00
    user@R0# set interfaces lo0 unit 0 family inet6 address 2001:db8::10:10:10:10/32
    
  3. Configure the router ID and autonomous system (AS) number to propagate routing information within a set of routing devices that belong to the same AS.

    content_copy zoom_out_map
    [edit]
    user@R0# set routing-options router-id 10.10.10.10
    user@R0# set routing-options autonomous-system 65550
    
  4. Enable SRv6 globally and the locator address to indicate the SRv6 capability of the router. SRv6 SID is an IPv6 address that consists of the locator and a function. The routing protocols advertise the locator addresses.

    content_copy zoom_out_map
    [edit]
    user@R0# set routing-options source-packet-routing srv6 locator myloc 2001:db8:0:a0::/64
  5. Configure the End-Sid function for the prefix segments. Specify a flavor, that is the behavior of the End-SID function as per your network requirements. Penultimate Segment Pop (PSP), Ultimate Segment Pop (USP), and Ultimate Segment Decapsulation (USP) are the three available flavors for SRv6 functions.

    Note:

    Ensure that the locator and the End-SID are in the same subnet to avoid a commit error.

    content_copy zoom_out_map
    [edit]
    user@R0# set protocols isis source-packet-routing srv6 locator myloc end-sid 2001:db8:0:a0:d01:: flavor usd
    user@R0# set protocols isis source-packet-routing srv6 locator myloc1 end-sid 2001:db8:0:a10:d01:: flavor usd
    user@R0# set protocols isis source-packet-routing srv6 locator myloc2 end-sid 2001:db8:0:a20:d01:: flavor usd
    user@R0# set protocols isis source-packet-routing srv6 locator myloc3 end-sid 2001:db8:0:a30:d01:: flavor usd
    user@R0# set protocols isis source-packet-routing srv6 locator myloc4 end-sid 2001:db8:0:a40:d01:: flavor usp
    user@R0# set protocols isis source-packet-routing srv6 locator myloc4 end-sid 2001:db8:0:a40:d01:: flavor usd
    user@R0# set protocols isis level 1 disable
    
  6. Configure End-X-SID function on the point-to-point (P2P) interface for the adjacency segments. Specify one or more flavor for the End-X-SID.

    Note:

    Ensure that the Locator and End-X-SID are in the same subnet to avoid a commit error. You must enable SRv6 and configure the locator at the [edit routing-options] before mapping locators to interfaces.

    Whenever you configure an srv6-adjacency-segment you must also configure the related locator under the protocols isis source-packet-routing srv6 locator hierarchy, as shown in step 5.
    content_copy zoom_out_map
    [edit]
    user@R0# set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc end-x-sid 2001:db8:0:a0:1a01:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc1 end-x-sid 2001:db8:0:a10:1a01:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc2 end-x-sid 2001:db8:0:a20:1a01:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc3 end-x-sid 2001:db8:0:a30:1a01:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:0.0 level 2 srv6-adjacency-segment protected locator myloc4 end-x-sid 2001:db8:0:a40:1a01:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:0.0 node-link-protection
    user@R0# set protocols isis interface xe-0/0/0:0.0 point-to-point
    
  7. Configure SRv6 options for the adjacency segment of the LAN interface xe-0/0/0:2.0. Specify a flavor as per your network requirements. Penultimate Segment Pop (PSP), Ultimate Segment Pop (USP), and Ultimate Segment Decapsulation (USP) are the three available flavors for the SRv6 adjacency segment.

    Note:

    Ensure that the Locator and End-X-Sid are in the same subnet to avoid a commit error. You must enable SRv6 and configure the locator at the [edit routing-options] before mapping locators to interfaces.

    content_copy zoom_out_map
    [edit]
    user@R0# set protocols isis interface xe-0/0/0:2.0 level 2 lan-neighbor 0100.0404.0404 srv6-adjacency-segment unprotected locator myloc end-x-sid 2001:db8:0:a0:1a04:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:2.0 level 2 lan-neighbor 0100.0404.0404 srv6-adjacency-segment unprotected locator myloc1 end-x-sid 2001:db8:0:a10:1a04:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:2.0 level 2 lan-neighbor 0100.0404.0404 srv6-adjacency-segment unprotected locator myloc2 end-x-sid 2001:db8:0:a20:1a04:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:2.0 level 2 lan-neighbor 0100.0404.0404 srv6-adjacency-segment unprotected locator myloc3 end-x-sid 2001:db8:0:a30:1a04:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:2.0 level 2 lan-neighbor 0100.0404.0404 srv6-adjacency-segment unprotected locator myloc4 end-x-sid 2001:db8:0:a40:1a04:: flavor usd
    user@R0# set protocols isis interface xe-0/0/0:2.0 node-link-protection
    user@R0# set protocols isis interface xe-0/0/1:0.1
    user@R0# set protocols isis interface fxp0.0 disable
    user@R0# set protocols isis interface lo0.0 passive
    
  8. Configure BGP on the core-facing interface to establish internal peering sessions.

    content_copy zoom_out_map
    [edit]
    user@R0# set protocols bgp group to-PEv6 type internal
    user@R0# set protocols bgp group to-PEv6 local-address abcd::10:10:10:10
    user@R0# set protocols bgp group to-PEv6 neighbor abcd::2:2:2:2 family inet unicast extended-nexthop
    user@R0# set protocols bgp group to-PE2 type internal
    user@R0# set protocols bgp group to-PE2 local-address 10.10.10.10
    user@R0# set protocols bgp group to-PE2 neighbor 2.2.2.2 family inet6 unicast
    user@R0# set protocols bgp group to-PE2 neighbor 2.2.2.2 family inet6-vpn unicast
    
  9. Define a policy to load balance packets.

    content_copy zoom_out_map
    [edit]
    user@R0# set policy-options policy-statement pplb then load-balance per-packet
    
  10. Apply the per-packet policy to enable load balancing of traffic.

    content_copy zoom_out_map
    [edit]
    user@R0# set routing-options forwarding-table export pplb
    

Results

From configuration mode, confirm your configuration by entering the show interfaces, show protocols, show policy-options, and show routing-options commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

content_copy zoom_out_map
[edit]
user@R0# show interfaces
xe-0/0/0:0 {
    description To_R1;
    mtu 4000;
    unit 0 {
        family iso;
        family inet6 {
            address 2001:db8:1::1/64;
        }
    }
}
xe-0/0/0:2 {
    description To_R4;
    mtu 4000;
    unit 0 {
        family iso;
        family inet6 {
            address 2001:db8:4::1/64;
        }
    }
}
xe-0/0/1:0 {
    description To_CE1;
    unit 0 {
        family inet {
            address 172.16.10.2/24;
        }
        family iso;
    }
}
lo0 {
    unit 0 {
        family iso {
            address 49.0001.000a.0a0a.0a00;
        }
        family inet6 {
            address 2001:db8:10:255::10/128;
        }
    }
}
content_copy zoom_out_map
[edit]
user@R0# show protocols
bgp {
    group to-R2RRv6 {
        type internal;
        local-address 2001:db8:10:255::10;
        export CE1_v4;
        neighbor 2001:db8:2:255::2 {
            family inet {
                unicast {
                    extended-nexthop;
                }
            }
        }
    }
}
isis {
    interface xe-0/0/0:0.0 {
        level 2 {
            srv6-adjacency-segment {
                protected {
                    locator myloc {
                        end-x-sid 2001:db8:0:a0:1a01:: {
                            flavor psp;
                        }
                    }
                }
            }
        }
        node-link-protection;
        point-to-point;
    }
    interface xe-0/0/0:2.0 {
        level 2 {
            srv6-adjacency-segment {
                protected {
                    locator myloc {
                        end-x-sid 2001:db8:0:a0:1a04:: {
                            flavor psp;
                        }
                    }
                }
            }
        }
        node-link-protection;
        point-to-point;
    }
    interface lo0.0 {
        passive;
    }
    source-packet-routing {
        srv6 {
            locator myloc {
                end-sid 2001:db8:0:a0:d01:: {
                    flavor {
                        usd;
                    }
                }
            }
        }
    }
    level 1 disable;
}
content_copy zoom_out_map
[edit]
user@R0# show policy-options
policy-statement CE1_v4 {
    term 1 {
        from {
            protocol direct;
            route-filter 172.16.10.0/24 exact;
        }
        then {
            next-hop 2001:db8:0:a0:d01::;
            accept;
        }
    }
}
policy-statement pplb {
    then {
        load-balance per-packet;
    }
}
content_copy zoom_out_map
[edit]
user@R0# show routing-options
source-packet-routing {
    srv6 {
        locator myloc 2001:db8:0:a0::/64;
    }
}
forwarding-table {
    export pplb;
}
router-id 172.16.255.10;
autonomous-system 65550;

When done configuring the device, enter commit from configuration mode.

Verification

Confirm that the configuration is working properly.

Verifying IS-IS Adjacency and IBGP Session

Purpose

Verify IS-IS adjacencies and IBGP session at R2. R2 is chosen for this task because it has 5 adjacencies and also serves as the router reflector for the BGP control plane.

Note:

Its a good idea to confirm the IS-IS adjacencies on all routers before proceeding to the remaining verification steps. A successful SRv6 deployment requires that the interior gateway protocol is operational on all nodes.

Action

From operational mode, run the show isis adjacency command on router R2.

content_copy zoom_out_map
user@R2> show isis adjacency
Interface             System         L State        Hold (secs) SNPA
xe-0/0/0:0.0          R1             2  Up                   26
xe-0/0/0:1.0          R3             2  Up                   25
xe-0/0/0:2.0          R4             2  Up                   25
xe-0/0/0:3.0          R5             2  Up                   24
xe-0/0/1:0.0          R6             2  Up                   18

From operational mode, run the show bgp summary command on router R2.

content_copy zoom_out_map
user@R2> show bgp summary
Threading mode: BGP I/O
Default eBGP mode: advertise - accept, receive - accept
Groups: 1 Peers: 2 Down peers: 0
Table          Tot Paths  Act Paths Suppressed    History Damp State    Pending
inet.0               
                       2          2          0          0          0          0
inet6.0              
                       0          0          0          0          0          0
Peer                     AS      InPkt     OutPkt    OutQ   Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped...
2001:db8:10:255::10       65550       3101       3092       0       0    23:14:18 Establ
  inet.0: 1/1/1/0
2001:db8:20:255::20       65550       3091       3080       0       0    23:10:10 Establ
  inet.0: 1/1/1/0

Meaning

The output confirms the expected IS-IS adjacency count for the R2 router. It also confirms that R2 has established IPv6 based BGP sessions to both the R0 and R7 routers.

Verify SRv6 is Enabled

Purpose

Verify that SRv6 is enabled with a locator, End-SID, and flavor on Router R0.

Action

From operational mode, run the show isis overview command on Router R0.

content_copy zoom_out_map
user@R0> show isis overview
Instance: master
  Router ID: 172.16.255.10
  IPv6 Router ID: 2001:db8:1::1
  Hostname: R0
  Sysid: 0100.0a0a.0a0a
  Areaid: 49.00
  Adjacency holddown: enabled
  Maximum Areas: 3
  LSP life time: 1200
  Attached bit evaluation: enabled
  SPF delay: 200 msec, SPF holddown: 5000 msec, SPF rapid runs: 3
  IPv4 is enabled, IPv6 is enabled
  Traffic engineering: enabled
  Restart: Disabled
    Helper mode: Enabled
  Layer2-map: Disabled
  Source Packet Routing (SPRING): Enabled
    Node Segments: Disabled
   SRv6: Enabled 
     Locator: 2001:db8:0:a0::/64, Algorithm: 0
        END-SID: 2001:db8:0:a0:d01::, Flavor: USD 
  Post Convergence Backup: Disabled
  Level 1
    Internal route preference: 15
    External route preference: 160
    Prefix export count: 0
    Wide metrics are enabled, Narrow metrics are enabled
    Source Packet Routing is enabled
  Level 2                               
    Internal route preference: 18
    External route preference: 165
    Prefix export count: 0
    Wide metrics are enabled, Narrow metrics are enabled
    Source Packet Routing is enabled

Meaning

The configured SRv6 locator SRv6: Enabled Locator: 2001:db8:0:a0::/64, Algorithm: 0 and , End-SID and flavor END-SID: 2001:db8:0:a0:d01::, Flavor: USD are displayed in the output.

Verify the SRv6 End-X-SID Configuration

Purpose

Verify that an End-X-SID function and flavor are configured on R0.

Action

From operational mode, run the show isis adjacency detail command on Router R0.

content_copy zoom_out_map
user@R0> show isis adjacency detail
R1
  Interface: xe-0/0/0:0.0, Level: 2, State: Up, Expires in 19 secs
  Priority: 0, Up/Down transitions: 1, Last transition: 03:51:48 ago
  Circuit type: 2, Speaks: IP, IPv6
  Topologies: Unicast
  Restart capable: Yes, Adjacency advertisement: Advertise
  IP addresses: 192.168.255.1
  IPv6 addresses: fe80::2e6b:f5ff:fedb:e800
  IPv6 Global Interface Address: 2001:db8:1::2
  Level 2 SRv6 protected END-X-SID: 2001:db8:0:a0:1a01::
    Flavor: PSP, Flags: B-P, Algorithm: 0

R4
  Interface: xe-0/0/0:2.0, Level: 2, State: Up, Expires in 20 secs
  Priority: 0, Up/Down transitions: 1, Last transition: 03:48:04 ago
  Circuit type: 2, Speaks: IP, IPv6
  Topologies: Unicast
  Restart capable: Yes, Adjacency advertisement: Advertise
  IP addresses: 192.168.255.4
  IPv6 addresses: fe80::2e6b:f5ff:feb4:4000
  IPv6 Global Interface Address: 2001:db8:4::2
  Level 2 SRv6 protected END-X-SID: 2001:db8:0:a0:1a04::
    Flavor: PSP, Flags: B-P, Algorithm: 0

Meaning

The field SRv6 protected END-X-SID: 2001:db8:0:a0:1a01:: indicates that End-X-SID function with Flavor PSP has been configured on router R0 for the interface used to attach to R1. Similar output is confirmed for the interface connected to R4, which uses a different End-X-SID.

Verifying the Locator Route is Installed

Purpose

Verify that the locator route has been installed.

Action

From operational mode, run the show route 2001:db8:0:a0::/64 detail command on router R0.

content_copy zoom_out_map
user@R0> show route 2001:db8:0:a0::/64 detail
inet6.0: 75 destinations, 75 routes (75 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

2001:db8:0:a0::/64*[IS-IS/18] 3d 19:03:16, metric 0
                       Reject

user@R0> show route 2001:db8:0:a0::/64 detail 
inet6.0: 45 destinations, 45 routes (45 active, 0 holddown, 0 hidden)
2001:db8:0:a0::/64 (1 entry, 1 announced)
        *IS-IS  Preference: 18
                Level: 2
                Next hop type: Reject, Next hop index: 0
                Address: 0xc54526c
                Next-hop reference count: 2
                State: <Active Int OpaqueData>
                Local AS: 65550 
                Age: 22:15:32   Metric: 0 
                Validation State: unverified 
                ORR Generation-ID: 0 
                Task: IS-IS
                Announcement bits (2): 0-KRT 5-Resolve tree 5 
                AS path: I 
		. . .

Meaning

The output confirms the locator route 2001:db8:0:a0::/64*[IS-IS/18] is installed in the inet6.0 table.

Verifying the End-X-SID Route is Installed

Purpose

To display the configured End-X-SID route information that is applied at the interface.

Action

From operational mode, run the show route 2001:db8:0:a0:1a01:: command on Router R0.

content_copy zoom_out_map
user@R0> show route 2001:db8:0:a0:1a01::
inet6.0: 45 destinations, 45 routes (45 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

2001:db8:0:a0::1a01/128 
                   *[IS-IS/18] 04:33:42, metric 0
                    >  to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0

Meaning

The output confirms the End-X-SID route 2001:db8:0:a0::1a01/128 is installed in the inet.6.0 routing table.

Verifying the End-SID Route is Installed

Purpose

Verify that the End-SID routes for all routers in the SRv6 domain are installed in the inet6.3 table at Router R0.

Action

From operational mode, run the show route table inet6.3 protocol isis command on Router R0 to see all End-SIDs the router has learned. Then display detailed information about the End-SID associated with the R7 router.

content_copy zoom_out_map
user@R0> show route table inet6.3 protocol isis
inet6.3: 7 destinations, 7 routes (7 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

2001:db8:0:a1::d11/128
                   *[SRV6-ISIS/14] 04:39:22, metric 10
                    >  to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a1:d11::
2001:db8:0:a2::d21/128
                   *[SRV6-ISIS/14] 04:35:38, metric 20
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a2:d21::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a2:d21::
2001:db8:0:a3::d31/128
                   *[SRV6-ISIS/14] 04:35:38, metric 30
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a3:d31::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a3:d31::
2001:db8:0:a4::d41/128
                   *[SRV6-ISIS/14] 04:35:38, metric 10
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a4:d41::
2001:db8:0:a5::d51/128
                   *[SRV6-ISIS/14] 04:35:01, metric 20
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a5:d51::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a5:d51::
2001:db8:0:a6::d61/128
                   *[SRV6-ISIS/14] 04:34:32, metric 30
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a6:d61::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a6:d61::
2001:db8:0:a7::d71/128
                   *[SRV6-ISIS/14] 04:33:00, metric 40
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a7:d71::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a7:d71::

user@R0> show route 2001:db8:0:a7::d71/128 detail

inet6.3: 7 destinations, 7 routes (7 active, 0 holddown, 0 hidden)
2001:db8:0:a7::d71/128 (1 entry, 1 announced)
        *SRV6-ISIS Preference: 14
                Level: 2
                Next hop type: List, Next hop index: 1048577
                Address: 0xdb8deb4
                Next-hop reference count: 6
                Next hop: ELNH Address 0xc5462d4 weight 0x1
                    Next hop type: Chain, Next hop index: 582
                    Address: 0xc5462d4
                    Next-hop reference count: 1
                    Next hop: ELNH Address 0xc545bcc
                    SRV6-Tunnel: Reduced-SRH Encap-mode 
                     Src: 2001:db8:1::1 Dest: 2001:db8:0:a7:d71::
                     Segment-list[0] 2001:db8:0:a7:d71::
                        Next hop type: Router, Next hop index: 580
                        Address: 0xc545bcc
                        Next-hop reference count: 9
                        Next hop: fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0 weight 0x1
                Next hop: ELNH Address 0xc546338 weight 0x1, selected
                    Next hop type: Chain, Next hop index: 583
                    Address: 0xc546338
                    Next-hop reference count: 1
                    Next hop: ELNH Address 0xc545f50
                    SRV6-Tunnel: Reduced-SRH Encap-mode 
                     Src: 2001:db8:1::1 Dest: 2001:db8:0:a7:d71::
                     Segment-list[0] 2001:db8:0:a7:d71::
                        Next hop type: Router, Next hop index: 581
                        Address: 0xc545f50
                        Next-hop reference count: 9
                        Next hop: fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0 weight 0x1
                State: <Active NoReadvrt Int OpaqueData>
                Local AS: 65550 
                Age: 4:35:43    Metric: 40 
                Validation State: unverified 
                ORR Generation-ID: 0 
                Task: IS-IS
                Announcement bits (3): 0-Resolve tree 2 1-Resolve tree 5 2-Resolve_IGP_FRR task 
                AS path: I 
                Session-IDs associated:
                Session-id: 322 Version: 0

Meaning

The output confirms that Router R0 has learned End-SIDs, that is, 2001:db8:0:a1::d11/128 and 2001:db8:0:a2::d21/128, from all other routers in the topology. Note the End-SIDs have been installed in the inet6.3 table. The detailed output for the End-SID advertised by R7 2001:db8:0:a7:d71:: confirms an SRv6 tunnel has been established between Router R0 and Router R7.

Note that the segment list is populated with the End-SID value configured on the Router R7. Recall that all End-SIDs in this example are configured with the Ultimate Segment Decapsulate (USD) flavor. It’s the combination of a local End-SID and the associated USD flavor that tells R7 it’s the egress of the IPv6 tunnel. Upon receipt R7 decapsulates the IPv4 packet and routes it according to the IPv4 destination address.

Verify the SRv6 Configuration in the IS-IS Database

Purpose

Display the IS-IS database to verify the End-SID and flavor configured at Router R7. In this example the command is executed on Router R0. Similar output is expected on all router because the IS-IS database is replicated to all nodes.

Action

From operational mode, run the show isis database R7.00-00 extensive command on Router R0.

content_copy zoom_out_map
user@R0> show isis database R.00-00 extensive
IS-IS level 1 link-state database:

IS-IS level 2 link-state database:

R7.00-00 Sequence: 0x31f, Checksum: 0x2ce6, Lifetime: 904 secs
   IS neighbor: R3.00                         Metric:       10
     Two-way fragment: R3.00-00, Two-way first fragment: R3.00-00
   IS neighbor: R6.00                         Metric:       10
     Two-way fragment: R6.00-00, Two-way first fragment: R6.00-00
   V6 prefix: 2001:db8::/32                   Metric:        0 Internal Up
   V6 prefix: 2001:db8:0:a7::/64              Metric:        0 Internal Up
   V6 prefix: 2001:db8:20:255::20/128         Metric:        0 Internal Up
   V6 prefix: 2001:db8:37::/64                Metric:       10 Internal Up
   V6 prefix: 2001:db8:67::2/128              Metric:       10 Internal Up

  Header: LSP ID: R7.00-00, Length: 445 bytes
    Allocated length: 746 bytes, Router ID: 172.16.255.20
    Remaining lifetime: 904 secs, Level: 2, Interface: 360
    Estimated free bytes: 0, Actual free bytes: 301
    Aging timer expires in: 904 secs
    Protocols: IP, IPv6

  Packet: LSP ID: R7.00-00, Length: 445 bytes, Lifetime : 1192 secs
    Checksum: 0x2ce6, Sequence: 0x31f, Attributes: 0x3 <L1 L2>
    NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
    Packet type: 20, Packet version: 1, Max area: 0

  TLVs:
    Area address: 49.00 (2)             
    LSP Buffer Size: 1492
    Speaks: IP
    Speaks: IPV6
    IP router id: 172.16.255.20
    IP address: 172.16.255.20
    IPv6 TE Router ID: 2001:db8:20:255::20
    Hostname: R7
    SRv6 Locator: 2001:db8:0:a7::/64, Metric: 0, MTID: 0, Flags: 0x0, Algorithm: 0
      SRv6 SID: 2001:db8:0:a7:d71::, Flavor: USD
    IPv6 prefix: 2001:db8:20:255::20/128 Metric 0 Up
    IPv6 prefix: 2001:db8::/32 Metric 0 Up
    IPv6 prefix: 2001:db8:0:a7::/64 Metric 0 Up
    IPv6 prefix: 2001:db8:37::/64 Metric 10 Up
    IPv6 prefix: 2001:db8:67::2/128 Metric 10 Up
    Router Capability:  Router ID 172.16.255.20, Flags: 0x00
      SPRING Algorithm - Algo: 0
      SRv6 Capability - Flags: 0
      Node MSD Advertisement Sub-TLV:Type:  23, Length: 10
      SRv6 Maximum Segments Left MSD:Type:  41, Value: 6
      SRv6 Maximum Pop MSD:Type:  42, Value: 7
      SRv6 Maximum Insert MSD:Type:  43, Value: 5
      SRv6 Maximum Encap MSD:Type:  44, Value: 6
      SRv6 Maximum End D MSD:Type:  45, Value: 6
      IPv6 TE Router Id: 2001:db8:20:255::20
    IS neighbor: R6.00, Internal, Metric: default 10
    IS neighbor: R3.00, Internal, Metric: default 10
    Extended IS Reachability TLV, Type: 22, Length: 174
    IS extended neighbor: R6.00, Metric: default 10 SubTLV len: 76
      IPv6 address: 2001:db8:67::2
      Neighbor's IP address: 192.168.255.6
      Neighbor's IPv6 address: 2001:db8:67::1
      Local interface index: 361, Remote interface index: 364
      P2P SRV6 END-X-SID:2001:db8:0:a7:1a76:: , Flags:B-P, Weight:0, Algorithm:0
       Flags:0xa0(B:1,S:0,P:1), Flavor: PSP 
    IS extended neighbor: R3.00, Metric: default 10 SubTLV len: 76
      IPv6 address: 2001:db8:37::2
      Neighbor's IP address: 192.168.255.3
      Neighbor's IPv6 address: 2001:db8:37::1
      Local interface index: 360, Remote interface index: 336
      P2P SRV6 END-X-SID:2001:db8:0:a7:1a73:: , Flags:B-P, Weight:0, Algorithm:0
       Flags:0xa0(B:1,S:0,P:1), Flavor: PSP 
  No queued transmissions

Meaning

The presence of SRv6 SID: 2001:db8:0:a7:d71:: with Flavor: USD confirms that SRv6 is enabled with a SID decapsulate flavor on the R7 router. The output also shows that the interfaces at R7 have been configured for TI-LFA protection using a PSP flavor.

Verifying the Route to CE2 Uses an SRv6 Tunnel

Purpose

Display the route to the IPv4 subnet at R7 to confirm the next hop points to an SRv6 tunnel.

Action

From operational mode, run the show route 172.16.20.0/24 command on router R0.

content_copy zoom_out_map
user@R0> show route 172.16.20.0/24

inet.0: 36 destinations, 36 routes (36 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

172.16.20.0/24     *[BGP/170] 05:20:58, localpref 100, from 2001:db8:2:255::2
                      AS path: I, validation-state: unverified
                       to fe80::2e6b:f5ff:fedb:e800 via xe-0/0/0:0.0, SRV6-Tunnel, Dest: 2001:db8:0:a7:d71::
                    >  to fe80::2e6b:f5ff:feb4:4000 via xe-0/0/0:2.0, SRV6-Tunnel, Dest: 2001:db8:0:a7:d71::

Meaning

The output confirms that R0 has learned the route to the 172.16.20.0/24 subnet through its BGP session to R2, which recall is configured as a route reflector in this example. The next hops confirm that an SRv6 tunnel to the R7 router has been installed for this route. Two next hops are available in keeping with their being two equal cost paths between the R0 and R7 routers in the example topology.

Test IPv4 Connectivity Between CE1 and CE2

Purpose

Generate pings to verify IPv4 connectivity between the CE devices over the IPv6 provider core.

Action

From operational mode, run the ping 172.16.20.2 source 172.16.10.2 count 2 command on router R0.

content_copy zoom_out_map
user@R0> ping 172.16.20.2 source 172.16.10.2 count 2
PING 172.16.20.2 (172.16.20.2): 56 data bytes
64 bytes from 172.16.20.2: icmp_seq=0 ttl=64 time=114.922 ms
64 bytes from 172.16.20.2: icmp_seq=1 ttl=64 time=89.558 ms

--- 172.16.20.2 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 89.558/102.240/114.922/12.682 ms

Meaning

The output confirms IPv4 connectivity is working between the CE device networks. This provides verification that SRv6 tunneling over an IPv6 provider core is working properly in this example.

footer-navigation