11-Segment Routing Configuration Guide

HomeSupportConfigure & DeployConfiguration GuidesH3C MSR1000[2600][3600] Routers Configuration Guides(V9)-R9119-6W10011-Segment Routing Configuration Guide
06-EVPN VPWS over SRv6 configuration
Title Size Download
06-EVPN VPWS over SRv6 configuration 269.21 KB

Contents

Configuring EVPN VPWS over SRv6· 1

About EVPN VPWS over SRv6· 1

Basic principle· 1

BGP EVPN route advertisement 1

Traffic forwarding· 1

EVPN VPWS over SRv6 multihoming· 3

Bypass SRv6 PW·· 3

EVPN VPWS over SRv6 tasks at a glance· 4

Enabling L2VPN· 5

Configuring a cross-connect group and its EVPN instance· 5

Configuring SRv6 SIDs· 6

Applying a locator to a cross-connect 6

Configuring the route recursion mode· 7

Configuring SRv6 TE policy traffic steering· 8

Restrictions and guidelines for SRv6 TE policy traffic steering· 8

Configuring color-based traffic steering· 8

Configuring tunnel policy-based traffic steering· 9

Mapping an AC to a cross-connect 10

Mapping a Layer 3 interface to a cross-connect 10

Configuring PEs to exchange BGP EVPN routes· 10

Specifying a source address for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets· 11

Configuring EVPN VPWS over SRv6 multihoming· 12

Restrictions and guidelines for EVPN VPWS over SRv6 multihoming· 12

Assigning an ESI to an interface· 12

Setting the redundancy mode on an interface· 12

Configuring bypass PW·· 13

Configuring SRv6 PW packet statistics· 14

Test the connectivity of an SRv6 PW·· 14

Using ping to test the connectivity of an SRv6 PW·· 14

Using tracert to test the connectivity of an SRv6 PW·· 15

Verifying and maintaining EVPN VPWS over SRv6· 16

Displaying BGP EVPN route information· 16

Displaying EVPN VPWS over SRv6 running status· 16

Displaying EVPN VPWS over SRv6 forwarding information· 17

Clearing EVPN VPWS over SRv6 statistics· 17

EVPN VPWS over SRv6 configuration examples· 17

Example: Setting up an SRv6 tunnel between single-homed EVPN VPWS sites· 17

 


Configuring EVPN VPWS over SRv6

About EVPN VPWS over SRv6

EVPN VPWS over SRv6 uses SRv6 tunnels to carry EVPN VPWS services. This technology establishes point-to-point connections between customer sites over the IPv6 backbone network and transparently forwards Layer 2 customer traffic over the IPv6 backbone network. For more information about EVPN VPWS configuration, see EVPN Configuration Guide.

Basic principle

As shown in Figure 1, PEs set up an SRv6 tunnel by advertising End.DX2 SIDs to each other through BGP EVPN routes. On a PE, this SRv6 tunnel is used as a PW to encapsulate and forward Layer 2 data packets received from the local site and destined for a remote site. The devices on the IPv6 backbone transport network forward the SRv6-encapsulated packets according to the optimal routes calculated by an IGP. As a result, Layer 2 data packets of one customer site can be transparently forwarded to another site over the IPv6 backbone transport network.

Figure 1 EVPN VPWS over SRv6 network diagram

 

BGP EVPN route advertisement

A pair of PEs use BGP EVPN routes to establish PWs as follows:

1.     A PE adds the local service ID and End.DX2 SID of a local cross-connect to Ethernet auto-discovery routes and advertises the routes to the remote PE.

2.     After receiving the routes, the remote PE checks the service ID carried in the routes. If the service ID is the same as the remote service ID configured locally for a cross-connect, the PE establishes an SRv6 tunnel to the other PE. The SID flag of the SRv6 tunnel is the End.DX2 SID in the routes.

The two PEs both advertise End.DX2 SIDs to each other and establish two SRv6 tunnels at two directions. The two SRv6 tunnels form a PW to carry Layer 2 customer traffic. The PW is called an SRv6 PW.

Traffic forwarding

EVPN VPWS over SRv6 supports the following route recursion modes:

·     SRv6 BE mode.

·     SRv6 TE mode.

·     SRv6 TE and SRv6 BE hybrid mode.

The packet forwarding process differs by the route recursion mode in use.

SRv6 BE mode

This mode is also called SID-based forwarding mode. In this mode, a PE forwards an SRv6 packet by searching the IPv6 routing table based on the End.DX2 SID encapsulated in the packet. A layer 2 packet is forwarded from CE 1 to CE 2 as follows:

1.     CE 1 sends the Layer 2 packet to PE 1.

2.     After PE 1 receives the packet on the AC connected to CE 1, it searches for the SRv6 PW (SRv6 tunnel) associated with the AC and finds the End.DX2 SID to reach PE 2.

3.     PE 1 encapsulates the outer IPv6 header and SRH header for the packet. The End.DX2 SID is encapsulated in the outer IPv6 header as the destination IPv6 address. The source IPv6 address is the source address specified for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets.

4.     PE 1 searches the IPv6 routing table based on the End.DX2 SID for the optimal IGP route and forwards the packet to P through the optimal IGP route.

5.     P searches the IPv6 routing table based on the End.DX2 SID for the optimal IGP route and forwards the packet to PE 2 through the optimal IGP route.

6.     PE 2 searches the local SID forwarding table for the End.DX2 SID and performs the following operations:

a.     Removes the outer IPv6 header.

b.     Matches the packet to an AC based on the End.DX2 SID.

c.     Forwards the packet to CE 2 through the AC.

SRv6 TE mode

