- Table of Contents
- Related Documents
-
Title | Size | Download |
---|---|---|
03-EVPN VPLS configuration | 418.45 KB |
Contents
Neighbor auto-discovery and PW establishment
MAC address learning, aging, and withdrawal
Traffic forwarding and flooding
Restrictions and guidelines: EVPN VPLS configuration
Mapping a Layer 3 interface to a VSI
Configuring BGP to advertise BGP EVPN routes
Restrictions and guidelines for BGP EVPN route advertisement
Enabling BGP to advertise BGP EVPN routes
Enabling advertisement of MPLS-encapsulated BGP EVPN routes
Configuring optimal route selection and route advertisement settings
Configuring EVPN VPLS multihoming
Restrictions and guidelines for EVPN VPLS multihoming
Assigning an ESI to an interface
Setting the advertisement delay timer for Ethernet auto-discovery routes
Configuring local FRR for EVPN VPLS
Enabling VSIs to ignore the state of ACs
Disabling advertisement of EVPN multihoming routes
Managing remote MAC address entries and remote ARP learning
Disabling MAC address advertisement
Enabling MAC mobility event suppression
Disabling learning of MAC addresses from ARP or ND information
Disabling ARP information advertisement
Enabling ARP mobility event suppression
Enabling ARP flood suppression
Setting the maximum number of MAC addresses that an AC can learn
About setting the maximum number of MAC addresses that an AC can learn
Setting the maximum number of MAC addresses that a Layer 3 interface type AC can learn
Enabling packet statistics for an AC
Restrictions and guidelines for AC packet statistics
Enabling packet statistics for a Layer 3 interface
Enabling SNMP notifications for L2VPN PWs
Display and maintenance commands for EVPN VPLS
EVPN VPLS configuration examples
Example: Configuring EVPN VPLS between singlehomed sites
Example: Configuring EVPN VPLS multihoming
Configuring EVPN VPLS
About EVPN VPLS
EVPN Virtual Private LAN Service (VPLS) is a Layer 2 VPN technology that uses MP-BGP to advertise EVPN routes in the control plane and MPLS for forwarding in the data plane. EVPN VPLS provides point-to-multipoint forwarding services for users with MAC address table lookup in VSIs.
EVPN VPLS network model
As shown in Figure 1, an EVPN VPLS network contains the following devices:
· Customer edge (CE)—Customer device directly connected to the service provider network.
· Provider edge (PE)—Service provider device connected to CEs. PEs provide access to the EVPN VPLS network and forward traffic between customer network sites by using public tunnels.
A PE uses ACs, PWs, tunnels, and VSIs to provide EVPN VPLS services.
· Attachment circuit (AC)—A physical or virtual link between a CE and a PE.
· Pseudowire (PW)—A pair of unidirectional virtual connections in opposite directions between two PEs.
· Public tunnel—A connection that carries one or more PWs across the MPLS or IP backbone. A public tunnel can be an LSP, GRE, or MPLS TE tunnel.
· Virtual Switch Instance (VSI)—A virtual switch instance provides Layer 2 switching services for a VPLS instance (EVPN instance) on a PE. A VSI acts as a virtual switch that has all the functions of a conventional Ethernet switch, including source MAC address learning, MAC address aging, and flooding. VPLS uses VSIs to forward Layer 2 data packets in EVPN instances.
Neighbor auto-discovery and PW establishment
A PE uses IMET routes to automatically discover neighbors and establish PWs. When a PE receives an IMET route in a VSI, it compares the export route targets of the route with the import route targets of the EVPN instance associated with the VSI. If they are match, the PE will establish a unidirectional virtual connection based on the PE address and PW label information carried in the route. PW establishment is finished when two virtual connections in opposite directions are established between two PEs.
MAC address learning, aging, and withdrawal
Source MAC address learning
A PE uses the MAC address table of a VSI to forward Layer 2 unicast traffic for that VSI.
A PE learns source MAC addresses in the following ways:
· Local MAC address learning—When the PE receives a frame from a local CE, it first identifies the VSI of the frame. Then, the PE adds the source MAC address of the frame (the MAC address of the local CE) to the MAC address table of the VSI. The output interface of the MAC address entry is the AC that receives the frame.
· Remote MAC address learning—A PE advertises the MAC addresses of local CEs to remote PEs through BGP EVPN MAC/IP advertisement routes. When a remote PE receives the routes, it adds the received MAC addresses to the MAC address table of the corresponding VSI. The output interface is the PW.
MAC address aging
· Local MAC address aging—The MAC address table uses an aging timer for each dynamic MAC address entry. If no packet is received from a MAC address before the aging timer expires, VPLS deletes the MAC address.
· Remote MAC address aging—Remote MAC addresses advertised through MAC/IP advertisement routes are not removed from the MAC address table until routes to withdraw the MAC addresses are received.
MAC address withdrawal
When an AC goes down, the PE deletes MAC addresses on the AC. Then it sends an LDP address withdrawal message to notify all other PEs in the EVPN instance to delete those MAC addresses.
Traffic forwarding and flooding
Unicast traffic forwarding
After a PE receives a unicast packet with a known destination MAC address from an AC, the PE searches the MAC address table of the VSI bound to the AC for packet forwarding.
· If the output interface in the entry is a PW, the PE inserts the PW label to the packet, and adds the public tunnel header to the packet. It then forwards the packet to the remote PE over the PW. If the public tunnel is an LSP or MPLS TE tunnel, each packet on the PW contains two labels. The inner label is the PW label, which identifies the PW and ensures that the packet is forwarded to the correct VSI. The outer label is the public LSP or MPLS TE tunnel label, which ensures that the packet is correctly forwarded to the remote PE.
· If the output interface in the entry is a local interface, the PE directly forwards the packet to the local interface.
After a PE receives a unicast packet with a known destination MAC address from a PW, the PE searches the MAC address table of the VSI bound to the PW for packet forwarding. The PE forwards the packet through the output interface in the matching MAC address entry.
Flooding
When a PE receives flood traffic from an AC in a VSI, it will flood the traffic to the following interfaces:
· All ACs in the VSI except for the incoming AC.
· All PWs associated with the VSI.
When a PE receives flood traffic from a PW, it will flood the traffic to all ACs in the VSI bound to the PW.
Full mesh and split horizon
A Layer 2 network requires a loop prevention protocol such as STP to avoid loops. However, a loop prevention protocol on PEs brings management and maintenance difficulties. Therefore, EVPN VPLS uses the following methods to prevent loops:
· Full mesh—Every two PEs in an EVPN instance must establish PWs. The PWs form a full mesh among PEs in the EVPN instance.
· Split horizon—A PE does not forward packets received from a PW to any other PWs in the same VSI but only forwards those packets to ACs.
EVPN VPLS multihoming
About EVPN VPLS multihoming
As shown in Figure 2, EVPN VPLS supports deploying multiple PEs at a site for redundancy and high availability. On the redundant PEs, Ethernet links connected to the site form an ES that is uniquely identified by an ESI. EVPN VPLS supports only dualhoming.
Figure 2 EVPN VPLS multihoming
DF election
To prevent redundant PEs from sending duplicate flood traffic to a multihomed site, a designated forwarder (DF) is elected from the PEs for each AC to forward flood traffic to the AC. PEs that fail the election are assigned the backup designated forwarder (BDF) role. BDFs of an AC do not forward flood traffic to the AC.
Redundant PEs at a site send Ethernet segment routes to one another to advertise ES and PE IP mappings. A PE accepts the Ethernet segment routes only when it is configured with an ESI. Then, the PEs select a DF for each AC based on the ES and PE IP mappings by using the following procedure:
2. Divide the lowest VLAN ID permitted on an AC by the number of the redundant PEs, and match the reminder to the sequence numbers of IP addresses.
3. Assign the DF role to the PE that uses the IP address with the matching sequence number.
The following uses the AC in Figure 3 as an example to explain the DF election procedure:
4. PE 1 and PE 2 send Ethernet segment routes to each other.
5. The PEs assign sequence numbers 0 and 1 to IP addresses 1.1.1.1 and 2.2.2.2 in the Ethernet segment routes, respectively.
6. The PEs divide 4 (the lowest VLAN ID permitted by the AC) by 2 (the number of redundant PEs), and match the reminder 0 to the sequence numbers of the IP addresses.
7. The DF role is assigned to PE 1 at 1.1.1.1.
Redundancy mode
The device supports single-active redundancy mode and all-active redundancy mode of EVPN VPLS multihoming.
· Single-active mode—This mode allows one of the redundant PEs to forward traffic. When the primary PE becomes unavailable because of device failure or link failure, traffic is switched to the secondary PE for forwarding.
· All-active mode—This mode allows all redundant PEs to a multihomed site to load share unicast traffic.
IP aliasing
In all-active redundancy mode, all redundant PEs of an ES advertise the ES to remote PEs through MP-BGP. IP aliasing allows a remote PE to add the IP addresses of all the redundant PEs as the next hops for the MAC or ARP information received from one of these PEs. This mechanism creates ECMP routes between the remote PE and the redundant PEs.
Local FRR for EVPN VPLS
As shown in Figure 4, CE 1 is dualhomed to PE 1 and PE 2, and PE 1 is the DF. When the AC on PE 1 fails, PE 1 deletes the corresponding MAC address entries and advertises the local unreachable event to PE 2 and remote PEs (PE 3 in this example). Then, the remote PEs will switch traffic destined for CE 1 to the tunnels to PE 2. This process takes some time. PE 1 might receive packets destined for CE 1 before the remote PEs are notified of the unreachable event and perform link switchover. In this situation, PE 1 drops the packets, because the AC's MAC address entries have been deleted. To resolve this issue, enable local FRR on PE 1. If an AC fails, PE 1 changes the output interface of the AC's MAC address entries to the index of the PW between PE 1 and PE 2. When receiving packets from remote PEs after its AC fails, PE 1 forwards the packets to PE 2 over the PW to prevent traffic loss.
Figure 4 Local FRR network diagram
ARP flood suppression
ARP flood suppression reduces ARP request broadcasts by enabling a PE to reply to ARP requests on behalf of VMs.
As shown in Figure 5, this feature snoops ARP requests, ARP responses, and BGP EVPN routes to populate the ARP flood suppression table with local and remote MAC addresses. If an ARP request has a matching entry, the PE replies to the request on behalf of the VM. If no match is found, the PE floods the request to both local and remote sites.
Figure 5 ARP flood suppression
ARP flood suppression uses the following workflow:
1. CE1 sends an ARP request to obtain the MAC address of CE 2.
2. PE 1 creates a suppression entry for CE 1, floods the ARP request to local CEs and remote PEs (PE 2 and PE 3) in the VSI, and sends the suppression entry to PE 2 and PE 3 through BGP EVPN. Unicast-mode flooding is used to illustrate the workflow.
3. PE 2 and PE 3 de-encapsulate the ARP request and broadcast the request to local CEs in the VSI.
4. CE 2 sends an ARP reply after it receives the ARP request.
5. PE 2 creates a suppression entry for CE 2, forwards the ARP reply to PE 1, and sends the suppression entry to PE 1 and PE 3 through BGP EVPN.
6. PE 1 de-encapsulates the ARP reply and forwards the ARP reply to CE 1.
7. CE 4 sends an ARP request to obtain the MAC address of CE 1.
8. PE 1 creates a suppression entry for CE 4 and replies to the ARP request.
9. CE 3 sends an ARP request to obtain the MAC address of CE 1.
10. PE 3 creates a suppression entry for CE 3 and replies to the ARP request.
Control word
The control word field is between the MPLS label stack and the Layer 2 data. It carries control information for the Layer 2 frame, for example, the sequence number.
The control word feature has the following functions:
· Avoids fragment disorder. In multipath forwarding, fragments received might be disordered. The control word feature reorders the fragments according to the sequence number carried in the control word field.
· Identifies the original payload length for packets that include padding.
The control word field is optional for EVPN VPLS. You can configure whether to carry the control word field in packets sent on PWs. If you enable the control word feature on PEs at both ends of a PW, packets transmitted on the PW carry the control word field. Otherwise, the packets do not carry the control word field.
L2VPN flow label
Packets carrying different types of traffic might be transmitted through the same PW and encapsulated with the same PW label. The P devices forward the traffic flows of a PW over the same path even if Equal Cost Multiple Paths (ECMPs) exist.
The L2VPN flow label feature can enable a P device to perform load sharing on packets based on the flow types.
After you configure this feature, the P and PE devices process packets as follows:
· When the ingress PE encapsulates a packet, it adds a flow label before it adds a PW label, as shown in Figure 6.
The ingress PE adds different flow labels for packets of different traffic types.
· The P devices perform load sharing on packets based on the flow labels.
· The egress PE removes both the PW and flow labels from a packet before forwarding the packet.
Figure 6 L2VPN flow label feature
You can enable the flow label sending, receiving, or both sending and receiving capabilities on a PE.
· The sending capability enables a PE to send packets with flow labels. The PE adds a flow label before it adds a PW label to a packet during encapsulation.
· The receiving capability enables a PE to identify the flow label in a received packet and removes the flow label before forwarding the packet.
For two PEs to successfully negotiate the flow label capabilities, make sure one end has the sending capability and the other end has the receiving capability.
For EVPN VPLS, you must manually configure flow label capabilities for the local and remote PEs.
MAC mobility
MAC mobility refers to the movement of a VM or host from one ES to another. The source PE is unaware of the MAC move event. To notify other PEs of the change, the destination PE advertises a MAC/IP advertisement route for the MAC address. The source PE withdraws the old route for the MAC address after receiving the new route. The MAC/IP advertisement route has a sequence number that increases when the MAC address moves. The sequence number identifies the most recent move if the MAC address moves multiple times.
EVPN VPLS tasks at a glance
To configure EVPN VPLS, perform the following tasks:
b. (Optional.) Configure VSI parameters
2. Configuring an EVPN instance
¡ Mapping a Layer 3 interface to a VSI
4. Configuring BGP to advertise BGP EVPN routes
a. Enabling BGP to advertise BGP EVPN routes
b. Enabling advertisement of MPLS-encapsulated BGP EVPN routes
c. (Optional.) Configuring optimal route selection and route advertisement settings
d. (Optional.) Maintaining BGP sessions
5. (Optional.) Configuring a PW class
6. (Optional.) Configuring EVPN VPLS multihoming
a. Assigning an ESI to an interface
b. (Optional.) Setting the DF election delay
c. (Optional.) Setting the advertisement delay timer for Ethernet auto-discovery routes
d. (Optional.) Enabling VSIs to ignore the state of ACs
e. (Optional.) Disabling advertisement of EVPN multihoming routes
7. (Optional.) Managing remote MAC address entries and remote ARP learning
¡ Disabling MAC address advertisement
¡ Disabling learning of MAC addresses from ARP or ND information
¡ Disabling ARP information advertisement
8. (Optional.) Optimizing and maintaining an EVPN VPLS network:
¡ Enabling ARP flood suppression
¡ Setting the maximum number of MAC addresses that an AC can learn
¡ Enabling packet statistics for an AC
9. (Optional.) Enabling SNMP notifications for L2VPN PW
Restrictions and guidelines: EVPN VPLS configuration
EVPN VPLS is mutually exclusive with EVPN-DCI dualhoming. Do not use the evpn edge group command in an EVPN VPLS network. For more information about EVPN-DCI dualhoming and the evpn edge group command, see "Configuring EVPN-DCI."
Configuring a VSI
Creating a VSI
1. Enter system view.
system-view
2. Enable L2VPN.
l2vpn enable
By default, L2VPN is disabled.
3. Create a VSI and enter VSI view.
vsi vsi-name
4. Bring up the VSI.
undo shutdown
By default, a VSI is not administratively down.
Configure VSI parameters
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Configure a VSI description.
description text
By default, a VSI does not have a description.
4. Set the MTU of the VSI.
mtu mtu
The default MTU for a VSI is 1500 bytes.
5. Set the broadcast, multicast, or unknown unicast bandwidth restraints of the VSI.
restrain { broadcast | multicast | unknown-unicast } bandwidth
By default, the broadcast, multicast, and unknown unicast bandwidth restraints of a VSI are 5120 kbps.
6. Configure MAC address learning features for the VSI:
a. Enable MAC address learning for the VSI.
mac-learning enable
By default, MAC address learning is enabled for a VSI.
b. (Optional.) Set a limit for the VSI's MAC address table.
mac-table limit mac-limit
By default, no limit is set for a VSI's MAC address table.
Configuring an EVPN instance
About this task
An EVPN instance acts as a VPLS instance in an EVPN VPLS network. The EVPN routes advertised by the PE carry the RD and route targets configured for the EVPN instance associated with a VSI.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Create an EVPN instance and enter EVPN instance view.
evpn encapsulation mpls
4. Configure an RD for the EVPN instance.
route-distinguisher route-distinguisher
By default, no RD is configured for an EVPN instance.
5. Configure route targets for the EVPN instance.
vpn-target { vpn-target&<1-8> | auto } [ both | export-extcommunity | import-extcommunity ]
By default, an EVPN instance does not have route targets.
Make sure the following requirements are met:
¡ The import targets of the EVPN instance do not match the export targets of the VPN instance associated with the VSI or the public instance.
¡ The export targets of the EVPN instance do not match the import targets of the VPN instance associated with the VSI or the public instance.
6. Apply a PW class to the EVPN instance.
pw-class class-name
By default, no PW class is applied to an EVPN instance.
The specified PW class applies to all PWs in the EVPN instance.
Mapping ACs to a VSI
Mapping a Layer 3 interface to a VSI
About this task
To assign the customer traffic on a Layer 3 interface to a VSI, map that interface to the VSI. The VSI uses its MAC address table to forward the customer traffic.
For more information about the commands in this task, see VPLS in MPLS Command Reference.
Procedure
1. Enter system view.
system-view
2. Enter Layer 3 interface view.
interface interface-type interface-number
3. Map the Layer 3 interface to a VSI.
xconnect vsi vsi-name [ access-mode { ethernet | vlan } ] [ track track-entry-number&<1-3> ]
By default, a Layer 3 interface is not mapped to a VSI.
Configuring BGP to advertise BGP EVPN routes
Restrictions and guidelines for BGP EVPN route advertisement
For more information about BGP commands in this task, see Layer 3—IP Routing Command Reference.
Enabling BGP to advertise BGP EVPN routes
1. Enter system view.
system-view
2. Configure a global router ID.
router id router-id
By default, no global router ID is configured.
3. Enable a BGP instance and enter BGP instance view.
bgp as-number [ instance instance-name ]
By default, BGP is disabled and no BGP instances exist.
4. Specify remote PEs as BGP peers.
peer { group-name | ipv4-address [ mask-length ] } as-number as-number
5. Create the BGP EVPN address family and enter BGP EVPN address family view.
address-family l2vpn evpn
6. Enable BGP to exchange BGP EVPN routes with a peer or peer group.
peer { group-name | ipv4-address [ mask-length ] } enable
By default, BGP does not exchange BGP EVPN routes with peers.
Enabling advertisement of MPLS-encapsulated BGP EVPN routes
About this task
Perform this task on PEs for them to establish PWs.
Procedure
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP EVPN address family view.
address-family l2vpn evpn
4. Enable MPLS encapsulation for the BGP EVPN routes advertised to a peer or peer group.
peer { group name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise encap-type mpls
By default, BGP EVPN routes use VXLAN encapsulation.
Configuring optimal route selection and route advertisement settings
1. Enter system view.
system-view
2. Enter BGP instance view.
bgp as-number [ instance instance-name ]
3. Enter BGP EVPN address family view.
address-family l2vpn evpn
4. Permit the local AS number to appear in routes from a peer or peer group and set the number of appearances.
peer { group-name | ipv4-address [ mask-length ] } allow-as-loop [ number ]
By default, the local AS number is not allowed in routes from peers.
5. Enable route target filtering for BGP EVPN routes.
policy vpn-target
By default, route target filtering is enabled for BGP EVPN routes.
6. (Optional.) Set the optimal route selection delay timer.
route-select delay delay-value
By default, the optimal route selection delay timer is 0 seconds, which means optimal route selection is not delayed.
7. (Optional.) Set the delay time for responding to recursive next hop changes.
nexthop recursive-lookup [ non-critical-event ] delay [ delay-value ]
By default, BGP responds to recursive next hop changes immediately.
8. Configure BGP route reflection settings:
a. Configure the device as an RR and specify a peer or peer group as its client.
peer { group-name | ipv4-address [ mask-length ] } reflect-client
By default, no RR or client is configured.
b. (Optional.) Enable BGP EVPN route reflection between clients.
reflect between-clients
By default, BGP EVPN route reflection between clients is enabled.
c. (Optional.) Configure the cluster ID of the RR.
reflector cluster-id { cluster-id | ipv4-address }
By default, an RR uses its own router ID as the cluster ID.
d. (Optional.) Create a reflection policy for the RR to filter reflected BGP EVPN routes.
rr-filter { ext-comm-list-number | ext-comm-list-name }
By default, an RR does not filter reflected BGP EVPN routes.
e. (Optional.) Create a reflection policy for the RR to filter reflected BGP EVPN routes.
reflect change-path-attribute
By default, an RR does not filter reflected BGP EVPN routes.
f. (Optional.) Add a peer or peer group to the nearby cluster.
peer { group-name | ipv4-address [ mask-length ] } reflect-nearby-group
By default, the nearby cluster does not have any peers or peer groups.
The RR does not change the next hop of routes reflected to peers or peer groups in the nearby cluster.
9. Configure the device to not change the next hop of routes advertised to an EBGP peer or peer group.
peer { group-name | ipv4-address [ mask-length ] } next-hop-invariable
By default, the device uses its address as the next hop of routes advertised to EBGP peers.
10. Apply a routing policy to routes received from or advertised to a peer or peer group.
peer { group-name | ipv4-address [ mask-length ] } route-policy route-policy-name { export | import }
By default, no routing policies are applied to routes received from or advertised to peers or peer groups.
11. Advertise the COMMUNITY attribute to a peer or peer group.
peer { group-name | ipv4-address [ mask-length ] } advertise-community
By default, the device does not advertise the COMMUNITY attribute to peers or peer groups.
12. Configure the BGP additional path feature.
¡ Configure the BGP additional path capabilities.
peer { group-name | ipv4-address [ mask-length ] } additional-paths { receive | send } *
By default, no BGP additional path capabilities are configured.
¡ Set the maximum number of Add-Path optimal routes that can be advertised to a peer or peer group.
peer { group-name | ipv4-address [ mask-length ] } advertise additional-paths best number
By default, a maximum number of one Add-Path optimal route can be advertised to a peer or peer group.
¡ Set the maximum number of Add-Path optimal routes that can be advertised to all peers.
additional-paths select-best best-number
By default, a maximum number of one Add-Path optimal route can be advertised to all peers.
Maintaining BGP sessions
Perform the following tasks in user view:
· Reset BGP sessions of the BGP EVPN address family.
reset bgp [ instance instance-name ] { as-number | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | all | external | group group-name | internal } l2vpn evpn
· Soft-reset BGP sessions of the BGP EVPN address family.
refresh bgp [ instance instance-name ] { ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | all | external | group group-name | internal } { export | import } l2vpn evpn
Configuring a PW class
About this task
In a PW class, you can configure PW attributes such as the PW data encapsulation type, and whether to enable control word. To simplify PW attribute configuration for PWs, you can configure a PW class and apply the PW class to the PWs.
Restrictions and guidelines
Make sure the same data encapsulation type is configured for the two PEs that are connected by the same PW.
For correct PW setup, make sure the status of the control word feature is the same on the two PEs that are connected by the same PW.
For more information about PW class commands, see MPLS L2VPN in MPLS Command Reference.
Procedure
1. Enter system view.
system-view
2. Create a PW class and enter PW class view.
pw-class class-name
3. Enable control word.
control-word enable
By default, control word is disabled.
4. Specify the PW data encapsulation type.
pw-type { ethernet | vlan }
By default, the PW data encapsulation type is VLAN.
5. Enable the flow label feature and configure flow label capabilities.
flow-label { both | receive | send } static
By default, the flow label feature is disabled.
EVPN VPLS does not support flow label capability negotiation for dynamic PWs in the current software version. For this command to take effect, you must specify the static keyword.
Configuring EVPN VPLS multihoming
Restrictions and guidelines for EVPN VPLS multihoming
In a multihomed site, AC configuration must be consistent on redundant PEs of the same ES.
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 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.
Setting the DF election delay
About this task
The DF election can be triggered by site-facing interface status changes, redundant PE membership changes, and interface ESI changes. To prevent frequent DF elections from degrading network performance, set the DF election delay. The DF election delay defines the minimum interval allowed between two DF elections.
Procedure
1. Enter system view.
system-view
2. Set the DF election delay.
evpn multihoming timer df-delay delay-value
By default, the DF election delay is 3 seconds.
Setting the advertisement delay timer for Ethernet auto-discovery routes
About this task
The advertisement delay timer for Ethernet auto-discovery routes helps reduce the traffic loss caused by a PE reboot at a multihomed EVPN VPLS network site.
At a multihomed EVPN VPLS network site, CE 1 is dualhomed to PE 1 and PE 2 through an aggregate link or smart trunk, and PE 3 is at a remote site. PE 1 forwards all traffic sent from CE 1 to the remote site, and PE 3 forwards the traffic that the remote site sends to CE 1 to both PE 1 and PE 2. When PE 1 reboots, it advertises Ethernet auto-discovery routes that carry next hop information to PE 3. If PE 3 has not received the MAC/IP advertisement routes advertised by PE 2 when receiving the Ethernet auto-discovery routes, it will forward traffic to both PE 1 and PE 2. In this situation, PE 1 does not have MAC address entries for CE 1 and drops the traffic.
To resolve this issue, set the advertisement delay timer for Ethernet auto-discovery routes on the CE-facing interface of PE 1. This timer allows PE 3 to receive the MAC/IP advertisement routes advertised by PE 2 before the Ethernet auto-discovery routes advertised by PE 1 and update its MAC address table timely.
Procedure
1. Enter system view.
system-view
2. Enable interface view.
interface interface-type interface-number
3. Set the advertisement delay timer for Ethernet auto-discovery routes.
evpn timer ad-delay delay-time
By default, advertisement of Ethernet auto-discovery routes is not delayed.
Configuring local FRR for EVPN VPLS
About this task
Local fast reroute (FRR) enables two PEs at a multihomed EVPN VPLS network site to set up a PW between them. This feature helps reduce the traffic loss caused by AC failure.
Restrictions and guidelines
On an EVPN instance, EVPN instance-specific local FRR configuration takes precedence over global local FRR configuration.
If you have executed the evpn frr local enable command on an EVPN instance, the undo evpn multihoming vpls-frr local command does not disable local FRR for the EVPN instance.
Perform this task on redundant PEs at a multihomed EVPN VPLS network site.
Enabling local FRR globally
1. Enter system view.
system-view
2. Enable local FRR globally for EVPN VPLS.
evpn multihoming vpls-frr local
By default, local FRR is disabled globally for EVPN VPLS.
Configuring local FRR on an EVPN instance
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter VSI EVPN instance view.
evpn encapsulation mpls
4. Configure local FRR on the EVPN instance.
evpn frr local { disable | enable }
By default, an EVPN instance uses the global local FRR configuration of EVPN VPLS.
Enabling VSIs to ignore the state of ACs
About this task
This task helps reduce the traffic loss caused by AC failure at a multihomed EVPN VPLS network site that uses single-active redundancy mode.
At a multihomed EVPN VPLS network site that uses single-active redundancy mode, CE 1 is dualhomed to PE 1 and PE 2 through a smart trunk. PE 1 is the primary PE, and PE 2 is the secondary PE. When the AC on PE 1 fails, PE 1 and PE 2 act as follows:
· PE 1 withdraws advertised Ethernet auto-discovery routes.
· PE 2 brings up its AC and advertises Ethernet auto-discovery routes to remote PEs.
The remote PEs switch traffic to the paths to PE 2 only after receiving the Ethernet auto-discovery routes advertised by PE 2, and traffic loss occurs during path switchover. To resolve this issue, enable VSIs to ignore the state of ACs on PE 2. This feature allows PE 2 to advertise Ethernet auto-discovery routes to remote PEs regardless of the state of ACs and speeds up path switchover when the AC on PE 1 fails.
Restrictions and guidelines for AC state ignore configuration
On a VSI, VSI-specific AC state ignore configuration takes precedence over global AC state ignore configuration.
If you have executed the ignore-ac-state enable command on a VSI, the undo l2vpn ignore-ac-state command does not disable the VSI from ignoring the state of ACs.
Perform this task together with the feature of generating MAC address entries for received MAC/IP advertisement routes.
Enabling VSIs to ignore the state of ACs globally
1. Enter system view.
system-view
2. Enable VSIs to ignore the state of ACs globally.
l2vpn ignore-ac-state
By default, VSIs does not ignore the state of ACs.
Configuring a VSI to ignore the state of ACs
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enable a VSI to ignore the state of ACs or disable a VSI from ignoring the state of ACs.
ignore-ac-state { enable | disable }
By default, a VSI uses the global AC state ignore configuration.
Disabling advertisement of EVPN multihoming routes
About this task
EVPN multihoming routes include Ethernet auto-discovery routes and Ethernet segment routes.
In a multihomed EVPN network, perform this task on a redundant PE before you reboot it. This operation allows other PEs to refresh their EVPN routing table to prevent traffic interruption caused by the reboot.
Procedure
1. Enter system view.
system-view
2. Disable advertisement of EVPN multihoming routes and withdraw the EVPN multihoming routes that have been advertised to remote sites.
evpn multihoming advertise disable
By default, the device advertises EVPN multihoming routes.
Managing remote MAC address entries and remote ARP learning
Disabling MAC address advertisement
About this task
The MAC information and ARP or ND information advertised by the PE overlap. To avoid duplication, disable MAC address advertisement and withdraw the MAC addresses advertised to remote PEs.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter EVPN instance view.
evpn encapsulation mpls
4. Disable MAC address advertisement and withdraw advertised MAC addresses.
mac-advertising disable
By default, MAC address advertisement is enabled.
Enabling MAC mobility event suppression
About this task
On an EVPN VPLS network, misconfiguration of MAC addresses might cause two sites to contain the same MAC address. In this condition, the PEs at the two sites constantly synchronize and update EVPN MAC address entries and determine that MAC mobility events occur. As a result, an inter-site loop might occur, and the bandwidth is occupied by MAC entry synchronization traffic. To eliminate loops and suppress those MAC mobility events, enable MAC mobility event suppression on the PEs.
The MAC mobility event suppression feature allows a MAC address to move at most the specified number of times (MAC mobility suppression threshold) out of a site within a MAC mobility detection cycle. If the suppression threshold has been reached for a MAC address within a detection cycle, the PE at the site suppresses the subsequent move after the MAC address moves back to the site. In addition, the PE learns the MAC address but does not advertise the MAC address.
Restrictions and guidelines
After you execute the undo evpn route mac-mobility suppression command or when the MAC mobility suppression time expires, a PE acts as follows:
· Advertises MAC address entries immediately for the suppressed MAC address entries that have not aged out.
· Relearns the MAC addresses for the suppressed MAC address entries that have aged out and advertises the MAC address entries.
If both MAC address entry conflicts and ARP entry conflicts exist for a MAC address, you must enable both MAC mobility event suppression and ARP mobility event suppression. If you enable only MAC mobility event suppression, the system cannot suppress MAC mobility events for the MAC address.
Procedure
1. Enter system view.
system-view
2. Enable MAC mobility event suppression.
evpn route mac-mobility suppression [ detect-cycle detect-time | detect-threshold move-times | suppression-time [ suppression-time | permanent ] ] *
By default, MAC mobility event suppression is disabled.
Disabling learning of MAC addresses from ARP or ND information
About this task
The MAC information and ARP or ND information advertised by a remote PE overlap. To avoid duplication, disable the learning of MAC addresses from ARP or ND information. EVPN will learn remote MAC addresses only from the MAC information advertised from remote sites.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter EVPN instance view.
evpn encapsulation mpls
4. Disable the EVPN instance from learning MAC addresses from ARP information.
arp mac-learning disable
By default, an EVPN instance learns MAC addresses from ARP information.
5. Disable the EVPN instance from learning MAC addresses from ND information.
nd mac-learning disable
By default, an EVPN instance learns MAC addresses from ND information.
Disabling ARP information advertisement
About this task
In an EVPN VPLS network, you can disable ARP information advertisement for an EVPN instance to save resources if all user terminals in the EVPN instance are attached to one PE. The EVPN instance will stop advertising ARP information through MAC/IP advertisement routes and withdraw advertised ARP information.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enter EVPN instance view.
evpn encapsulation mpls
4. Disable ARP information advertisement for the EVPN instance.
arp-advertising disable
By default, ARP information advertisement is enabled for an EVPN instance.
Enabling ARP mobility event suppression
About this task
On an EVPN VPLS network, misconfiguration of IP addresses might cause two sites to contain the same IP address. In this condition, PEs at the two sites constantly synchronize and update EVPN ARP entries and determine that ARP mobility events occur. As a result, an inter-site loop might occur, and the bandwidth is occupied by ARP entry synchronization traffic. To eliminate loops and suppress those ARP mobility events, enable ARP mobility event suppression on the PEs.
The ARP mobility event suppression feature allows an IP address to move at most the specified number of times (ARP mobility suppression threshold) out of a site within an ARP mobility detection cycle. If the suppression threshold has been reached for an IP address within a detection cycle, the PE at the site suppresses the subsequent move after the IP address moves back to the site. In addition, the PE learns ARP information for the IP address but does not advertise the ARP information.
Restrictions and guidelines
After you execute the undo evpn route arp-mobility suppression command or when the ARP mobility suppression time expires, a PE acts as follows:
· Advertises ARP information immediately for the suppressed ARP entries that have not aged out.
· Relearns ARP information for the suppressed ARP entries that have aged out and advertises the ARP information.
ARP mobility event suppression takes effect on an EVPN VPLS network only when ARP flood suppression is enabled.
If both MAC address entry conflicts and ARP entry conflicts exist for a MAC address, you must enable both MAC mobility event suppression and ARP mobility event suppression. If you enable only MAC mobility event suppression, the system cannot suppress MAC mobility events for the MAC address.
Procedure
1. Enter system view.
system-view
2. Enable ARP mobility event suppression.
evpn route arp-mobility suppression [ detect-cycle detect-time | detect-threshold move-times | suppression-time [ suppression-time | permanent ] ] *
By default, ARP mobility event suppression is disabled.
Enabling ARP flood suppression
About this task
Use ARP flood suppression to reduce ARP request broadcasts.
The aging timer is fixed at 25 minutes for ARP flood suppression entries. If the flooding disable command is configured, set the MAC aging timer to a higher value than the aging timer for ARP flood suppression entries on all PEs. This setting prevents the traffic blackhole that occurs when a MAC address entry ages out before its ARP flood suppression entry ages out. To set the MAC aging timer, use the mac-address timer command.
Procedure
1. Enter system view.
system-view
2. Enter VSI view.
vsi vsi-name
3. Enable ARP flood suppression.
arp suppression enable
By default, ARP flood suppression is disabled.
Setting the maximum number of MAC addresses that an AC can learn
About setting the maximum number of MAC addresses that an AC can learn
Perform this task to prevent a single AC (Layer 3 interface or Ethernet service instance) from occupying too many MAC address entry resources.
Setting the maximum number of MAC addresses that a Layer 3 interface type AC can learn
1. Enter system view.
system-view
2. Enter Layer 3 Ethernet interface view or Layer 3 aggregate interface view.
interface interface-type interface-number
3. Set the maximum number of MAC addresses that a Layer 3 interface type AC can learn and the actions performed when the maximum is reached.
ac mac-limit { action { discard | forward } | alarm { disable | enable } | maximum mac-limit } *
By default, no limit is set to the number of MAC addresses that a Layer 3 interface type AC can learn.
For more information about this command, see VPLS in MPLS Command Reference.
Enabling packet statistics for an AC
Restrictions and guidelines for AC packet statistics
For the ac statistics enable command to take effect on a Layer 3 interface, you must map the Layer 3 interface to a VSI. When you modify the VSI mapping, the packet statistics of the interface are cleared. To display the statistics, use the display l2vpn interface verbose command. To clear packet statistics for Layer 3 interfaces, use the reset l2vpn statistics ac command
Enabling packet statistics for a Layer 3 interface
1. Enter system view.
system-view
2. Enter interface view.
¡ Enter Layer 3 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 3 aggregate interface view.
interface route-aggregation interface-number
3. Enable packet statistics for the Layer 3 interface.
ac statistics enable
By default, the packet statistics feature is disabled for Layer 3 interfaces that act as ACs.
Enabling SNMP notifications for L2VPN PWs
About this task
This feature enables L2VPN to generate SNMP notifications when PW deletions, PW switchovers, or PW status changes occur. For L2VPN event notifications to be sent correctly, you must also configure SNMP on the device. For more information about SNMP configuration, see the network management and monitoring configuration guide for the device.
Procedure
1. Enter system view.
system-view
2. Enable SNMP notifications for L2VPN PWs.
snmp-agent trap enable l2vpn [ pw-delete | pw-switch | pw-up-down ] *
By default, SNMP notifications for L2VPN PWs are disabled.
Display and maintenance commands for EVPN VPLS
Execute display commands in any view and reset commands in user view.
For more information about the following BGP commands, see Layer 3—IP Routing Command Reference:
· display bgp group.
· display bgp peer.
· display bgp update-group.
Task |
Command |
Display BGP peer group information. |
display bgp [ instance instance-name ] group l2vpn evpn [ group-name group-name ] |
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 { auto-discovery | es | imet | ip-prefix | mac-ip } ] [ { evpn-route route-length | evpn-prefix } [ advertise-info ] | ipv4-address | ipv6-address | mac-address ] | statistics ] |
Display BGP peer or peer group information. |
display bgp [ instance instance-name ] peer l2vpn evpn [ ipv4-address mask-length | ipv6-address prefix-length | { ipv4-address | ipv6-address | group-name group-name } log-info | [ ipv4-address | ipv6-address ] verbose ] |
Display information about BGP update groups. |
display bgp [ instance instance-name ] update-group l2vpn evpn [ ipv4-address | ipv6-address ] |
Display information about peers that are automatically discovered through BGP. |
display evpn auto-discovery { { imet | mac-ip } [ mpls | vxlan ] [ peer ip-address] [ vsi vsi-name ] | macip-prefix [ nexthop next-hop ] [ count ] } |
Display EVPN ES information. |
display evpn es { local [ vsi vsi-name ] [ esi esi-id ] [ verbose ] | remote [ vsi vsi-name ] [ esi esi-id ] [ nexthop next-hop ] } |
Display EVPN ARP entries. |
display evpn route arp [ local | remote ] [ public-instance | vpn-instance vpn-instance-name ] [ count ] |
Display ARP flood suppression entries. |
display evpn route arp suppression [ mpls | vxlan ] [ local | remote ] [ vsi vsi-name ] [ count ] |
Display EVPN ARP mobility information. |
display evpn route arp-mobility [ public-instance | vpn-instance vpn-instance-name ] [ ip ip-address ] |
Display EVPN MAC address entries. |
display evpn route mac [ mpls | vxlan ] [ local | remote ] [ vsi vsi-name ] [ count ] |
Display EVPN MAC mobility information. |
display evpn route mac-mobility [ vsi vsi-name ] [ mac-address mac-address ] |
Display EVPN ND entries. |
display evpn route nd [ local | remote ] [ public-instance | vpn-instance vpn-instance-name ] [ count ] |
Display the routing table for a VPN instance. |
display evpn routing-table { public-instance | vpn-instance vpn-instance-name } [ count ] |
Display EVPN VSI information. |
display evpn vsi [ name vsi-name ] [ verbose ] |
Advertise ARP information for suppressed IP addresses for one time. |
reset evpn route arp-mobility suppression [ public-instance | vpn-instance vpn-instance-name [ ip ip-address ] ] |
Advertise suppressed MAC addresses for one time. |
reset evpn route mac-mobility suppression [ vsi vsi-name [ mac mac-address ] ] |
EVPN VPLS configuration examples
Example: Configuring EVPN VPLS between singlehomed sites
Network configuration
As shown in Figure 7, set up a path between PE 1 and PE 2 for the CEs in site 1 and site 2 to communicate through EVPN VPLS over the MPLS or IP backbone network.
Device |
Interface |
IP address |
Device |
Interface |
IP address |
CE 1 |
GE1/2/0/1 |
10.1.1.10/24 |
P |
Loop0 |
3.3.3.3/32 |
PE 1 |
Loop0 |
1.1.1.1/32 |
|
GE1/2/0/1 |
11.1.1.2/24 |
|
GE1/2/0/1 |
N/A |
|
GE1/2/0/2 |
11.1.2.2/24 |
|
GE1/2/0/2 |
11.1.1.1/24 |
PE 2 |
Loop0 |
2.2.2.2/32 |
CE 2 |
GE1/2/0/1 |
10.1.1.20/24 |
|
GE1/2/0/1 |
N/A |
|
|
|
|
GE1/2/0/2 |
11.1.2.1/24 |
Procedure
1. Configure CE 1.
<CE1> system-view
[CE1] interface gigabitethernet 1/2/0/1
[CE1-GigabitEthernet1/2/0/1] ip address 10.1.1.10 24
[CE1-GigabitEthernet1/2/0/1] quit
2. Configure PE 1:
# Configure the LSR ID.
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 1.1.1.1
# Enable L2VPN.
[PE1] l2vpn enable
# Enable global LDP.
[PE1] mpls ldp
[PE1-ldp] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to the P device), and enable LDP on the interface.
[PE1] interface gigabitethernet 1/2/0/2
[PE1-GigabitEthernet1/2/0/2] ip address 11.1.1.1 24
[PE1-GigabitEthernet1/2/0/2] mpls enable
[PE1-GigabitEthernet1/2/0/2] mpls ldp enable
[PE1-GigabitEthernet1/2/0/2] quit
# Configure OSPF for LDP to create LSPs.
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# Create an IBGP connection to PE 2, and enable BGP to advertise L2VPN information to PE 2.
[PE1] bgp 100
[PE1-bgp-default] peer 2.2.2.2 as-number 100
[PE1-bgp-default] peer 2.2.2.2 connect-interface loopback 0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 2.2.2.2 enable
[PE1-bgp-default-evpn] peer 2.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# Create VSI vpna, create an EVPN instance on the VSI, enable MPLS encapsulation, and configure an RD and route targets for the EVPN instance.
[PE1] vsi vpna
[PE1-vsi-vpna] evpn encapsulation mpls
[PE1-vsi-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-vsi-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-vsi-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-vsi-vpna-evpn-mpls] quit
[PE1-vsi-vpna] quit
# Map GigabitEthernet 1/2/0/1 (the interface connected to CE 1) to VSI vpna.
[PE1] interface gigabitethernet 1/2/0/1
[PE1-GigabitEthernet1/2/0/1] xconnect vsi vpna
[PE1-GigabitEthernet1/2/0/1] quit
3. Configure the P device:
# Configure the LSR ID.
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 3.3.3.3 32
[P-LoopBack0] quit
[P] mpls lsr-id 3.3.3.3
# Enable global LDP.
[P] mpls ldp
[P-ldp] quit
# Configure GigabitEthernet 1/2/0/1 (the interface connected to PE 1), and enable LDP on the interface.
[P] interface gigabitethernet 1/2/0/1
[P-GigabitEthernet1/2/0/1] ip address 11.1.1.2 24
[P-GigabitEthernet1/2/0/1] mpls enable
[P-GigabitEthernet1/2/0/1] mpls ldp enable
[P-GigabitEthernet1/2/0/1] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to PE 2), and enable LDP on the interface.
[P] interface gigabitethernet 1/2/0/2
[P-GigabitEthernet1/2/0/2] ip address 11.1.2.2 24
[P-GigabitEthernet1/2/0/2] mpls enable
[P-GigabitEthernet1/2/0/2] mpls ldp enable
[P-GigabitEthernet1/2/0/2] quit
# Configure OSPF for LDP to create LSPs.
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 11.1.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
4. Configure PE 2:
# Configure the LSR ID.
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 2.2.2.2 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 2.2.2.2
# Enable L2VPN.
[PE2] l2vpn enable
# Enable global LDP.
[PE2] mpls ldp
[PE2-ldp] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to the P device), and enable LDP on the interface.
[PE2] interface gigabitethernet 1/2/0/2
[PE2-GigabitEthernet1/2/0/2] ip address 11.1.2.1 24
[PE2-GigabitEthernet1/2/0/2] mpls enable
[PE2-GigabitEthernet1/2/0/2] mpls ldp enable
[PE2-GigabitEthernet1/2/0/2] quit
# Configure OSPF for LDP to create LSPs.
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 11.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# Create an IBGP connection to PE 1, and enable BGP to advertise L2VPN information to PE 1.
[PE2] bgp 100
[PE2-bgp-default] peer 1.1.1.1 as-number 100
[PE2-bgp-default] peer 1.1.1.1 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 1.1.1.1 enable
[PE2-bgp-default-evpn] peer 1.1.1.1 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# Create VSI vpna, create an EVPN instance on the VSI, enable MPLS encapsulation, and configure an RD and route targets for the EVPN instance.
[PE2] vsi vpna
[PE2-vsi-vpna] evpn encapsulation mpls
[PE2-vsi-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-vsi-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-vsi-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-vsi-vpna-evpn-mpls] quit
[PE2-vsi-vpna] quit
# Map GigabitEthernet 1/2/0/1 (the interface connected to CE 2) to VSI vpna.
[PE2] interface gigabitethernet 1/2/0/1
[PE2-GigabitEthernet1/2/0/1] xconnect vsi vpna
[PE2-GigabitEthernet1/2/0/1] quit
5. Configure CE 2.
<CE2> system-view
[CE2] interface gigabitethernet 1/2/0/1
[CE2-GigabitEthernet1/2/0/1] ip address 10.1.1.20 24
[CE2-GigabitEthernet1/2/0/1] quit
Verifying the configuration
# Verify that an EVPN PW has been established between PE 1 and PE 2.
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
2.2.2.2 - 775127/775127 EVPN M 8 Up
# Display PW information on PE 2.
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
1.1.1.1 - 775127/775127 EVPN M 8 Up
# Verify that CE 1 and CE 2 can ping each other. (Details not shown.)
Example: Configuring EVPN VPLS multihoming
Network configuration
As shown in Figure 8, configure EVPN VPLS for dualhomed site 1 and singlehomed site 2 to communicate over the MPLS or IP backbone network.
Device |
Interface |
IP address |
Device |
Interface |
IP address |
PE 1 |
Loop0 |
192.1.1.1/32 |
CE 1 |
RAGG1 |
100.1.1.1/24 |
|
GE1/2/0/1 |
N/A |
CE 2 |
GE1/2/0/1 |
100.1.1.2/24 |
|
GE1/2/0/2 |
10.1.1.1/24 |
PE 3 |
Loop0 |
192.3.3.3/32 |
|
GE1/2/0/3 |
10.1.3.1/24 |
|
GE1/2/0/1 |
N/A |
PE 2 |
Loop0 |
192.2.2.2/32 |
|
GE1/2/0/2 |
10.1.1.2/24 |
|
GE1/2/0/1 |
N/A |
|
GE1/2/0/3 |
10.1.2.2/24 |
|
GE1/2/0/2 |
10.1.2.1/24 |
|
|
|
|
GE1/2/0/3 |
10.1.3.2/24 |
|
|
|
Procedure
1. Configure CE 1:
# Create static Layer 3 aggregate interface 1 and assign it an IP address.
<CE1> system-view
[CE1] interface route-aggregation 1
[CE1-Route-Aggregation1] ip address 100.1.1.1 24
[CE1-Route-Aggregation1] quit
# Assign GigabitEthernet 1/2/0/1 and GigabitEthernet 1/2/0/2 to aggregation group 1.
[CE1] interface gigabitethernet 1/2/0/1
[CE1-GigabitEthernet1/2/0/1] port link-aggregation group 1
[CE1-GigabitEthernet1/2/0/1] quit
[CE1] interface gigabitethernet 1/2/0/2
[CE1-GigabitEthernet1/2/0/2] port link-aggregation group 1
[CE1-GigabitEthernet1/2/0/2] quit
2. Configure PE 1:
# Configure the LSR ID.
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.1.1.1
# Enable L2VPN.
[PE1] l2vpn enable
# Enable global LDP.
[PE1] mpls ldp
[PE1-ldp] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to PE 3), and enable LDP on the interface.
[PE1] interface gigabitethernet 1/2/0/2
[PE1-GigabitEthernet1/2/0/2] ip address 10.1.1.1 24
[PE1-GigabitEthernet1/2/0/2] mpls enable
[PE1-GigabitEthernet1/2/0/2] mpls ldp enable
[PE1-GigabitEthernet1/2/0/2] quit
# Configure GigabitEthernet 1/2/0/3 (the interface connected to PE 2), and enable LDP on the interface.
[PE1] interface gigabitethernet 1/2/0/3
[PE1-GigabitEthernet1/2/0/3] ip address 10.1.3.1 24
[PE1-GigabitEthernet1/2/0/3] mpls enable
[PE1-GigabitEthernet1/2/0/3] mpls ldp enable
[PE1-GigabitEthernet1/2/0/3] quit
# Configure OSPF for LDP to create LSPs.
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# Create IBGP connections to PE 2 and PE 3, and enable BGP to advertise routes to PE 2 and PE 3.
[PE1] bgp 100
[PE1-bgp-default] peer 192.2.2.2 as-number 100
[PE1-bgp-default] peer 192.2.2.2 connect-interface loopback 0
[PE1-bgp-default] peer 192.3.3.3 as-number 100
[PE1-bgp-default] peer 192.3.3.3 connect-interface loopback 0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.2.2.2 enable
[PE1-bgp-default-evpn] peer 192.3.3.3 enable
[PE1-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# Assign an ESI to GigabitEthernet 1/2/0/1.
[PE1] interface gigabitethernet 1/2/0/1
[PE1-GigabitEthernet1/2/0/1] esi 1.1.1.1.1
[PE1-GigabitEthernet1/2/0/1] quit
# Create VSI vpna, create an EVPN instance on the VSI, enable MPLS encapsulation, and configure an RD and route targets for the EVPN instance.
[PE1] vsi vpna
[PE1-vsi-vpna] evpn encapsulation mpls
[PE1-vsi-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-vsi-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-vsi-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-vsi-vpna-evpn-mpls] quit
[PE1-vsi-vpna] quit
# Map GigabitEthernet 1/2/0/1 (the interface connected to CE 1) to VSI vpna.
[PE1] interface gigabitethernet 1/2/0/1
[PE1-GigabitEthernet1/2/0/1] xconnect vsi vpna
[PE1-GigabitEthernet1/2/0/1] quit
3. Configure PE 2:
# Configure the LSR ID.
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.2.2.2 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.2.2.2
# Enable L2VPN.
[PE2] l2vpn enable
# Enable global LDP.
[PE2] mpls ldp
[PE2-ldp] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to PE 3), and enable LDP on the interface.
[PE2] interface gigabitethernet 1/2/0/2
[PE2-GigabitEthernet1/2/0/2] ip address 10.1.2.1 24
[PE2-GigabitEthernet1/2/0/2] mpls enable
[PE2-GigabitEthernet1/2/0/2] mpls ldp enable
[PE2-GigabitEthernet1/2/0/2] quit
# Configure GigabitEthernet 1/2/0/3 (the interface connected to PE 1), and enable LDP on the interface.
[PE2] interface gigabitethernet 1/2/0/3
[PE2-GigabitEthernet1/2/0/3] ip address 10.1.3.2 24
[PE2-GigabitEthernet1/2/0/3] mpls enable
[PE2-GigabitEthernet1/2/0/3] mpls ldp enable
[PE2-GigabitEthernet1/2/0/3] quit
# Configure OSPF for LDP to create LSPs.
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# Create IBGP connections to PE 1 and PE 3, and enable BGP to advertise routes to PE 1 and PE 3.
[PE2] bgp 100
[PE2-bgp-default] peer 192.1.1.1 as-number 100
[PE2-bgp-default] peer 192.1.1.1 connect-interface loopback 0
[PE2-bgp-default] peer 192.3.3.3 as-number 100
[PE2-bgp-default] peer 192.3.3.3 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.1.1.1 enable
[PE2-bgp-default-evpn] peer 192.3.3.3 enable
[PE2-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[PE2-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# Assign an ESI to GigabitEthernet 1/2/0/1.
[PE2] interface gigabitethernet 1/2/0/1
[PE2-GigabitEthernet1/2/0/1] esi 1.1.1.1.1
[PE2-GigabitEthernet1/2/0/1] quit
# Create VSI vpna, create an EVPN instance on the VSI, enable MPLS encapsulation, and configure an RD and route targets for the EVPN instance.
[PE2] vsi vpna
[PE2-vsi-vpna] evpn encapsulation mpls
[PE2-vsi-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-vsi-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-vsi-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-vsi-vpna-evpn-mpls] quit
[PE2-vsi-vpna] quit
# Map GigabitEthernet 1/2/0/1 (the interface connected to CE 1) to VSI vpna.
[PE2] interface gigabitethernet 1/2/0/1
[PE2-GigabitEthernet1/2/0/1] xconnect vsi vpna
[PE2-GigabitEthernet1/2/0/1] quit
4. Configure PE 3:
# Configure the LSR ID.
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 192.3.3.3 32
[PE3-LoopBack0] quit
[PE3] mpls lsr-id 192.3.3.3
# Enable L2VPN.
[PE3] l2vpn enable
# Enable global LDP.
[PE3] mpls ldp
[PE3-ldp] quit
# Configure GigabitEthernet 1/2/0/2 (the interface connected to PE 1) and GigabitEthernet 1/2/0/3 (the interface connected to PE 2), and enable LDP on the interfaces.
[PE3] interface gigabitethernet 1/2/0/2
[PE3-GigabitEthernet1/2/0/2] ip address 10.1.1.2 24
[PE3-GigabitEthernet1/2/0/2] mpls enable
[PE3-GigabitEthernet1/2/0/2] mpls ldp enable
[PE3-GigabitEthernet1/2/0/2] quit
[PE3] interface gigabitethernet 1/2/0/3
[PE3-GigabitEthernet1/2/0/3] ip address 10.1.2.2 24
[PE3-GigabitEthernet1/2/0/3] mpls enable
[PE3-GigabitEthernet1/2/0/3] mpls ldp enable
[PE3-GigabitEthernet1/2/0/3] quit
# Configure OSPF for LDP to create LSPs.
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
# Create IBGP connections to PE 1 and PE 2, and enable BGP to advertise routes to PE 1 and PE 2.
[PE3] bgp 100
[PE3-bgp-default] peer 192.1.1.1 as-number 100
[PE3-bgp-default] peer 192.1.1.1 connect-interface loopback 0
[PE3-bgp-default] peer 192.2.2.2 as-number 100
[PE3-bgp-default] peer 192.2.2.2 connect-interface loopback 0
[PE3-bgp-default] address-family l2vpn evpn
[PE3-bgp-default-evpn] peer 192.1.1.1 enable
[PE3-bgp-default-evpn] peer 192.2.2.2 enable
[PE3-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[PE3-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE3-bgp-default-evpn] quit
[PE3-bgp-default] quit
# Create VSI vpna, create an EVPN instance on the VSI, enable MPLS encapsulation, and configure an RD and route targets for the EVPN instance.
[PE3] vsi vpna
[PE3-vsi-vpna] evpn encapsulation mpls
[PE3-vsi-vpna-evpn-mpls] route-distinguisher 1:1
[PE3-vsi-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE3-vsi-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE3-vsi-vpna-evpn-mpls] quit
[PE3-vsi-vpna] quit
# Map GigabitEthernet 1/2/0/1 (the interface connected to CE 2) to VSI vpna.
[PE3] interface gigabitethernet 1/2/0/1
[PE3-GigabitEthernet1/2/0/1] xconnect vsi vpna
[PE3-GigabitEthernet1/2/0/1] quit
5. Configure CE 2.
<CE2> system-view
[CE2] interface gigabitethernet 1/2/0/1
[CE2-GigabitEthernet1/2/0/1] ip address 100.1.1.2 24
[CE2-GigabitEthernet1/2/0/1] quit
Verifying the configuration
# Verify that PE 1 has established EVPN PWs to PE 2 and PE 3.
<PE1> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
1 up, 1 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.3.3.3 - 710263/710265 EVPN M 8 Up
192.2.2.2 - 710263/710124 EVPN M 9 Up
# Verify that PE 1 has local ES information.
<PE1> display evpn es local
Redundancy mode: A - All-active, S - Single-active
VSI name : vpna
ESI Tag ID DF address Mode State ESI label
0001.0001.0001.0001.0001 - 192.1.1.1 A Up 775128
# Verify that PE 1 has remote ES information.
<Sysname> display evpn es remote
Control Flags: P - Primary, B - Backup, C - Control word
VSI name : vpna
ESI : 0001.0001.0001.0001.0001
Ethernet segment routes :
192.2.2.2
A-D per ES routes :
Peer IP Remote Redundancy mode
192.2.2.2 All-active
A-D per EVI routes :
Tag ID Peer IP Control Flags
- 192.2.2.2 B
# Verify that PE 2 has established EVPN PWs to PE 1 and PE 3.
<PE2> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
1 up, 1 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 - 710124/710263 EVPN M 8 Up
192.3.3.3 - 710124/710265 EVPN M 9 Up
# Verify that PE 3 has established EVPN PWs to PE 1 and PE 2.
<PE3> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 - 710265/710263 EVPN M 8 Up
192.2.2.2 - 710265/710124 EVPN M 9 Up
# Verify that CE 1 and CE 2 can ping each other when the PW on PE 1 or PE 2 fails. (Details not shown.)