Title | Size | Download |
---|---|---|
04-MPLS L2VPN Configuration | 359.03 KB |
Table of Contents
Chapter 1 MPLS L2VPN Configuration
1.1.1 Introduction to MPLS L2VPN
1.3 Configuring CCC MPLS L2VPN
1.3.1 Configuration Prerequisites
1.4 Configuring SVC MPLS L2VPN
1.4.1 Configuration Prerequisites
1.5 Configuring Martini MPLS L2VPN
1.5.1 Configuration Prerequisites
1.6 Configuring Kompella MPLS L2VPN
1.6.1 Configuration Prerequisites
1.7 Displaying and Maintaining MPLS L2VPN
1.7.1 Displaying the Operation of MPLS L2VPN
1.7.2 Resetting BGP L2VPN Connections
1.8 MPLS L2VPN Configuration Example
1.8.1 Example for Configuring a Local CCC Connection
1.8.2 Example for Configuring a Remote CCC Connection
1.8.3 Example for Configuring SVC MPLS L2VPN
1.8.4 Example for Configuring Martini MPLS L2VPN
1.8.5 Example for Configuring Kompella MPLS L2VPN
1.8.6 Example for Configuring a Kompella Local Connection
1.9 Troubleshooting MPLS L2VPN
Chapter 1 MPLS L2VPN Configuration
When configuring MPLS L2VPN, go to these sections for information you are interested in:
l Configuring Martini MPLS L2VPN
l Configuring Kompella MPLS L2VPN
l Displaying and Maintaining MPLS L2VPN
l MPLS L2VPN Configuration Example
& Note:
l A routing switch running MPLS also performs router functions. The term "router" in this document refers to a router in a generic sense or a Layer 3 Ethernet switch running MPLS.
l For the S9500 series, only the interface boards with the suffixes C, CA, or CB and VPLS service processor cards support the MPLS function. To enable MPLS on the S9500 series, you need to use the interface cards that support MPLS or VPLS service processor cards. The suffix of a board can be identified through the silkscreen on the upper right corner of the front panel of the card. For example, the silkscreen on LSB1GP12B0 is GP12B; therefore, the suffix of the card is B.
l In the S9500 series, the interface cards with the suffix C do not support MPLS L2VPN.
l When using the S9500 series for CCC, SVC, Martini, or Kompella MPLS L2VPN, note that the VLAN bound with the VPN at the private network access side can contain only one port.
1.1 MPLS L2VPN Overview
This section covers these topics:
1.1.1 Introduction to MPLS L2VPN
I. Traditional VPN
Traditional VPNs based on asynchronous transfer mode (ATM) or frame relay (FR) are quite popular. They share the network infrastructure of carriers. However, they have some inherent disadvantages:
l Dependence on dedicated media: To provide both ATM-based and FR-based VPN services, carriers must establish two separate infrastructures across the whole service scope, one ATM infrastructure and one FR infrastructure. Apparently, the cost is very high and the infrastructures are not utilized efficiently.
l Complicated deployment: To add a site to an existing VPN, you have to modify the configurations of all edge nodes connected with the VPN site.
MPLS L2VPN is developed as a solution to address the above disadvantages.
II. MPLS L2VPN
MPLS L2VPN provides Layer 2 VPN services on the MPLS network. It allows carriers to establish L2VPNs on different data link layer protocols. In addition, the MPLS network provides traditional IP, MPLS L3VPN, traffic engineering (TE), and QoS services.
MPLS L2VPN transfers Layer 2 user data transparently on the MPLS network. For users, the MPLS network is a Layer 2 switched network and can be used to establish Layer 2 connections between nodes.
As shown in Figure 1-1, customer edge devices (CEs) on different networks are interconnected through an MPLS network.
Figure 1-1 Network diagram for MPLS L2VPN
III. Comparison with MPLS L3VPN
Compared with MPLS L3VPN, MPLS L2VPN has the following advantages:
l High scalability: MPLS L2VPN establishes only Layer 2 connections. It does not involve the routing information of users. This greatly reduces the load of the PEs and even the load of the whole service provider network, enabling carriers to support more VPNs and to service more users.
l Guaranteed reliability and private routing information security: As no routing information of users is involved, MPLS L2VPN neither tries to obtain nor processes the routing information of users, guaranteeing the security of the user VPN routing information.
l Support for multiple network layer protocols, such as IP, IPX, and SNA.
IV. Basic concepts of MPLS L2VPN
In MPLS L2VPN, the concepts and principles of CE, PE and P are the same as those in MPLS L3VPN:
l Customer edge device (CE): A CE resides on a customer network and has one or more interfaces directly connected with service provider networks. It can be a router, a switch, or a host. It cannot "sense" the existence of any VPN, neither does it need to support MPLS.
l Provider edge device (PE): A PE resides on a service provider network and directly connects one or more CEs to the network. On an MPLS network, all VPN processing occurs on the PEs.
l Provider (P) device: A P device is a backbone device on a service provider network. It is not directly connected with any CE. It only needs to be equipped with basic MPLS forwarding capabilities.
MPLS L2VPN uses label stacks to implement the transparent transmission of user packets in the MPLS network.
l Outer label, also called tunnel label, is used to transfer packets from one PE to another.
l Inner label, also called VC label, is used to identify different connections between VPNs.
l Upon receiving packets, a PE determines to which CE the packets are to be forwarded according to the VC labels.
Figure 1-2 illustrates how the label stack changes in the MPLS L2VPN forwarding process.
1) L2 PDU: Layer 2 protocol data unit |
2) T represents tunnel label. V represents VC label. T’ represents swapped tunnel label. |
Figure 1-2 MPLS L2VPN label stack processing
V. Implementation of MPLS L2VPN
Currently, there is no official standard for MPLS L2VPN. The provider-provisioned virtual private network (PPVPN) working group of the IETF has drafted several framework protocols. Two of the most important ones are Martini draft and Kompella draft:
l draft-martini-l2circuit-trans-mpls
l draft-kompella-ppvpn-l2vpn
The Martini draft defines a method for establishing PPP links to implement MPLS L2VPN. It uses label distribution protocol (LDP) as a signaling protocol to transfer VC labels.
The Kompella draft defines a CE-to-CE mode for implementing MPLS L2VPN on the MPLS network. It uses extended BGP as the signaling protocol to advertise Layer 2 reachability information and VC labels.
In addition, MPLS L2VPN can also be implemented by configuring VC labels statically. CCC and SVC are two of the static implementation methods.
The following sections describe the characteristics of these implementation methods for MPLS L2VPN.
1.1.2 CCC MPLS L2VPN
Unlike common MPLS L2VPN, circuit cross connect (CCC) employs just one level of label to transfer user data. Therefore, it uses label switched paths (LSPs) exclusively. That is, a CCC LSP can be used to transfer only the data of the CCC connection; it can neither be used for other MPLS L2VPN connections, nor for MPLS L3VPN or common IP packets.
The most significant advantage of this method is that no label signaling is required for transferring Layer 2 VPN information. As long as MPLS forwarding is supported and service provider networks are interconnected, this method works perfectly. In addition, since LSPs are dedicated, this method supports QoS services.
There are two types of CCC connections:
l Local connection: A local connection is established between two local CEs that are connected to the same PE. The PE functions like a Layer 2 switch and can directly switch packets between the CEs without any static LSP.
l Remote connection: A remote connection is established between a local CE and a remote CE, which are connected to different PEs. In this case, a static LSP is required to transport packets from one PE to another.
& Note:
You must configure for each remote CCC connection two LSPs, one for inbound and the other for outbound, on the P device along the remote connection.
1.1.3 SVC MPLS L2VPN
Static virtual circuit (SVC) also implements MPLS L2VPN by static configuration. It transfers L2VPN information without using any signaling protocol.
The SVC method resembles the Martini method closely but does not use LDP to transfer Layer 2 VC and link information. You only need to configure VC label information. As a matter of fact, the SVC method is the static version of the Martini method.
& Note:
The labels for CCC and SVC range from 16 to 1023, which are reserved for static LSPs.
1.1.4 Martini MPLS L2VPN
The key of the Martini method is to set up VCs between CEs.
Martini MPLS L2VPN employs VC type and VC ID to identify a VC. The VC type indicates the encapsulation type of the VC. The VC ID uniquely identifies the VC among the VCs of the same VC type on a PE.
The PEs connecting the two CEs of a VC exchange VC labels through LDP, and bind their respective CE by the VC ID.
Once LDP establishes an LSP between the two PEs and the label exchange and the binding to CE are finished, a VC is set up and ready to transfer Layer 2 data.
To allow the exchange of VC labels between PEs, the Martini method extended LDP by adding the forwarding equivalence class (FEC) type of VC FEC. Moreover, as the two PEs exchanging VC labels may not be connected directly, a remote LDP session must be set up to transfer the VC FEC and VC labels.
With Martini MPLS L2VPN, only PEs need to maintain a small amount of VC labels and LSP mappings and no P device contains Layer 2 VPN information. Therefore, it has high scalability. In addition, to add a new VC, you only need to configure a one-way VC for each of the PEs. Your configuration will not affect the operation of the network.
The Martini method applies to scenarios with sparse Layer 2 connections, such as a scenario with a start topology.
1.1.5 Kompella MPLS L2VPN
Kompella MPLS L2VPN is different from Martini MPLS L2VPN in that it does not operate on the connections between CEs directly. It organizes different VPNs in the whole service provider network and encodes each CE in a VPN. For a connection to be established between two CEs, you only need to perform these tasks on the PEs:
l Configuring CE IDs of the local and remote CEs respectively
l Specifying the circuit ID that the local CE assigns to the connection, such as the VPI/VCI with ATM.
Kompella MPLS L2VPN uses extended BGP as the signaling protocol to distribute VC labels. Its label block mode allows it to assign labels to multiple connections at a time.
With Kompella MPLS L2VPN, you can specify a local CE range to indicate how many CEs can be connected with a CE. Then, the system assigns a label block of a size equal to the CE range for the CE. In this way, you can reserve some labels for the VPN for future use. This wastes some label resources in a short term, but can reduce the VPN deployment and configuration workload in the case of expansion.
Imagine that an enterprise VPN contains 10 CEs and the number may increase to 20 in future service expansion. In this case, you can set the CE range of each CE to 20. Thus, when you need to add a CE to the VPN later, you only need to modify the configurations of the PE to which the new CE is connected. No change is required for the other PEs. This makes VPN expansion extremely simple.
Similar to MPLS L3VPN, Kompella MPLS L2VPN also uses VPN targets to identify VPNs. This brings excellent VPN networking flexibility.
In addition, Kompella MPLS L2VPN supports local connections and inter-provider VPN solutions.
1.2 Configuring MPLS L2VPN
You can select any of the implementation methods for MPLS L2VPN as needed. However, no matter what method you select, you must complete these two tasks:
l Configuring MPLS basic capability
l Enabling MPLS L2VPN on the PE device
Follow these steps to complete the above two tasks:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Configure the LSR ID |
mpls lsr-id |
Required |
Configure MPLS basic capability and enter MPLS view |
mpls |
Required |
Return to system view |
quit |
— |
Enable MPLS L2VPN |
mpls l2vpn |
Required |
1.3 Configuring CCC MPLS L2VPN
Before configuring a CCC connection, you need to configure the interface connected to the CE, namely the CE interface. For VLAN access, however, you do not need to configure any VC.
1.3.1 Configuration Prerequisites
Before configuring CCC L2VPN, complete these tasks:
l Configuring IGP on the PEs and P devices to guarantee the IP connectivity of the MPLS backbone.
l Configuring MPLS basic capability for the MPLS backbone on the PEs and P devices.
l Enabling MPLS L2VPN on PEs of the MPLS backbone. You do not need to enable MPLS L2VPN on the P devices.
& Note:
A local CCC connection involves no PE and therefore requires no IGP.
To configure CCC MPLS L2VPN, you need the following data:
l Name for the CCC connection
l Connection type: local or remote
l For a local CCC connection: the types and numbers of the incoming and outgoing interfaces
l For a remote CCC connection: the type and number of the incoming interface, the address of the next hop or the type and number of the outgoing interface, and the incoming and outgoing labels of the LSRs along the CCC connection
& Note:
When configuring a remote connection, if the outgoing interface is a VLAN interface, you need to specify the IP address of the next hop. If not, you need to specify the outgoing interface.
1.3.2 Configuration Procedure
I. Configuring the local CCC connection
Follow these steps to create a local CCC connection on a PE:
Use the command… |
Remarks |
|
Enter system view |
system-view |
— |
Create a local CCC connection between two CEs connected to the same PE |
ccc ccc-connection-name interface interface-type interface-number out-interface interface-type interface-number |
Required |
II. Configuring the remote CCC connection
1) Configure the PEs
Follow these steps to configure a PE:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Create a remote CCC connection between CEs connected to different PEs |
ccc ccc-connection-name interface interface-type interface-number in-label in-label-value out-label out-label-value { nexthop ip-address | out-interface interface-type interface-number } |
Required |
Caution:
You do not need to configure two static LSPs for each remote CCC connection. Instead, you only need to configure the incoming and outgoing labels, where the incoming label must be exclusively for the CCC connection. The labels function as static LSPs.
Follow these steps to configure a P device:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Enable MPLS L2VPN |
mpls l2vpn |
Required |
Configure a transit static LSP |
static-lsp transit lsp-name incoming-interface interface-type interface-number in-label in-label { nexthop next-hop-addr | outgoing-interface interface-type interface-number } out-label out-label |
Required |
Caution:
l With CCC, no static LSPs are required on the PEs but dedicated bidirectional static LSPs are required on all the P devices between the PEs for transmitting the data of the CCC connection.
l For static LSP configuration commands, refer to MPLS Basics Commands in MPLS VPN Volume.
l Do not enable VLL and MPLS on a VLAN interface of the device at the same time because doing so will cause the MPLS L2VPN and MPLS services to malfunction at the same time. You will have to cancel the configurations of these two services to restore normal operation.
1.4 Configuring SVC MPLS L2VPN
SVC MPLS L2VPN does not use any signaling protocol to transfer L2VPN information. Instead, it uses tunnels to transport data between PEs. By default, LDP LSP tunnels are used.
1.4.1 Configuration Prerequisites
Before configuring SVC MPLS L2VPN, complete these tasks:
l Configuring IGP on the PEs and P devices to guarantee the IP connectivity of the MPLS backbone
l Configuring MPLS basic capability and enabling MPLS L2VPN on the PEs
l Establishing the tunnels between PEs according to the tunneling policy.
To configure SVC MPLS L2VPN, you need the following data:
l Types and numbers of the interfaces connecting the CEs
l Destination LSR ID of SVC
l Incoming and outgoing labels of the L2VPN connection
l SVC tunneling policy
1.4.2 Configuration Procedure
Follow these steps to configure SVC MPLS L2VPN on the PE:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Enter interface view for the VLAN virtual interface connecting the CE |
interface interface-type interface-number |
— |
Create an SVC MPLS L2VPN connection |
mpls static-l2vc destination destination-router-id transmit-vpn-label transmit-label-value receive-vpn-label receive-label-value [ tunnel-policy tunnel-policy-name ] |
Required |
Caution:
l For SVC L2VPN, you need to ensure the validity of the incoming and outgoing labels.
l Do not enable VLL and MPLS on a VLAN interface of the device at the same time because doing so will cause the MPLS L2VPN and MPLS services to malfunction at the same time. You will have to cancel the configurations of these two services to restore normal operation.
1.5 Configuring Martini MPLS L2VPN
Martini MPLS L2VPN uses extended LDP to transfer Layer 2 information and VC labels.
1.5.1 Configuration Prerequisites
Before configuring Martini MPLS L2VPN, complete these tasks:
l Configuring IGP on the PEs and P devices to guarantee the IP connectivity of the MPLS backbone
l Configuring MPLS basic capability and MPLS LDP for the MPLS backbone on the PEs and P devices to establish LDP LSPs
l Enabling MPLS L2VPN on the PEs
l Establishing remote LDP sessions between PEs
To configure Martini MPLS L2VPN, you need the following data:
l Types and numbers of the interfaces connecting the CEs
l L2VC destination address and VC ID
l Tunneling policy
1.5.2 Configuration Procedure
Follow these steps to configure Martini MPLS L2VPN on the PE:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Enter interface view for the VLAN virtual interface connecting the CE |
interface interface-type interface-number |
— |
Create a Martini MPLS L2VPN connection |
mpls l2vc destination vcid [ tunnel-policy tunnel-policy-name ] |
Required |
Return to system view |
quit |
— |
Configure the remote peer |
mpls ldp remote-peer remote-peer-name |
Required |
remote-ip ip-address |
Required |
& Note:
For remote peer configuration information, refer to MPLS Basics Configuration in MPLS VPN Volume.
Caution:
l For an LDP connection, there are two main parameters: one is the IP address of the peer PE, the other is the VC ID. The combination of the VC ID and the encapsulation type must be unique on a PE.
l For Martini MPLS L2VPN, a VC ID of the same encapsulation type must be unique. Changing the encapsulation type may result in VC ID conflicts.
l For Martini MPLS L2VPN, an access interface can only be connected with an access interface, a trunk/hybrid interface can only be connected with a trunk/hybrid interface.
l Do not enable VLL and MPLS on a VLAN interface of the device at the same time because doing so will cause the MPLS L2VPN and MPLS services to malfunction at the same time. You will have to cancel the configurations of these two services to restore normal operation.
1.6 Configuring Kompella MPLS L2VPN
Kompella MPLS L2VPN uses extended BGP as the signaling protocol to transfer L2VPN information between PEs.
To create a Kompella local connection, you only need to configure the VPN and CE connection on the PE. Neither IGP nor BGP L2VPN capability is required.
1.6.1 Configuration Prerequisites
Before configuring Kompella MPLS L2VPN, complete these tasks:
l Configuring IGP on the PEs and P devices to guarantee the IP connectivity of the MPLS backbone
l Configuring MPLS basic capability and enabling MPLS L2VPN on the PEs
l Configuring MPLS LDP for the MPLS backbone on the PEs and P devices to establish LDP LSPs
To configure Kompella MPLS L2VPN, you need the following data:
l AS numbers of the local PE and the peer PE
l Name, RD, and VPN-target attributes of the L2VPN connection
l CE name, CE ID, and CE range
l CE offset
1.6.2 Configuration Procedure
I. Configuring BGP L2VPN capability
Follow these steps to configure BGP L2VPN capability:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Enter BGP view |
bgp as-number |
— |
Establish the peer relationship with the peer PE |
peer { group-name | ip-address } as-number as-number |
Required |
Specify the interface for the TCP connection |
peer { group-name | ip-address } connect-interface interface-type interface-number |
Required |
Enter BGP L2VPN address family view |
l2vpn-family |
— |
Enable the filtering by the VPN target extended community attributes for the received routing information |
policy vpn-target |
Optional Enabled by default |
Enable the specified peer or peers to exchange BGP routing information of the BGP-L2VPN address family |
peer { group-name | ip-address } enable |
Required |
II. Configuring VPN
Follow these steps to configure VPN:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Create a VPN and enter MPLS L2VPN view |
mpls l2vpn vpn-name [ encapsulation { ethernet | vlan } ] |
Required |
Configure an RD for the L2VPN |
route-distinguisher route-distinguisher |
Required |
Configure VPN-targets |
vpn-target vpn-target &<1-16> [ both | export-extcommunity | import-extcommunity ] |
Required |
Set the Layer 2 MTU for the VPN |
mtu mtu |
Optional |
Caution:
l The mtu command is not recommended. It affects only parameter negotiation, which may occur; it does not affect data forwarding.
l With Kompella MPLS L2VPN, you must create on the PE an L2VPN instance for each VPN where a directly connected CE resides. When creating an L2VPN, you must specify an encapsulation type matching that of the CE interface.
l The configuration of the VPN targets and RD are the same as that for MPLS L3VPN. For Kompella MPLS L2VPN, the RD is required. Once configured, an RD cannot be changed, unless you delete the L2VPN instance and then re-create it.
III. Creating a CE Connection
Follow these steps to create a CE connection:
To do… |
Use the command… |
Remarks |
Enter system view |
system-view |
— |
Create a VPN and enter MPLS L2VPN view |
mpls l2vpn vpn-name [ encapsulation { ethernet | vlan } ] |
Required |
Create a CE for a VPN and enter MPLS L2VPN CE view |
ce ce-name [ id ce-id [ range ce-range ] [ default-offset ce-offset ] ] |
Required |
Create a Kompella connection |
connection [ ce-offset id ] interface interface-type interface-number [ tunnel-policy tunnel-policy-name ] |
Required |
Caution:
Do not enable VLL and MPLS on a VLAN interface of the device at the same time because doing so will cause the MPLS L2VPN and MPLS services to malfunction at the same time. You will have to cancel the configurations of these two services to restore normal operation.
CE ID is used for identifying a CE uniquely in a VPN. To facilitate the configuration, it is recommended to encode the CE IDs in continuous natural numbers starting from 1.
The CE range of a CE indicates the maximum number of CEs that the CE can connect with. You can configure a CE range greater than what is required based on your estimate of the future VPN expansion if the label resources are abundant (they are usually abundant). This can reduce the configuration modification required when CEs are added in the VPN in future.
When you create a CE connection, if you set the default offset value to 1:
l The CE offset defaults to 1 for the first connection of the CE.
l The CE offset is that of the former connection plus 1 for any connection of the CE other than the first one.
l When planning a VPN, you are recommended to encode CE IDs in incremental sequence starting from 1. When configuring connections, you are recommended to adopt the sequence of the CE IDs, in which case you can omit the ce-offset portion from most of the required commands. This simplifies the configuration.
& Note:
You can only increase the CE range. For example, if the original CE range is 10, you can increase it to 20, but cannot reduce it to 5. The only way to reduce the CE range is to delete the CE and re-create it.
When you increase the CE range, for example, from 10 to 20, the system does not release the original label block and then re-apply for a new label block of the size of 20. Instead, the system applies for a supplementary label block of the size of 10. This ensures that the existing services will not be interrupted.
1.7 Displaying and Maintaining MPLS L2VPN
1.7.1 Displaying the Operation of MPLS L2VPN
To do… |
Use the command… |
Remarks |
Display information about CCC connections |
display ccc [ ccc-name ccc-name | type { local | remote } ] |
Available in any view |
Display information about the interfaces used by the CCC connection |
display l2vpn ccc-interface vc-type { all | bgp-vc | ccc | ldp-vc | static-vc } [ up | down ] |
Available in any view |
Display information about SVC L2VPN connections |
display mpls static-l2vc [ interface interface-type interface-number ] |
Available in any view |
Display information about Martini MPLS L2VPN connections |
display mpls l2vc[ interface interface-type interface-number| remote-info] |
Available in any view |
Display information about Kompella MPLS L2VPN connections |
display mpls l2vpn connection [ vpn-name vpn-name [ remote-ce ce-id | down | up | verbose ] | summary | interface interface-type interface-number ] |
Available in any view |
Display the BGP routing information about Kompella L2VPN |
display bgp l2vpn { all | group [ group-name ] | route-distinguisher rd [ ce-id ce-id [ label-offset label-offset ] ] } |
Available in any view |
Display the BGP peer information of Kompella MPLS L2VPN |
display bgp l2vpn peer [ ip-address | verbose ] |
Available in any view |
Display the MPLS L2VPN information about PEs |
display mpls l2vpn [ vpn-name vpn-name [ local-ce | remote-ce ] ] |
Available in any view |
Display the Route-Target list of MPLS L2VPN |
display mpls l2vpn [ export-route-target-list | import-route-target-list ] |
Available in any view |
Display MPLS L2VPN forwarding information |
display mpls l2vpn [ forwarding-info [ vc-label ] interface interface-type interface-number [ | { begin | exclude | include } regular-expression ] ] |
Available in any view |
1.7.2 Resetting BGP L2VPN Connections
To do… |
Use the command… |
Remarks |
Reset BGP L2VPN connections |
reset bgp l2vpn { as-number | ip-address | all | internal | external } |
Available in user view |
1.8 MPLS L2VPN Configuration Example
1.8.1 Example for Configuring a Local CCC Connection
I. Network requirements
l The CEs are connected with the PE through Serial interfaces. The link layer encapsulation protocol is PPP.
l A local CCC connection is created between CE A and CE B.
& Note:
l Since a local CCC connection is bidirectional, one is enough.
l The PE interfaces connecting the CEs require no IP addresses.
II. Network diagram
Figure 1-3 Network diagram for configuring a local CCC connection
III. Configuration procedure
1) Configure CE A
<Sysname> system-view
[Sysname] sysname CEA
[CEA] interface Vlan-interface 1
[CEA-Vlan-interface1] ip address 100.1.1.1 24
2) Configure the PE
# Configure the LSR ID and enable MPLS globally.
<Sysname> system-view
[Sysname] sysname PE
[PE] interface loopback 0
[PE-LoopBack0] ip address 172.1.1.1 32
[PE-LoopBack0] quit
[PE] mpls lsr-id 172.1.1.1
[PE] mpls
[PE-mpls] quit
# Enable MPLS L2VPN globally.
[PE] mpls l2vpn
# Configure interface VLAN-interface 1.
[PE] interface vlan-interface 1
[PE-Vlan-interface1] quit
# Configure interface VLAN-interface 2.
[PE] interface Vlan-interface 2
[PE-Vlan-interface2] quit
# Create a local connection between CE A and CE B.
[PE] ccc CEA-CEB interface Vlan-interface 1 out-interface Vlan-interface 2
3) Configure CE B
<Sysname> system-view
[Sysname] sysname CEB
[CEB] interface Vlan-interface 1
[CEB-Vlan-interface1] ip address 100.1.1.2 24
After completing the above configurations, you can display CCC connection information on the PE. There should be one local CCC connection established. CE A should be able to ping interface 100.1.1.2 of CE B and CE B should be able to ping interface 100.1.1.1 of CE A:
# Display CCC connection information on the PE.
[PE] display ccc
Total ccc vc : 1
Local ccc vc : 1, 1 up
Remote ccc vc : 0, 0 up
***Name : cea-ceb
Type : local
State : up
Intf1 : vlan-interface 1 (up)
Intf2 : Vlan-interface 2 (up)
# On CE A, ping interface 100.1.1.2 of CE B.
[CEA] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=180 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=10 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=70 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=60 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/76/180 ms.
# On CE B, ping interface 100.1.1.1 of CE A. (Omitted)
1.8.2 Example for Configuring a Remote CCC Connection
I. Network requirements
l The CEs are connected to the PEs through VLAN interfaces.
l A remote CCC connection is created between CE A and CE B.
l The MPLS backbone runs OSPF.
The main steps for configuring a CCC remote connection are:
l Create remote CCC connections on the PEs. No static LSP is required on the PEs.
l Configure two static LSPs on the P device for packets to be transferred in both directions.
II. Network diagram
Device |
Interface |
IP address |
Device |
Interface |
IP address |
CE A |
Vlan-int1 |
100.1.1.1/24 |
P |
Loop0 |
10.0.0.2/32 |
PE A |
Loop0 |
10.0.0.1/32 |
|
Vlan-int2 |
10.2.2.2/24 |
|
Vlan-int2 |
10.1.1.1/24 |
|
Vlan-int1 |
10.1.1.2/24 |
CE B |
Vlan-int1 |
100.1.1.2/24 |
PE B |
Loop0 |
10.0.0.3/32 |
|
|
|
|
Vlan-int1 |
10.2.2.1/24 |
Figure 1-4 Network diagram for configuring a remote CCC connection
III. Configuration procedure
1) Configure CE A.
<Sysname> system-view
[Sysname] sysname CEA
[CEA] interface Vlan-interface 1
[CEA-Vlan-interface1] ip address 100.1.1.1 24
2) Configure PE A.
# Configure the LSR ID and enable MPLS globally.
<Sysname> system-view
[Sysname] sysname PEA
[PEA] interface Loopback 0
[PEA-LoopBack0] ip address 10.0.0.1 32
[PEA-LoopBack0] quit
[PEA] mpls lsr-id 10.0.0.1
[PEA] mpls
[PEA-mpls] quit
# Enable MPLS L2VPN globally.
[PE1-A] mpls l2vpn
# Configure interface VLAN-interface 2 and enable MPLS.
[PEA] interface Vlan-interface 2
[PEA-Vlan-interface2] ip address 10.1.1.1 24
[PEA-Vlan-interface2] mpls
[PEA-Vlan-interface2] quit
# Configure OSPF.
[PEA] ospf
[PEA-ospf-1] area 0
[PEA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PEA-ospf-1-area-0.0.0.0] network 10.0.0.1 0.0.0.0
[PEA-ospf-1-area-0.0.0.0] quit
[PEA-ospf-1] quit
# Create a remote connection from CE A to CE B, using the interface connecting CE A as the incoming interface and that connecting the P device as the outgoing interface, setting the incoming label to 100 and the outgoing label to 200.
[PEA] ccc CEA-CEB interface Vlan-interface 1 in-label 100 out-label 200 next-hop 10.1.1.2
3) Configure the P device
# Configure the LSR ID and enable MPLS globally.
<Sysname> system-view
[Sysname] sysname P
[P] interface Loopback 0
[P-LoopBack0] ip address 10.0.0.2 32
[P-LoopBack0] quit
[P] mpls lsr-id 10.0.0.2
[P] mpls
[P-mpls] quit
# Configure interface VLAN-interface 1 and enable MPLS.
[P] interface Vlan-interface 1
[P-Vlan-interface1] ip address 10.1.1.2 24
[P-Vlan-interface1] mpls
[P-Vlan-interface1] quit
# Configure interface VLAN-interface 2 and enable MPLS.
[P] interface Vlan-interface1 2
[P-Vlan-interface2] ip address 10.2.2.2 24
[P-Vlan-interface2] mpls
[P-Vlan-interface2] quit
# Configure OSPF.
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.0.0.2 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
# Create a static LSP for forwarding packets from PE A to PE B.
[P] static-lsp transit PEA_PEB incoming-interface Vlan-interface 1 in-label 200 nexthop 10.2.2.1 out-label 201
# Create a static LSP for forwarding packets from PE B to PE A.
[P] static-lsp transit PEB_PEA incoming-interface Vlan-interface 2 in-label 101 nexthop 10.1.1.1 out-label 100
4) Configure PE B.
# Configure the LSR ID and enable MPLS globally.
<Sysname> system-view
[Sysname] sysname PEB
[PEB] interface Loopback 0
[PEB-LoopBack0] ip address 10.0.0.3 32
[PEB-LoopBack0] quit
[PEB] mpls lsr-id 10.0.0.3
[PEB] mpls
[PEB-mpls] quit
# Enable MPLS L2VPN globally.
[PE2B] mpls l2vpn
# Configure interface VLAN-interface 2.
[PEB] interface Vlan-interface 2
[PEB-Vlan-interface2] quit
# Configure interface VLAN-interface 1 and enable MPLS.
[PEB] interface Vlan-interface 1
[PEB-Vlan-interface1] ip address 10.2.2.1 24
[PEB-Vlan-interface1] mpls
[PEB-Vlan-interface1] quit
# Configure OSPF.
[PEB] ospf
[PEB-ospf-1] area 0
[PEB-ospf-1-area-0.0.0.0] network 10.2.2.0 0.0.0.255
[PEB-ospf-1-area-0.0.0.0] network 10.0.0.3 0.0.0.0
# Create a remote connection from CE B to CE A, using the interface connecting CE B as the incoming interface and that connecting the P device as the outgoing interface, setting the incoming label to 201 and the outgoing label to 101.
[PEB] ccc CEB-CEA interface Vlan-interface 2 in-label 201 out-label 101 next-hop 10.2.2.2
5) Configure CE B.
<Sysname> system-view
[Sysname] sysname CEB
[CEB] interface Vlan-interface 1
[CEB-Vlan-interface1] ip address 100.1.1.2 24
6) Verify the configuration
After completing the above configurations, you can display CCC connection information on the PE. There should be one remote CCC connection established. CE A should be able to ping interface 100.1.1.2 of CE B and CE B should be able to ping interface 100.1.1.1 of CE A:
# Display CCC connection information on the PE.
[PE] display ccc
Total ccc vc : 1
Local ccc vc : 0, 0 up
Remote ccc vc : 1, 1 up
***Name : cea-ceb
Type : remote
State : up
Intf : vlan-interface 2 (up)
In-label : 201
Out-label : 101
Nexthop : 10.2.2.2
# On CE A, ping interface 100.1.1.2 of CE B.
[CEA] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=180 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=10 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=70 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=60 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/76/180 ms
# On CE B, ping interface 100.1.1.1 of CE A. (Omitted)
1.8.3 Example for Configuring SVC MPLS L2VPN
I. Network requirements
l CE A and CE B are respectively connected to PE A and PE B through VLAN interfaces.
l An SVC MPLS L2VPN is established between CE A and CE B.
II. Network diagram
Device |
Interface |
IP address |
Device |
Interface |
IP address |
CE A |
Vlan-int1 |
100.1.1.1/24 |
P |
Loop0 |
192.4.4.4/32 |
PE A |
Loop0 |
192.2.2.2/32 |
|
Vlan-int1 |
10.2.2.2/24 |
|
Vlan-int2 |
10.1.1.1/24 |
|
Vlan-int2 |
10.1.1.2/24 |
CE B |
Vlan-int1 |
100.1.1.2/24 |
PE B |
Loop0 |
192.3.3.3/32 |
|
|
|
|
Vlan-int1 |
10.2.2.1/24 |
Figure 1-5 Network diagram for configuring SCV MPLS L2VPN
III. Configuration procedure
The main steps are the following two:
l Configure MPLS basic forwarding capability on the PEs and P device. This includes configuring the LSR ID, enabling MPLS and LDP, and running IGP (OSPF in this example) between PE A, the P device, and PE B to establish LSPs.
l Establish an SVC MPLS L2VPN connection. This includes enabling MPLS L2VPN on PE A and PE B and establishing an SVC connection and specifying the VC labels.
The detailed configuration procedure is as follows:
1) Configure CE A.
<Sysname> system-view
[Sysname] sysname CEA
[CEA] interface Vlan-interface 1
[CEA-Vlan-interface1] ip address 100.1.1.1 24
2) Configure PE A.
<Sysname> system-view
[Sysname] sysname PEA
[PEA] interface Loopback 0
[PEA-LoopBack0] ip address 192.2.2.2 32
[PEA-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[PEA] mpls lsr-id 192.2.2.2
[PEA] mpls
# Configure the LSP establishment triggering policy.
[PEA-mpls] lsp-trigger all
[PEA-mpls] quit
# Enable MPLS L2VPN and LDP globally.
[PEA] mpls l2vpn
[PEA] mpls ldp
[PEA-mpls-ldp] quit
# Configure the interface connected with the P device, namely VLAN-interface 2, and enable LDP on the interface.
[PEA] interface Vlan-interface 2
[PEA-Vlan-interface2] ip address 10.1.1.1 24
[PEA-Vlan-interface2] mpls
[PEA-Vlan-interface2] mpls ldp
[PEA-Vlan-interface2] quit
# Configure OSPF on PE A for establishing LSPs.
[PEA] ospf
[PEA-ospf-1] area 0
[PEA-ospf-1-area-0.0.0.0] network 10.1.1.1 0.0.0.255
[PEA-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PEA-ospf-1-area-0.0.0.0] quit
[PEA-ospf-1] quit
# On the interface connected to CE A, namely VLAN-interface 1, create an SVC MPLS L2VPN connection. The interface requires no IP address.
[PEA] interface Vlan-interface 1
[PEA-Vlan-interface1] mpls static-l2vc destination 192.3.3.3 transmit-vpn-label 100 receive-vpn-label 200
[PEA-Vlan-interface1] quit
3) Configure the P device
<Sysname> system-view
[Sysname] sysname P
[P] interface Loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[P] mpls lsr-id 192.4.4.4
[P] mpls
# Configure the LSP establishment triggering policy.
[P-mpls] lsp-trigger all
[P-mpls] quit
# Enable LDP globally.
[P] mpls ldp
[P-mpls-ldp] quit
# Configure the interface connected with PE A, namely VLAN-interface 2, and enable LDP on the interface.
[P] interface vlan-interface 2
[P-Vlan-interface2] ip address 10.1.1.2 24
[P-Vlan-interface2] mpls
[P-Vlan-interface2] mpls ldp
[P-Vlan-interface2] quit
# Configure the interface connected with PE B, namely VLAN-interface 1, and enable LDP on the interface.
[P] interface vlan-interface 1
[P-Vlan-interface1] ip address 10.2.2.2 24
[P-Vlan-interface1] mpls
[P-Vlan-interface1] mpls ldp
[P-Vlan-interface1] quit
# Configure OSPF on the P device for establishing LSPs.
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
4) Configure PE B.
<Sysname> system-view
[Sysname] sysname PEB
[PEB] interface Loopback 0
[PEB-LoopBack0] ip address 192.3.3.3 32
[PEB-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[PEB] mpls lsr-id 192.3.3.3
[PEB] mpls
# Configure the LSP establishment triggering policy.
[PEB-mpls] lsp-trigger all
[PEB-mpls] quit
# Enable MPLS L2VPN and LDP globally.
[PEB] mpls l2vpn
[PEB] mpls ldp
[PEB-mpls-ldp] quit
# Configure the interface connected with the P device, namely VLAN-interface 1, and enable LDP on the interface.
[PEB] interface Vlan-interface 1
[PEB-Vlan-interface1] ip address 10.2.2.1 24
[PEB-Vlan-interface1] mpls
[PEB-Vlan-interface1] mpls ldp
[PEB-Vlan-interface1] quit
# Configure OSPF on PE B for establishing LSPs.
[PEB] ospf
[PEB-ospf-1] area 0
[PEB-ospf-1-area-0.0.0.0] network 10.2.2.1 0.0.0.255
[PEB-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PEB-ospf-1-area-0.0.0.0] quit
[PEB-ospf-1] quit
# On the interface connecting CE B, namely VLAN-interface 2, create an SVC MPLS L2VPN connection. The interface requires no IP address.
[PEB] interface Vlan-interface 2
[PEB-Vlan-interface2] mpls static-l2vc destination 192.2.2.2 transmit-vpn-label 200 receive-vpn-label 100
[PEB-Vlan-interface2] quit
5) Configure CE B.
<Sysname> system-view
[Sysname] sysname CEB
[CEB] interface Vlan-interface 1
[CEB-Vlan-interface1] ip address 100.1.1.2 24
6) Verify the configuration
After completing the above configurations, you can display SVC L2VPN connection information on PE A or PE B. There should be one L2VPN connection established. CE A should be able to ping interface 100.1.1.2 of CE B and CE B should be able to ping interface 100.1.1.1 of CE A:
# Display SVC L2VPN connection information on PE A.
[PEA] display mpls static-l2vc
total connections: 1, 1 up, 0 down
ce-intf state destination tr-label rcv-label tnl-policy
Vlan1 up 192.3.3.3 100 200 default
# Display SVC L2VPN connection information on PE B.
[PEB] display mpls static-l2vc
total connections: 1, 1 up, 0 down
ce-intf state destination tr-label rcv-label tnl-policy
Vlan2 up 192.2.2.2 200 100 default
# On CE A, ping interface 100.1.1.2 of CE B.
[CEA] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=150 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=130 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=130 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=140 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=80 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 80/126/150 ms
# On CE B, ping interface 100.1.1.1 of CE A. (Omitted)
1.8.4 Example for Configuring Martini MPLS L2VPN
I. Network requirements
l CE A and CE B are respectively connected to PE A and PE B through VLAN.
l A Martini MPLS L2VPN is established between CE A and CE B.
l Ethernet 4/1/2 is bound with VLAN 10 on CE A and CE B.
l Ethernet 4/1/1 is bound with VLAN 12 on PE A. Ethernet 4/1/2 is bound with VLAN 10 on CE A access end.
l Ethernet 4/1/2 is bound with VLAN 12 on the P device. Ethernet 4/1/1 is bound with VLAN 23.
l Ethernet 4/1/1 is bound with VLAN 23 on PE B. Ethernet 4/1/2 is bound with VLAN 10 on CE B access end.
II. Network diagram
Device |
Interface |
IP address |
Device |
Interface |
IP address |
CE A |
Vlan-int10 |
100.1.1.1/24 |
P |
Loop0 |
192.4.4.4/32 |
PE A |
Loop0 |
192.2.2.2/32 |
|
Vlan-int12 |
10.1.1.2/24 |
|
Vlan-int12 |
10.1.1.1/24 |
|
Vlan-int23 |
10.2.2.2/24 |
CE B |
Vlan-int10 |
100.1.1.2/24 |
PE B |
Loop0 |
192.3.3.3/32 |
|
|
|
|
Vlan-int23 |
10.2.2.1/24 |
Figure 1-6 Network diagram for configuring Martini MPLS L2VPN
III. Configuration procedure
1) Configure CE A.
<Sysname> system-view
[Sysname] sysname CEA
[CEA] vlan 10
[CEA-vlan10] port Ethernet 4/1/2
[CEA-vlan10] quit
[CEA] interface Vlan-interface 10
[CEA-Vlan-interface10] ip address 100.1.1.1 24
2) Configure PE A.
<Sysname> system-view
[Sysname] sysname PEA
[PEA] interface Loopback 0
[PEA-LoopBack0] ip address 192.2.2.2 32
[PEA-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[PE1-A] mpls lsr-id 192.2.2.2
[PE1-A] mpls
# Configure the LSP establishment triggering policy.
[PE1-A-mpls] lsp-trigger all
[PE1-A-mpls] quit
# Enable MPLS L2VPN and LDP globally.
[PEA] mpls l2vpn
[PEA] mpls ldp
[PEA-mpls-ldp] quit
# Establish a remote session between PE A and PE B.
[PEA] mpls ldp remote-peer 1
[PEA-mpls-ldp-remote-1] remote-ip 192.3.3.3
[PEA-mpls-ldp-remote-1] quit
# Configure the interface connected with the P device, namely VLAN-interface 12, and enable LDP on the interface.
[PEA] vlan 12
[PEA-vlan12] port Ethernet 4/1/1
[PEA-vlan12] quit
[PEA] interface Vlan-interface 12
[PEA-Vlan-interface12] ip address 10.1.1.1 24
[PEA-Vlan-interface12] mpls
[PEA-Vlan-interface12] mpls ldp
[PEA-Vlan-interface12] quit
# Configure OSPF on PE A for establishing LSPs.
[PEA] ospf
[PEA-ospf-1] area 0
[PEA-ospf-1-area-0.0.0.0] network 10.1.1.1 0.0.0.255
[PEA-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PEA-ospf-1-area-0.0.0.0] quit
[PEA-ospf-1] quit
# On the interface connecting CE A, namely VLAN-interface 10, create a Martini MPLS L2VPN connection. The interface requires no IP address.
[PEA] vlan 10
[PEA-vlan10] port Ethernet 4/1/2
[PEA-vlan10] quit
[PEA] interface Vlan-interface 10
[PEA-Vlan-interface10] mpls l2vc 192.3.3.3 101
[PEA-Vlan-interface10] quit
3) Configure the P device.
<Sysname> system-view
[Sysname] sysname P
[P] interface Loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[P] mpls lsr-id 192.4.4.4
[P] mpls
# Configure the LSP establishment triggering policy.
[P-mpls] lsp-trigger all
[P-mpls] quit
# Enable LDP globally.
[P] mpls ldp
[P-mpls-ldp] quit
# Configure the interface connected with PE A, namely VLAN-interface 12, and enable LDP on the interface.
[P] vlan 12
[P-vlan12] port Ethernet 4/1/2
[P-vlan12] quit
[P] interface Vlan-interface12
[P-Vlan-interface12] ip address 10.1.1.2 24
[P-Vlan-interface12] mpls
[P-Vlan-interface12] mpls ldp
[P-Vlan-interface12] quit
# Configure the interface connected with PE B, namely VLAN-interface 23, and enable LDP on the interface.
[P] vlan 23
[P-vlan23] port Ethernet 4/1/1
[P-vlan23] quit
[P] interface Vlan-interface23
[P-Vlan-interface23] ip address 10.2.2.2 24
[P-Vlan-interface23] mpls
[P-Vlan-interface23] mpls ldp
[P-Vlan-interface23] quit
# Configure OSPF on the P device for establishing LSPs.
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
4) Configure PE B
<Sysname> system-view
[Sysname] sysname PEB
[PEB] interface Loopback 0
[PEB-LoopBack0] ip address 192.3.3.3 32
[PEB-LoopBack0] quit
# Configure the LSR ID and enable MPLS globally.
[PEB] mpls lsr-id 192.3.3.3
[PEB] mpls
# Configure the LSP establishment triggering policy.
[PEB-mpls] lsp-trigger all
[PEB-mpls] quit
# Enable MPLS L2VPN and LDP globally.
[PEB] mpls l2vpn
[PEB] mpls ldp
[PEB-mpls-ldp] quit
# Configure an LDP remote session between PE B and PE A.
[PEB] mpls ldp remote-peer 2
[PEB-mpls-ldp-remote-2] remote-ip 192.2.2.2
[PEB-mpls-ldp-remote-2] quit
# Configure the interface connected with the P device, namely VLAN-interface 23, and enable LDP on the interface.
[PEB] vlan 23
[PEB-vlan23] port Ethernet 4/1/1
[PEB-vlan23] quit
[PEB] interface Vlan-interface 23
[PEB-Vlan-interface23] ip address 10.2.2.1 24
[PEB-Vlan-interface23] mpls
[PEB-Vlan-interface23] mpls ldp
[PEB-Vlan-interface23] quit
# Configure OSPF on PE B for establishing LSPs.
[PEB] ospf
[PEB-ospf-1] area 0
[PEB-ospf-1-area-0.0.0.0] network 10.2.2.1 0.0.0.255
[PEB-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PEB-ospf-1-area-0.0.0.0] quit
[PEB-ospf-1] quit
# On the interface connecting CE B, namely VLAN-interface 10, create a L2VPN connection. The interface requires no IP address.
[PEB] vlan 10
[PEB-vlan10] port Ethernet 4/1/2
[PEB-vlan10] quit
[PEB] interface Vlan-interface 10
[PEB-Vlan-interface10] mpls l2vc 192.2.2.2 101
[PEB-Vlan-interface10] quit
5) Configure CE B.
<Sysname> system-view
[Sysname] sysname CEB
[CEB] vlan 10
[CEB-vlan10] port Ethernet 4/1/2
[CEB-vlan10] quit
[CEB] interface Vlan-interface 10
[CEB-Vlan-interface10] ip address 100.1.1.2 24
6) Verify the configuration
After completing the above configurations, you can display L2VPN connection information on PE A or PE B. There should be one L2VPN connection established. CE A should be able to ping interface 100.1.1.2 of CE B and CE B should be able to ping interface 100.1.1.1 of CE A:
# Display L2VPN connection information on PE A.
[PEA] display mpls l2vc
total ldp vc : 1 1 up 0 down
Transport Client VC Local Remote Tunnel
VC ID Intf State VC Label VC Label Policy
101 Vlan10 up 61441 61442 default
# Display L2VPN connection information on PE B.
[PEB] display mpls l2vc
total ldp vc : 1 1 up 0 down
Transport Client VC Local Remote Tunnel
VC ID Intf State VC Label VC Label Policy
101 Vlan10 up 61442 61441 default
# On CE A, ping interface 100.1.1.2 of CE B.
[CEA] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=30 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=50 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=40 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=70 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/50/70 ms
# On CE B, ping interface 100.1.1.1 of CE A. (Omitted)
1.8.5 Example for Configuring Kompella MPLS L2VPN
I. Configuration prerequisites
l CE A and CE B are respectively connected to PE A and PE B through VLAN interfaces.
l A Kompella MPLS L2VPN is established between CE A and CE B.
l Ethernet 4/1/2 is bound with VLAN 10 on CE A and CE B.
l Ethernet 4/1/1 is bound with VLAN 12 on PE A. Ethernet 4/1/2 is bound with VLAN 10 on CE A access end.
l Ethernet 4/1/2 is bound with VLAN 12 on the P device. Ethernet 4/1/1 is bound with VLAN 23.
l Ethernet 4/1/1 is bound with VLAN 23 on PE B. Ethernet 4/1/2 is bound with VLAN 10 on CE B access end.
II. Network diagram
Device |
Interface |
IP address |
Device |
Interface |
IP address |
CE A |
Vlan-int10 |
100.1.1.1/24 |
P |
Loop0 |
3.3.3.3/32 |
PE A |
Loop0 |
2.2.2.2/32 |
|
Vlan-int12 |
10.1.1.2/24 |
|
Vlan-int12 |
10.1.1.1/24 |
|
Vlan-int23 |
10.2.2.2/24 |
CE B |
Vlan-int10 |
100.1.1.2/24 |
PE B |
Loop0 |
4.4.4.4/32 |
|
|
|
|
Vlan-int23 |
10.2.2.1/24 |
Figure 1-7 Network diagram for configuring Kompella MPLS L2VPN
III. Configuration procedure
1) Configure IGP on the MPLS backbone
This example uses OSPF. The detailed configuration steps are omitted.
After configuration, issuing the display ip routing-table command on each LSR, you should see that it has learned the routes to the LSR IDs of the other LSRs. Issuing the display ospf peer command, you should see that OSPF adjacencies have been established and reached the state of Full.
2) Configure MPLS basic capability and LDP to establish LDP LSPs
The detailed configuration steps are omitted.
After configuration, you can issue the display mpls ldp session and display mpls ldp peer commands to view the LDP sessions and peer relationship established, or the display mpls lsp command to view the LSPs established.
3) Configure BGP L2VPN capability
# Configure PE A..
<Sysname> system-view
[Sysname] sysname PEA
[PEA] mpls l2vpn
[PEA] bgp 100
[PEA-bgp] peer 4.4.4.4 as-number 100
[PEA-bgp] peer 4.4.4.4 connect-interface loopback 0
[PEA-bgp] l2vpn-family
[PEA-bgp-af-l2vpn] peer 4.4.4.4 enable
[PEA-bgp-af-l2vpn] quit
[PEA-bgp] quit
# Configure PE B.
<Sysname> system-view
[Sysname] sysname PEB
[PEB] mpls l2vpn
[PEB] bgp 100
[PEB-bgp] peer 2.2.2.2 as-number 100
[PEB-bgp] peer 2.2.2.2 connect-interface loopback 0
[PEB-bgp] l2vpn-family
[PEB-bgp-af-l2vpn] peer 2.2.2.2 enable
[PEB-bgp-af-l2vpn] quit
[PEB-bgp] quit
After completing the above configurations, you can issue the display bgp l2vpn peer command on PE A and PE B to view the peer relationship established between the PEs. The status should be Established. The following takes PE A as an example:
[PEA] display bgp l2vpn peer
BGP local router ID : 1.1.1.9
Local AS number : 100
Total number of peers : 1 Peers in established state : 1
Peer V AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
4.4.4.4 4 100 2 5 0 0 00:00:07 Established
4) Configure the L2VPN and the CE connection
# Configure PE A. The configurations of the VLAN interfaces are similar to those for Martini MPLS L2VPN and are omitted.
[PEA] mpls l2vpn vpn1 encapsulation vlan
[PEA-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PEA-mpls-l2vpn-vpn1] vpn-target 1:1
[PEA-mpls-l2vpn-vpn1] ce ce1 id 1 range 10
[PEA-mpls-l2vpn-ce-vpn1-ce1] connection ce-offset 2 interface vlan-interface 10
[PEA-mpls-l2vpn-ce-vpn1-ce1] quit
[PEA-mpls-l2vpn-vpn1] quit
# Configure PE B.
[PEB] mpls l2vpn vpn1 encapsulation vlan
[PEB-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PEB-mpls-l2vpn-vpn1] vpn-target 1:1
[PEB-mpls-l2vpn-vpn1] ce ce2 id 2 range 10
[PEB-mpls-l2vpn-ce-vpn1-ce2] connection ce-offset 1 interface Vlan-interface 10
[PEB-mpls-l2vpn-ce-vpn1-ce2] quit
[PEB-mpls-l2vpn-vpn1] quit
5) Verify the configuration
After completing the above configurations, you can issue the display mpls l2vpn connection command on the PEs. You should see that an L2VPN connection is established between the PEs and the connection is up. CE A and CE B should be able to ping each other. The following takes PE A as an example:
[PEA] display mpls l2vpn connection
1 total connections,
connections: 1 up, 0 down, 0 local, 1 remote, 0 unknown
VPN name: vpn1,
1 total connections,
connections: 1 up, 0 down, 0 local, 1 remote, 0 unknown
CE name: ce1, id: 1,
Rid type status peer-id route-distinguisher intf
2 rmt up 4.4.4.4 100:1 vlan10
[CEA] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=90 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 34/68/94 ms
1.8.6 Example for Configuring a Kompella Local Connection
I. Network requirements
A Kompella local connection is required between CE A and CE B.
II. Network diagram
Figure 1-8 Network diagram for configuring a Kompella local connection
III. Configuration procedure
1) Configure the PE
# Configure MPLS basic capability.
The configuration steps are omitted.
# Configure the L2VPN and the CE connection.
<Sysname> system-view
[Sysname] sysname PE
[PE] mpls l2vpn
[PE] mpls l2vpn vpn1 encapsulation vlan
[PE-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PE-mpls-l2vpn-vpn1] vpn-target 111:1
[PE-mpls-l2vpn-vpn1] ce ce1 id 1
[PE-mpls-l2vpn-ce-vpn1-ce1] connection ce-offset 2 interface vlan-interface 100
[PE-mpls-l2vpn-ce-vpn1-ce1] quit
[PE-mpls-l2vpn-vpn1] ce ce2 id 2
[PE-mpls-l2vpn-ce-vpn1-ce2] connection ce-offset 1 interface vlan-interface 200
[PE-mpls-l2vpn-vpn1] quit
2) Verify the configuration
After completing the above configurations, you can issue the display mpls l2vpn connection command on the PE. You should see that an L2VPN connection is established and is in the state of up. You can also view the connection configurations. CE A and CE B should be able to ping each other.
# Display the L2VPN connection information on PE.
[PE] display mpls l2vpn connection
2 total connections,
connections: 2 up, 0 down, 2 local, 0 remote, 0 unknown
VPN name: vpn1,
2 total connections,
connections: 2 up, 0 down, 2 local, 0 remote, 0 unknown
CE name: ce1, id: 1,
Rid type status peer-id route-distinguisher intf
2 loc up --- --- Vlan100
CE name: ce2, id: 2,
Rid type status peer-id route-distinguisher intf
1 loc up --- --- Vlan200
# Display the VPN local connection information.
[PE] display mpls l2vpn vpn-name vpn1 local-ce
ce-name ce-id range conn-num LB
ce1 1 10 1 61442/0/10
ce2 2 10 1 61452/0/10
# On CE A, ping interface 30.1.1.2 of CE B.
[CEA] ping 30.1.1.2
PING 30.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.2: bytes=56 Sequence=1 ttl=255 time=90 ms
Reply from 30.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 30.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 30.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 30.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 30.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 34/68/94 ms
1.9 Troubleshooting MPLS L2VPN
Symptom 1:
After the L2VPN configuration, the peer PEs cannot ping each other. The output of the display mpls l2vc command shows that the VC is down and the remote VC label is invalid.
Analysis:
The reason the VC is down may be that the PEs are configured with different encapsulation types.
Solution:
l Check whether the local PE and the peer PE are configured with the same encapsulation type. If not, the connection is destined to fail.
l Check whether the PEs are configured with the Remote argument and whether the peer addresses are correctly configured.