This mode is also called SRv6 TE policy-based forwarding mode. In this mode, when a PE forwards a customer packet, it first searches for a matching SRv6 TE policy based on the packet attributes. Then, the PE adds an SRH to the packet. The SRH includes the destination End.DX2 SID and the SID list of the SRv6 TE policy. Finally, the PE forwards the encapsulated packet based on the SRv6 TE policy.

The following modes are available to steer traffic to an SRv6 TE policy:

·     Color—The device searches for an SRv6 TE policy that has the same color and endpoint address as the color and nexthop address of a BGP EVPN route. If a matching SRv6 TE policy exists, the device recurses the BGP EVPN route to that SRv6 TE policy. When the device receives packets that match the BGP EVPN route, it forwards the packets through the SRv6 TE policy.

·     Tunnel policy—The device searches the tunnel policies for a matching SRv6 TE policy based on the next hop of a matching route. Configure a preferred tunnel or load sharing tunnel policy that uses the SRv6 TE policy. In this way, the SRv6 TE policy will be used as the public tunnel to carry the SRv6 PW that forwards the packets of private network packets.

For more information about tunnel policies, see MPLS Configuration Guide. For more information about SRv6 TE policies, see "Configuring SRv6 TE policies."

SRv6 TE and SRv6 BE hybrid mode

In this mode, the PE preferentially uses the SRv6 TE mode to forward a packet. If no SRv6 TE policy is available for the packet, the PE forwards the packet in SRv6 BE mode.

EVPN VPWS over SRv6 multihoming

About EVPN VPWS over SRv6 multihoming

As shown in Figure 2, EVPN VPWS over SRv6 supports deploying multiple PEs at a site for redundancy and high availability. On the redundant PEs, Ethernet links connected to the site form an Ethernet segment (ES) that is uniquely identified by an ES identifier (ESI). EVPN VPWS over SRv6 supports only dualhoming.

Figure 2 EVPN VPWS over SRv6 multihoming

 

Redundancy mode

The device supports single-active redundancy mode and all-active redundancy mode of EVPN VPWS over SRv6 multihoming.

·     All-active mode—This mode allows all redundant PWs to a multihomed site to load share traffic.

·     Single-active mode—This mode allows one of the redundant PWs to forward traffic. When the main PW becomes unavailable because of device failure or link failure, traffic is switched to the secondary PW for forwarding. A designated forwarder (DF) is elected from the redundant PEs to determine the main PW. For more information about DF election, see EVPN VPWS configuration in EVPN Configuration Guide.

Route advertisement

The redundant PEs at a multihomed site both advertise End.DX2 SIDs to remote PEs. In addition, they advertise the redundancy mode of the multihomed site and their roles (primary or secondary) to remote PEs. A remote PE handles BGP EVPN routes advertised by the redundant PEs based on the redundancy mode.

·     In all-active mode, the remote PE treats the routes advertised by the redundant PEs as ECMP routes that can load share traffic.

·     In single-active mode, the remote PE treats the routes advertised by the primary PE as the optimal routes and only uses the optimal routes to forward traffic.

Bypass SRv6 PW

EVPN VPWS over SRv6 bypass PW helps reduce the traffic loss caused by AC or PW failure on an EVPN VPWS over SRv6 network.

Local FRR enables two PEs at a multihomed EVPN VPWS over SRv6 network site to set up a bypass SRv6 PW between them.

As shown in Figure 3, CE 2 is dualhomed to PE 2 and PE 3. When the AC on PE 2 fails, PE 2 advertises the local unreachable event to PE 1 and PE 3 for PE 1 to switch traffic to the PW to PE 3. In this situation, PE 3 drops the packets that PE 1 sends before it is notified of the local unreachable event. To resolve this issue, enable local FRR on PE 2 and PE 3. When receiving packets from PE 1 after PE 2's AC fails, PE 2 forwards the packets to PE 3 over the bypass SRv6 PW to prevent traffic loss.

Figure 3 Bypass SRv6 PW

A loop might exist if PE 2 and PE 3 establish a bypass SRv6 PW between them through End.DX2 SIDs. When the AC on PE 2 or PE 3 fails, PE 2 or PE 3 forwards the packets received from its peer back to its peer through the bypass SRv6 PW. To resolve this issue, use End.DX2L SIDs to establish a bypass SRv6 PW between PE 2 and PE 3. The packets from a bypass SRv6 PW carry an End.DX2L SID. A PE does not forward the packets back to the bypass SRv6 PW.

PEs preferentially use End.DX2L SIDs to establish a bypass SRv6 PW. If no End.DX2L SIDs are available, the PEs use End.DX2 SIDs to establish a bypass SRv6 PW.

EVPN VPWS over SRv6 tasks at a glance

To configure EVPN VPWS over SRv6, perform the following tasks:

1.     Enabling L2VPN

2.     Configuring a cross-connect group and its EVPN instance

3.     Configuring SRv6 SIDs

4.     Applying a locator to a cross-connect

5.     Configuring packet forwarding methods

¡     Configuring the route recursion mode

¡     Configuring SRv6 TE policy traffic steering

This task is required if the route recursion mode is SRv6 TE mode or SRv6 TE and SRv6 BE hybrid mode.

6.     Mapping an AC to a cross-connect

7.     Configuring PEs to exchange BGP EVPN routes

8.     Specifying a source address for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets

9.     (Optional.) Configuring EVPN VPWS over SRv6 multihoming

10.     (Optional.) Configuring bypass PW

11.     (Optional.) Maintaining the EVPN VPWS over SRv6 network

¡     Configuring SRv6 PW packet statistics

¡     Test the connectivity of an SRv6 PW

Enabling L2VPN

1.     Enter system view.

system-view

2.     Enable L2VPN.

l2vpn enable

By default, L2VPN is disabled.

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

Configuring a cross-connect group and its EVPN instance

1.     Enter system view.

system-view

2.     Create a cross-connect group and enter its view.

xconnect-group group-name

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

3.     (Optional.) Configure a description for the cross-connect group.

description text

By default, no description is configured for a cross-connect group.

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

4.     (Optional.) Bring p the cross-connect group.

undo shutdown

By default, a cross-connect group is not administratively down.

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

5.     Create an EVPN instance for the cross-connect group and enter its view.

evpn encapsulation srv6

6.     Configure an RD for the EVPN instance.

route-distinguisher route-distinguisher

By default, no RD is configured for the EVPN instance of a cross-connect group.

For more information about this command, see EVPN commands in EVPN Command Reference.

7.     Configure route targets for the EVPN instance.

vpn-target { vpn-target&<1-8> } [ both | export-extcommunity | import-extcommunity ]

By default, no route targets are configured for the EVPN instance of a cross-connect group.

For more information about this command, see EVPN commands in EVPN Command Reference.

 

Parameter

Description

export-extcommunity

Do not specify the same export targets for the EVPN instances of different cross-connect groups.

Do not specify the same export targets for the EVPN instances of a cross-connect group and a VSI.

As a best practice, the export targets of the EVPN instance of a cross-connect group do not match the import targets configured in VPN instance view, VPN instance EVPN view, public instance view, public instance EVPN view, or VSI EVPN instance view.

import-extcommunity

As a best practice, the import targets of the EVPN instance of a cross-connect group do not match the export targets configured in VPN instance view, VPN instance EVPN view, public instance view, public instance EVPN view, or VSI EVPN instance view.

 

8.     Return to cross-connect group view.

quit

9.     Create a cross-connect and enter its view.

connection connection-name

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

Configuring SRv6 SIDs

Restrictions and guidelines

For more information about the commands in this task, see SRv6 commands in Segment Routing Command Reference.

Procedure

1.     Enter system view.

system-view

2.     Enable SRv6 and enter SRv6 view.

segment-routing ipv6

3.     Configure a locator and enter SRv6 locator view.

locator locator-name [ ipv6-prefix ipv6-address prefix-length [ args args-length | static static-length ] * ]

4.     Configure an opcode for End.DX2 SIDs.

opcode opcode end-dx2 xconnect-group group-name connection connection-name

5.     (Optional.) Configure an opcode for End.DX2L SIDs.

connection connection-name

This command applies only to bypass PW networks.

Applying a locator to a cross-connect

About this task

Perform this task to apply a locator to a cross-connect for the cross-connect to apply for End.DX2 and End.DX2L SIDs from the locator.

Procedure

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter cross-connect view.

connection connection-name

4.     Apply a locator to the cross-connect.

segment-routing ipv6 locator locator-name [ dx2l-locator dx2l-locator-name ] [ auto-sid-disable ]

By default, no locator is applied to a cross-connect.

5.     Create an SRv6 PW and enter SRv6 PW view.

evpn local-service-id local-service-id remote-service-id remote-service-id [ tunnel-policy tunnel-policy-name ]

For more information about this command, see EVPN commands in EVPN Command Reference.

Configuring the route recursion mode

About this task

After a PE receives a customer packet destined for an End.DX2 SID or End.DX2L SID, it forwards the packet according to the route recursion mode.

·     SRv6 BE mode—This mode is also called SID-based forwarding mode. In this mode, the PE first encapsulates the End.DX2 SID or End.DX2L SID into the packet. Then, the PE searches the IPv6 routing table based on the End.DX2 SID or End.DX2L SID encapsulated in the packet to forward the packet.

·     SRv6 TE mode—This mode is also called SRv6 TE policy-based forwarding mode. In this mode, the PE first searches for a matching SRv6 TE policy based on the packet attributes. Then, the PE adds an SRH to the packet. The SRH includes the End.DX2 SID or End.DX2L SID and the SID list of the SRv6 TE policy. Finally, the PE forwards the encapsulated packet through the SRv6 TE policy. For more information, see "Configuring SRv6 TE policies."

·     SRv6 TE and SRv6 BE hybrid mode—In this mode, the PE preferentially uses the SRv6 TE mode to forward the packet. If no SRv6 TE policy is available for the packet, the PE forwards the packet in SRv6 BE mode.

Prerequisites

To use the SRv6 TE mode or the SRv6 TE and SRv6 BE hybrid mode, you must configure a tunnel policy and SRv6 TE policy. For more information, see tunnel policy configuration in MPLS Configuration Guide and "Configuring SRv6 TE policies."

Procedure

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter cross-connect group EVPN instance view.

evpn encapsulation srv6

4.     Configure the route recursion mode.

segment-routing ipv6 { best-effort | traffic-engineer | traffic-engineer best-effort }

By default, a PE searches the IPv6 routing table based on the next hop of a matching EVPN route to forward traffic.

Configuring SRv6 TE policy traffic steering

Restrictions and guidelines for SRv6 TE policy traffic steering

This task is required if the route recursion mode is SRv6 TE mode or SRv6 TE and SRv6 BE hybrid mode.

Color-based traffic steering takes precedence over tunnel policy-based traffic steering.

 

Configuring color-based traffic steering

About this task

The device searches for an SRv6 TE policy that has the same color and endpoint address as the color and next hop address of a BGP EVPN route. If a matching SRv6 TE policy exists, the device recurses the route to that SRv6 TE policy. When the device receives packets that match the route, it forwards the packets through the SRv6 TE policy.

Prerequisites

To use color-based traffic steering, add the color extended community to BGP EVPN routes by using routing policy or other methods. For information about the routing policy configuration, see Layer 3—IP Routing Configuration Guide.

Restrictions and guidelines

Traffic steering is based on the greatest value among the color extended community attributes when the following conditions exist:

·     You specify the additive keyword for the apply extcommunity color clause in a routing policy, and specify the routing policy for the import route-policy command.

·     The received BGP EVPN routes carry the color extended community attribute.

Procedure

1.     Enter system view.

system-view

2.     Enter routing policy node view.

route-policy route-policy-name { deny | permit } node node-number

For more information about this command, see routing policy commands in Layer 3—IP Routing Command Reference.

3.     Set the color extended community attribute for BGP routes.

apply extcommunity color color [ additive ]

By default, no color extended community attribute is set for BGP routes.

For more information about this command, see routing policy commands in Layer 3—IP Routing Command Reference.

4.     Return to system view.

quit

5.     Enter cross-connect group view.

xconnect-group group-name

6.     Enter EVPN instance view of the cross-connect group.

evpn encapsulation srv6

7.     Apply the routing policy as an import policy to the EVPN instance.

import route-policy route-policy

By default, no import routing policy is applied to an EVPN instance. The EVPN instance receives routes with the Route Target value identical to the local Import Target value.

For more information about this command, see EVPN commands in EVPN Command Reference.

8.     Apply the routing policy as an export policy to the EVPN instance.

export route-policy route-policy

By default, no export routing policy is applied to an EVPN instance. The EVPN instance does not filter advertised routes.

For more information about this command, see EVPN commands in EVPN Command Reference.

 

Configuring tunnel policy-based traffic steering

About this task

The device searches the tunnel policies for a matching SRv6 TE policy based on the next hop of a matching route. In this way, the SRv6 TE policy will be used as the public tunnel to carry the SRv6 PW that forwards private network packets. For more information about tunnel policies, see MPLS Configuration Guide.

Configuring a tunnel policy

1.     Enter system view.

system-view

2.     Create a tunnel policy and enter tunnel policy view.

tunnel-policy tunnel-policy-name [ default ]

3.     Configure the tunnel policy. Choose a minimum of one option:

¡     Bind tunnels to a destination IP address in a tunnel policy, so the tunnels can be used only for a specific VPN service.

binding-destination dest-ipv6-address { srv6-policy group srv6-policy-group-id | srv6-policy { name policy-name | end-point ipv6 ipv6-address color color-value } } [ ignore-destination-check ] [ down-switch ]

By default, a tunnel policy does not bind tunnels to a destination IP address.

¡     Specify an SRv6 TE policy as a preferred tunnel of the tunnel policy.

preferred-path srv6-policy { name srv6-policy-name | end-point ipv6 ipv6-address color color-value }

By default, no preferred tunnel is specified for a tunnel policy.

¡     Configuring SRv6 TE policy load sharing for the tunnel policy.

select-seq srv6-policy load-balance-number number

By default, no load sharing tunnel policy is configured.

For more information about the tunnel policy commands, see MPLS Command Reference.

 

 

Specifying the tunnel policy for a PW

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter cross-connect view.

connection connection-name

4.     Create an SRv6 PW and specify a tunnel policy for this PW.

evpn local-service-id local-service-id remote-service-id remote-service-id tunnel-policy tunnel-policy-name

 

Mapping an AC to a cross-connect

Mapping a Layer 3 interface to a cross-connect

About this task

To interconnect an LDP PW in MPLS L2VPN and a PW in EVPN VPWS over SRv6, perform the following tasks:

1.     Configure a VE-L2VPN interface and its VE-L2VPN subinterface 1 as ACs.

2.     Specify the l2-splicing keyword when mapping the ACs to cross-connects.

3.     Associate the VE-L2VPN interface with the LDP PW in MPLS L2VPN and associate VE-L2VPN subinterface 1 with the PW in EVPN VPWS over SRv6. Or, associate the VE-L2VPN interface with the PW in EVPN VPWS over SRv6 and associate VE-L2VPN subinterface 1 with the LDP PW in MPLS L2VPN.

Procedure

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter cross-connect view.

connection connection-name

4.     Map a Layer 3 interface to the cross-connect.

ac interface interface-type interface-number [ access-mode { ethernet | vlan } ]

By default, no Layer 3 interface is bound to the cross-connect.

For more information about this command, see MPLS L2VPN commands in MPLS Command Reference.

Configuring PEs to exchange BGP EVPN routes

1.     Enter system view.

system-view

2.     Enter BGP instance view.

bgp as-number [ instance instance-name ]

3.     Configure an IPv6 peer or peer group.

peer { group-name | ipv6-address [ prefix-length ] } as-number as-number

For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.

4.     Specify the source interface of TCP connections to a peer or peer group.

peer { group-name | ipv6-address [ prefix-length ] } connect-interface interface-type interface-number

By default, BGP uses the IPv6 address of the output interface in the optimal route to the BGP peer or peer group as the source address of TCP connections to the peer or peer group.

For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.

5.     Enter BGP EVPN address family view.

address-family l2vpn evpn

For more information about this command, see EVPN commands in EVPN Command Reference.

6.     Enable BGP to exchange EVPN routes with an IPv6 peer or peer group.

peer { group-name | ipv6-address [ prefix-length ] } enable

By default, BGP cannot exchange EVPN routes with an IPv6 peer or peer group.

For more information about this command, see BGP commands in Layer 3—IP Routing Command Reference.

7.     Enable BGP to advertise SRv6-encapsulated BGP EVPN routes to a peer or peer group.

peer { group-name | ipv6-address [ prefix-length ] } advertise encap-type srv6

By default, BGP advertises VXLAN-encapsulated BGP EVPN routes to a peer or peer group.

Specifying a source address for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets

Restrictions and guidelines

To ensure correct traffic forwarding in an EVPN VPWS over SRv6 network, you must specify a source address for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets.

You cannot specify a loopback address, link-local address, multicast address, or unspecified address as the source IPv6 address. You must specify an IPv6 address of the local device as the source IPv6 address, and make sure the IPv6 address has been advertised by a routing protocol. As a best practice, specify a loopback interface address of the local device as the source IPv6 address.

Procedure

1.     Enter system view.

system-view

2.     Enter SRv6 view.

segment-routing ipv6

3.     Specify a source address for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets.

encapsulation source-address ipv6-address [ ip-ttl ttl-value ]

By default, no source address is specified for the outer IPv6 header of SRv6-encapsulated EVPN VPWS packets.

Configuring EVPN VPWS over SRv6 multihoming

Restrictions and guidelines for EVPN VPWS over SRv6 multihoming

You must configure the same local and remote service IDs on the redundant PEs at a multihomed site.

As a best practice, set the same redundancy mode on the interfaces that act as ACs or are configured with ACs on the redundant PEs at a multihomed site.

You can assign ESIs to a main interface and its subinterfaces.

·     If you assign an ESI to a subinterface, the subinterface-specific ESI and redundancy mode take precedence over those configured on the main interface.

·     If you do not assign an ESI to a subinterface, it inherits the ESI and redundancy mode of the main interface. In this scenario, the redundancy mode on the subinterface does not take effect.

Assigning an ESI to an interface

About this task

An ESI uniquely identifies an ES. The links on interfaces with the same ESI belong to the same ES. Traffic of the ES can be distributed among the links for load sharing.

Procedure

1.     Enter system view.

system-view

2.     Enter interface view.

¡     Enter Layer 2 Ethernet interface view.

interface interface-type interface-number

¡     Enter Layer 2 aggregate interface view.

interface bridge-aggregation interface-number

¡     Enter Layer 3 Ethernet interface view.

interface interface-type interface-number

¡     Enter Layer 3 aggregate interface view.

interface route-aggregation interface-number

3.     Assign an ESI to the interface.

esi esi-id

By default, no ESI is assigned to an interface.

For more information about this command, see EVPN commands in EVPN Command Reference.

Setting the redundancy mode on an interface

About this task

EVPN VPWS over SRv6 multihoming provides the single-active redundancy mode and all-active redundancy mode.

The redundant PEs at a dualhomed site each establish a PW to a remote PE. To use one PW as a backup of the other PW, use the single-active mode. To distribute traffic across the PWs for load sharing, use the all-active mode.

Procedure

1.     Enter system view.

system-view

2.     Enter interface view.

¡     Enter Layer 2 Ethernet interface view.

interface interface-type interface-number

¡     Enter Layer 2 aggregate interface view.

interface bridge-aggregation interface-number

¡     Enter Layer 3 Ethernet interface view.

interface interface-type interface-number

¡     Enter Layer 3 aggregate interface view.

interface route-aggregation interface-number

3.     Set the redundancy mode.

evpn redundancy-mode { all-active | single-active }

By default, the all-active redundancy mode is used.

For more information about this command, see EVPN commands in EVPN Command Reference.

Configuring bypass PW

About this task

This task enables two PEs at a multihomed EVPN VPWS over SRv6 network site to set up a bypass SRv6 PW between them. Perform this task to help reduce the traffic loss caused by AC failure.

Restrictions and guidelines

On an EVPN instance, EVPN instance-specific bypass PW configuration takes precedence over global bypass PW configuration.

If you have executed the evpn frr local enable command on an EVPN instance, the undo evpn multihoming vpws-frr local command does not delete the bypass SRv6 PW of the EVPN instance.

Perform this task on the redundant PEs at a multihomed site.

Enabling bypass PW globally

1.     Enter system view.

system-view

2.     Enable bypass PW globally for EVPN VPWS over SRv6.

evpn multihoming vpws-frr local

By default, bypass PW is disabled globally for EVPN VPWS over SRv6.

For more information about this command, see EVPN Command Reference.

 

Configuring bypass PW on an EVPN instance

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter EVPN instance view.

evpn encapsulation srv6

4.     Configure bypass PW for EVPN VPWS over SRv6.

evpn frr local { disable | enable }

By default, an EVPN instance uses the global bypass PW configuration of EVPN VPWS over SRv6.

For more information about this command, see EVPN Command Reference.

Configuring SRv6 PW packet statistics

About this task

When SRv6 PW packet statistics is enabled, you can use the display l2vpn peer srv6 verbose command to display SRv6 PW packet statistics. To clear SRv6 PW packet statistics, use the reset l2vpn statistics srv6-pw command.

Procedure

1.     Enter system view.

system-view

2.     Enter cross-connect group view.

xconnect-group group-name

3.     Enter cross-connect view.

connection connection-name

4.     Enter SRv6 PW view.

evpn local-service-id local-service-id remote-service-id remote-service-id [ tunnel-policy tunnel-policy-name ]

5.     Enable SRv6 PW packet statistics.

statistics enable

By default, SRv6 PW packet statistics is disabled.

 

Test the connectivity of an SRv6 PW

Using ping to test the connectivity of an SRv6 PW

About this task

In an EVPN VPWS over SRv6 network, a PE transmits data packets to a remote PE over an SRv6 PW. Perform this task to test the connectivity of the SRv6 PW from the local PE to the remote PE when packet loss or traffic interruption occurs between the PEs.

The test process is as follows:

1.     The local PE constructs an MPLS echo request packet and searches for the SRv6 tunnel that matches the specified cross-connect group name, local service ID, and remote service ID. After obtaining the End.DT2X SID of the SRv6 tunnel, the PE adds a UDP header and an IPv6 header to the packet and forwards the packet to the remote PE.

2.     Upon receiving the MPLS echo request packet, the remote PE replies to the request.

3.     The local PE identifies the connectivity of the SRv6 PW based on whether it has received MPLS echo replies from the remote PE and the reply response time. In addition, the local PE outputs statistics about the ping operation.

Procedure

To test the connectivity of an SRv6 PW from the local PE to the remote PE in an EVPN VPWS over SRv6 network, execute the following command in any view:

ping evpn vpws srv6 xconnect-group group-name local-service-id  remote-service-id [ -a source-ipv6 | -c count | -h hop-limit | -m interval | -r reply-mode | -s packet-size | -t time-out | -tc tc ] *

Using tracert to test the connectivity of an SRv6 PW

About this task

In an EVPN VPWS over SRv6 network, a PE transmits data packets to a remote PE over an SRv6 PW. Perform this task to trace the path of the SRv6 PW from the local PE to the remote PE when packet loss or traffic interruption occurs between the PEs. This task helps you locate the failed nodes on the path.

The test process is as follows:

1.     The local PE constructs an MPLS echo request packet and searches for the SRv6 tunnel that matches the specified cross-connect group name, local service ID, and remote service ID. After obtaining the End.DT2X SID of the SRv6 tunnel, the PE adds a UDP header and an IPv6 header to the packet and forwards the packet to the remote PE. In the IPv6 header, the value of the Hop limit field is set to 1.

2.     When the next node receives the packet, the value of the Hop limit field changes to 0. Then, the node sends an ICMPv6 timeout packet to the first node (the local PE).

3.     When the local PE receives the ICMPv6 timeout packet, it increases the value of the Hop limit field by one in the MPLS echo request packet. Then, the local PE forwards the request packet to the remote PE. The value of the Hop limit field is 2.

4.     The value of the Hop limit field decreases by one each time the request packet reaches a node. When the value of the Hop limit field decreases to 0, the node that receives the request packet responds to the first node with an ICMPv6 timeout packet. If the node that receives the request packet is the destination node, it sends an MPLS echo reply packet to the first node.

5.     The local PE repeats the previous step until one of the following conditions exist:

¡     The local PE has not received any reply packets before the reply timeout time expires for all request packets.

¡     The local PE receives a reply packet from the remote PE.

6.     The local PE identifies the connectivity of the SRv6 PW based on whether it has received MPLS echo reply packets from the remote PE and the reply response time. In addition, the local PE outputs statistics about the tracert operation.

Procedure

To trace the path of an SRv6 PW from the local PE to the remote PE in an EVPN VPWS over SRv6 network, execute the following command in any view:

tracert evpn vpws srv6 xconnect-group group-name local-service-id remote-service-id [ -a source-ip | -h hop-limit | -r reply-mode | -t time-out | -tc tc ] *

Verifying and maintaining EVPN VPWS over SRv6

Displaying BGP EVPN route information

Perform display tasks in any view.

·     Display BGP peer group information.

display bgp [ instance instance-name ] group l2vpn evpn [ group-name group-name ]

For more information about this command, see basic BGP commands in Layer 3—IP Routing Command Reference.

·     Display BGP peer or peer group information.

display bgp [ instance instance-name ] peer l2vpn evpn [ ipv4-address mask-length | { ipv4-address | group-name group-name } log-info | [ ipv4-address ] verbose ]

For more information about this command, see basic BGP commands in Layer 3—IP Routing Command Reference.

·     Display information about BGP update groups.

display bgp [ instance instance-name ] update-group l2vpn evpn [ ipv4-address ]

For more information about this command, see basic BGP commands in Layer 3—IP Routing Command Reference.

·     Display BGP EVPN routes.

display bgp [ instance instance-name ] l2vpn evpn [ peer { ipv4-address | ipv6-address } { advertised-routes | received-routes } [ statistics ] | [ route-distinguisher route-distinguisher | route-type { es | imet } ] * [ { evpn-route route-length | evpn-prefix } [ advertise-info ] | ipv4-address | ipv6-address | mac-address ] | statistics ]

For more information about this command, see EVPN Command Reference.

Displaying EVPN VPWS over SRv6 running status

Perform display tasks in any view.

·     Display information about peers that are automatically discovered through BGP.

display evpn auto-discovery { mac-ip [ srv6 ] [ peer ip-address] [ vsi vsi-name ] | macip-prefix [ nexthop next-hop ] [ count ] }

For more information about this command, see EVPN Command Reference.

·     Display EVPN ES information.

display evpn es { local [ count | [ vsi vsi-name ] [ verbose ] ] | remote [ vsi vsi-name ] [ nexthop next-hop ] [ verbose ]}

For more information about this command, see EVPN Command Reference.

·     Display EVPN information about cross-connects.

display evpn route xconnect-group [ name group-name [ connection connection-name ] ] [ count ]

For more information about this command, see EVPN Command Reference.

·     Display information about cross-connect groups.

display l2vpn xconnect-group [ evpn-srv6 | name group-name [ connection connection-name ] ] [ count | verbose ]

·     Display L2VPN SRv6 information.

display l2vpn peer srv6 [ xconnect-group group-name ] [ state-machine | verbose ]

Displaying EVPN VPWS over SRv6 forwarding information

To display SRv6 forwarding information, execute the following command in any view:

display l2vpn forwarding srv6 [ xconnect-group group-name ] [ slot slot-number ] [ verbose ]

Clearing EVPN VPWS over SRv6 statistics

To clear SRv6 PW packet statistics, execute the following command in user view:

reset l2vpn statistics srv6-pw [ vsi vsi-name [ peer ipv6-address ] ]

EVPN VPWS over SRv6 configuration examples

Example: Setting up an SRv6 tunnel between single-homed EVPN VPWS sites

Network configuration

As shown in Figure 4, set up an SRv6 tunnel between PE 1 and PE 2 for users in site 1 and site 2 to communicate through EVPN VPWS over the IPv6 backbone network.

Figure 4 Network diagram

Device

Interface

IP address

Device

Interface

IP address

CE 1

GE0/0/1

10::1/64

P

Loop0

3::3/128

PE 1

Loop0

1::1/128

 

GE0/0/1

20::2/64

 

GE0/0/1

-

 

GE0/0/2

30::1/64

 

GE0/0/2

20::1/64

PE 2

Loop0

2::2/128

CE 2

GE0/0/1

10::2/64

 

GE0/0/1

-

 

 

 

 

GE0/0/2

30::2/64

 

Procedure

1.     Configure CE 1.

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ipv6 address 10::1 64

[CE1-GigabitEthernet0/0/1] quit

2.     Configure PE 1:

# Run OSPFv3 on PE 1 and use OSPFv3 to advertise SIDs.

<PE1> system-view

[PE1] ospfv3

[PE1-ospfv3-1] router-id 1.1.1.1

[PE1-ospfv3-1] segment-routing ipv6 locator aaa

[PE1-ospfv3-1] area 0.0.0.0

[PE1-ospfv3-1-area-0.0.0.0] quit

[PE1-ospfv3-1] quit

# Configure interface Loopback 0.

[PE1] interface loopback 0

[PE1-LoopBack0] ipv6 address 1::1 128

[PE1-LoopBack0] ospfv3 1 area 0

[PE1-LoopBack0] quit

# Enable L2VPN.

[PE1] l2vpn enable

# Configure GigabitEthernet 0/0/2, the interface connected to P.

[PE1] interface gigabitethernet 0/0/2

[PE1-GigabitEthernet0/0/2] ipv6 address 20::1 64

[PE1-GigabitEthernet0/0/2] ospfv3 1 area 0

[PE1-GigabitEthernet0/0/2] undo shutdown

[PE1-GigabitEthernet0/0/2] quit

# Configure PE 1 to establish IBGP neighbor relationship with PE 2 and enable BGP EVPN to advertise routes in SRv6 encapsulation to PE 2.

[PE1] bgp 100

[PE1-bgp-default] router-id 1.1.1.1

[PE1-bgp-default] peer 2::2 as-number 100

[PE1-bgp-default] peer 2::2 connect-interface loopback 0

[PE1-bgp-default] address-family l2vpn evpn

[PE1-bgp-default-evpn] peer 2::2 enable

[PE1-bgp-default-evpn] peer 2::2 advertise encap-type srv6

[PE1-bgp-default-evpn] quit

[PE1-bgp-default] quit

# Create a cross-connect group named vpna, create an EVPN instance for it, and enable SRv6 encapsulation. Configure an RD and route targets for the EVPN instance and enable SRv6 BE route recursion mode.

[PE1] xconnect-group vpna

[PE1-xcg-vpna] evpn encapsulation srv6

[PE1-xcg-vpna-evpn-srv6] route-distinguisher 1:1

[PE1-xcg-vpna-evpn-srv6] vpn-target 1:1 export-extcommunity

[PE1-xcg-vpna-evpn-srv6] vpn-target 1:1 import-extcommunity

[PE1-xcg-vpna-evpn-srv6] segment-routing ipv6 best-effort

[PE1-xcg-vpna-evpn-srv6] quit

# Create cross-connect pw1 and map GigabitEthernet 0/0/1 to it. Create an SRv6 tunnel on the cross-connect.

[PE1-xcg-vpna] connection pw1

[PE1-xcg-vpna-pw1] ac interface gigabitethernet 0/0/1

[PE1-xcg-vpna-pw1-GigabitEthernet0/0/1] quit

[PE1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2

[PE1-xcg-vpna-pw1-1-2] quit

[PE1-xcg-vpna-pw1] segment-routing ipv6 locator aaa

[PE1-xcg-vpna-pw1] quit

[PE1-xcg-vpna] quit

# Specify a source IP address for the outer IPv6 header of SRv6-encapsulated packets, and configure a locator to apply for End.DX2 SIDs.

[PE1] segment-routing ipv6

[PE1-segment-routing-ipv6] encapsulation source-address 1::1

[PE1-segment-routing-ipv6] locator aaa ipv6-prefix 100:: 64 static 32

[PE1-segment-routing-ipv6-locator-aaa] quit

[PE1-segment-routing-ipv6] quit

3.     Configure PE 2:

# Run OSPFv3 on PE 2 and use OSPFv3 to advertise SIDs.

<PE2> system-view

[PE2] ospfv3

[PE2-ospfv3-1] router-id 2.2.2.2

[PE2-ospfv3-1] segment-routing ipv6 locator aaa

[PE2-ospfv3-1] area 0.0.0.0

[PE2-ospfv3-1-area-0.0.0.0] quit

[PE2-ospfv3-1] quit

# Configure interface Loopback 0.

[PE2] interface loopback 0

[PE2-LoopBack0] ipv6 address 2::2 128

[PE2-LoopBack0] ospfv3 1 area 0

[PE2-LoopBack0] quit

# Enable L2VPN.

[PE2] l2vpn enable

# Configure GigabitEthernet 0/0/2, the interface connected to P.

[PE2] interface gigabitethernet 0/0/2

[PE2-GigabitEthernet0/0/2] ipv6 address 30::2 64

[PE2-GigabitEthernet0/0/2] ospfv3 1 area 0.0.0.0

[PE2-GigabitEthernet0/0/2] undo shutdown

[PE2-GigabitEthernet0/0/2] quit

# Configure PE 2 to establish IBGP neighbor relationship with PE 1, and enable BGP EVPN to advertise routes in SRv6 encapsulation to PE 1.

[PE2] bgp 100

[PE2-bgp-default] router-id 2.2.2.2

[PE2-bgp-default] peer 1::1 as-number 100

[PE2-bgp-default] peer 1::1 connect-interface loopback 0

[PE2-bgp-default] address-family l2vpn evpn

[PE2-bgp-default-evpn] peer 1::1 enable

[PE2-bgp-default-evpn] peer 1::1 advertise encap-type srv6

[PE2-bgp-default-evpn] quit

[PE2-bgp-default] quit

# Create a cross-connect group named vpna, create an EVPN instance for it, and enable SRv6 encapsulation. Configure an RD and route targets for the EVPN instance and enable SRv6 BE route recursion mode.

[PE2] xconnect-group vpna

[PE2-xcg-vpna] evpn encapsulation srv6

[PE2-xcg-vpna-evpn-srv6] route-distinguisher 1:1

[PE2-xcg-vpna-evpn-srv6] vpn-target 1:1 export-extcommunity

[PE2-xcg-vpna-evpn-srv6] vpn-target 1:1 import-extcommunity

[PE2-xcg-vpna-evpn-srv6] segment-routing ipv6 best-effort

[PE2-xcg-vpna-evpn-srv6] quit

# Create cross-connect pw1 and map GigabitEthernet 0/0/1 to it. Create an SRv6 tunnel on the cross-connect.

[PE2-xcg-vpna] connection pw1

[PE2-xcg-vpna-pw1] ac interface gigabitethernet 0/0/1

[PE2-xcg-vpna-pw1-GigabitEthernet0/0/1] quit

[PE2-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1

[PE2-xcg-vpna-pw1-2-1] quit

[PE2-xcg-vpna-pw1] segment-routing ipv6 locator aaa

[PE2-xcg-vpna-pw1] quit

[PE2-xcg-vpna] quit

# Specify a source IP address for the outer IPv6 header of SRv6-encapsulated packets, and configure a locator to apply for End.DX2 SIDs.

[PE2] segment-routing ipv6

[PE2-segment-routing-ipv6] encapsulation source-address 2::2

[PE2-segment-routing-ipv6] locator aaa ipv6-prefix 200:: 64 static 32

[PE2-segment-routing-ipv6-locator-aaa] quit

[PE2-segment-routing-ipv6] quit

4.     Configure P:

# Run OSPFv3 on P.

<P> system-view

[P] ospfv3

[P-ospfv3-1] router-id 3.3.3.3

[P-ospfv3-1] area 0.0.0.0

[P-ospfv3-1-area-0.0.0.0] quit

[P-ospfv3-1] quit

# Configure IPv6 addresses for interfaces and run OSPFv3 on the interfaces.

[P] interface loopback 0

[P-LoopBack0] ipv6 address 3::3 128

[P-LoopBack0] ospfv3 1 area 0

[P-LoopBack0] quit

[P] interface gigabitethernet 0/0/1

[P-GigabitEthernet0/0/1] ipv6 address 20::2 64

[P-GigabitEthernet0/0/1] ospfv3 1 area 0

[P-GigabitEthernet0/0/1] quit

[P] interface gigabitethernet 0/0/2

[P-GigabitEthernet0/0/2] ipv6 address 30::1 64

[P-GigabitEthernet0/0/2] ospfv3 1 area 0

[P-GigabitEthernet0/0/2] quit

5.     Configure CE 2.

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ipv6 address 10::2 64

[CE2-GigabitEthernet0/0/1] quit

Verifying the configuration

# Verify that an SRv6 tunnel has been established between PE 1 and PE 2.

[PE1] display l2vpn peer srv6

Total number of SRv6 Tunnels: 1

1 up, 0 blocked, 0 down

 

Xconnect-group Name: vpna

   Peer            : 2::2

   Flag            : Main

   State           : Up

   Remote SrvID    : 2

# Verify that the SRv6 forwarding information on PE 1 is correct. You can see input and output SID information about the SRv6 tunnel.

[PE1] display l2vpn forwarding srv6

Total number of cross-connections: 1

Total number of SRv6 tunnels: 1, 1 up, 0 blocked, 0 down

Xconnect-group Name : vpna

Connection Name     : pw1

Link ID             : 0x8000000   Type: BE    State: Up

In SID              : 100::1:0:2

Out SID             : 200::1:0:2

# Verify that CE 1 and CE 2 can ping each other. (Details not shown.)

 

  • Cloud & AI
  • InterConnect
  • Intelligent Computing
  • Security
  • SMB Products
  • Intelligent Terminal Products
  • Product Support Services
  • Technical Service Solutions
All Services
  • Resource Center
  • Policy
  • Online Help
All Support
  • Become A Partner
  • Partner Policy & Program
  • Global Learning
  • Partner Sales Resources
  • Partner Business Management
  • Service Business
All Partners
  • Profile
  • News & Events
  • Online Exhibition Center
  • Contact Us
All About Us
新华三官网