OcNOS DC : Multi-Protocol Label Switching Guide : Multi-Protocol Label Switching Configuration Guide : Virtual Private Wire Service Configuration
Virtual Private Wire Service Configuration
This chapter shows configurations for Virtual Private Wire Service (VPWS), where point-to-point Layer 2 VPN service interconnects multiple Ethernet LANs across an MPLS backbone.
Overview
An MPLS Layer 2 Virtual Circuit (VC) is a point-to-point Layer 2 connection transported via MPLS on the service provider’s network. The Layer 2 circuit is transported over a single Label Switched Path (LSP) tunnel between two Provider Edge (PE) routers.
The following diagram illustrates the configuration steps in this section. In this sample, the VC host devices, Host1 and Host2, are connected to the Provider Edge (PE) router PE-1; and Host3 and Host4 are connected to PE-2. The VC is established between PE-1 and PE-2. Interface xe2, on PE-1 and PE-2, is connected to the customer network; xe1, on PE-1 and PE-2, is connected to the MPLS cloud.
MPLS Layer 2 Virtual Circuit
The VC configuration process is divided into the following steps:
Note: Loopback addresses used should be advertised through OSPF, or should be statically routed.
1. Configure the IP address and OSPF for the PE-1, P (Provider), and PE-2 routers.
2. Configure MPLS and LDP on PE-1, P, and PE-2, and LDP targeted peer for the PE-1 and PE-2 routers. (If RSVP is used for configuring trunks, LDP must be configured on PE-1 and PE-2, and RSVP must be configured on PE-1, P, and PE-2.)
3. Configure the VC.
4. Bind the customer interface to the VC.
Configure IP Address and OSPF on Routers
Configure the IP addresses and OSPF on the PE-1, P, and PE-2 routers.
PE-1
 
#configure terminal
Enter the configure mode
(config)#interface lo
Specify the loopback interface (lo0) to be configured
(config-if)#ip address 1.1.1.1/32 secondary
Set the IP address of the loopback interface to 1.1.1.1/32
(config-if)#exit
Exit the interface mode
(config)#interface xe1
Specify the interface (xe1) to be configured
(config-if)#ip address 10.1.1.1/24
Set the IP address of the interface to 10.1.1.1/24
(config-if)#exit
Exit the interface mode
(config)#router ospf 100
Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process
(config-router)#network 10.1.1.0/24 area 0
(config-router)#network 1.1.1.1/32 area 0
Define the interface on which OSPF runs and associate the area ID (0) with the interface.
P
 
#configure terminal
Enter the configure mode.
(config)#interface lo
Specify the loopback interface (lo) to be configured
(config-if)#ip address 9.9.9.9/32 secondary
Set the IP address of the loopback interface to 9.9.9.9/32
(config-if)#exit
Exit the interface mode
(config)#interface xe1
Specify the interface (xe1) to be configured
(config-if)#ip address 10.1.1.2/24
Set the IP address of the interface to 10.1.1.2/24
(config-if)#exit
Exit the interface mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#ip address 20.1.1.1/24
Set the IP address of the interface to 20.1.1.1/24
(config-if)#exit
Exit the interface mode
(config)#router ospf 100
Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process
(config-router)#network 10.1.1.0/24 area 0
(config-router)#network 20.1.1.0/24 area 0
(config-router)#network 9.9.9.9/32 area 0
Define the interface on which OSPF runs and associate the area ID (0) with the interface.
PE-2
#configure terminal
Enter configure mode
(config)#interface lo
Specify the loopback interface (lo) to be configured
(config-if)#ip address 2.2.2.2/32 secondary
Set the IP address of the loopback interface to 2.2.2.2/32
(config-if)#exit
Exit the interface mode.
(config)#interface xe1
Specify the interface (xe1) to be configured
(config-if)#ip address 20.1.1.2/24
Set the IP address of the interface to 20.1.1.2/24
(config-if)#exit
Exit the interface mode
(config)#router ospf 100
Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process.
(config-router)#network 20.1.1.0/24 area 0
(config-router)#network 2.2.2.2/32 area 0
Define the interface on which OSPF runs, and associate the area ID (0) with the interface
Configure MPLS, LDP, and LDP Targeted Peer on Routers
Configure MPLS and LDP on PE-1, P, and PE-2, and LDP targeted peers on PE-1 and PE-2.
Note: If RSVP is used for configuring trunks, LDP must be configured on PE-1 and PE-2, and RSVP must be configured on PE-1, P, and PE-2,
PE-1
 
#configure terminal
Enter the configure mode
(config)#router ldp
Enter the router mode
(config)#router-id 1.1.1.1
Set the router ID to IP address 1.1.1.1
(config-router)#transport-address ipv4 1.1.1.1
Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface
(config-router)#targeted-peer ipv4 2.2.2.2
Specify the targeted LDP peer on PE-1
(config-router-targeted-peer)# exit
Exit the router targeted peer mode
(config-router)#exit
Exit the router mode
(config)#interface xe1
Specify the interface (xe1) to be configured
(config-if)#label-switching
Enable label switching on interface xe1
(config-if)#enable-ldp ipv4
Enable LDP on interface xe1
P
 
#configure terminal
Enter the configure mode
(config)#router ldp
Enter the router mode
(config)#router-id 9.9.9.9
Set the router ID to IP address 9.9.9.9
(config-router)#transport-address ipv4 9.9.9.9
Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface
(config-router)#exit
Exit the router mode.
(config)#interface xe1
Specify the interface (xe1) to be configured
(config-if)#label-switching
Enable label switching on interface xe2
(config-if)#enable-ldp ipv4
Enable LDP on interface xe2
(config-if)#exit
Exit the interface mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#label-switching
Enable label switching on interface xe2
(config-if)#enable-ldp ipv4
Enable LDP on interface xe2
PE-2
 
#configure terminal
Enter the configure mode
(config)#router ldp
Enter the Router mode
(config)#router-id 2.2.2.2
Set the router ID to IP address 2.2.2.2
(config-router)#transport-address ipv4 2.2.2.2
Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface
(config-router)#targeted-peer ipv4 1.1.1.1
Specify the targeted LDP peer on PE-2
(config-router-targeted-peer)# exit
Exit the Router targeted peer mode
(config-router)#exit
Exit the Router mode
(config)#interface xe1
Specify the interface(xe1) to be configured
(config-if)#label-switching
Enable label switching on interface xe1
(config-if)#enable-ldp ipv4
Enable LDP on interface xe1
Configure VC
Configure the VC. Each VC ID uniquely identifies the Layer-2 circuit among all the Layer-2 circuits.
Note: Both PE routers (endpoints) must be configured with the same VC-ID (100 in this example).
PE-1
 
#configure terminal
Enter the configure mode.
(config)#mpls l2-circuit t1 100 2.2.2.2
Configure the VC for PE-2. In this example, t1 is the VC name, 100 is the VC ID, and 2.2.2.2 is the VC endpoint IP address
PE-2
 
#configure terminal
Enter configure mode
(config)#mpls l2-circuit t1 100 1.1.1.1
Configure the VC for PE-1. In this example, t1 is the VC name, 100 is the VC ID, and 1.1.1.1 is the VC endpoint IP address
Bind Customer Interface to VC
Bind the customer interface to the VC using one of the two procedures described below: Layer-2 untagged traffic or Layer-2 tagged traffic.
Note: Layer 2 VCs can only be bound to Layer 2 interfaces. The VC encapsulation method should be Ethernet (default), VLAN.
Layer 2 Untagged Traffic
Use Access mode for Layer 2 untagged traffic.
PE-1
 
#configure terminal
Enter the configure mode.
(config)#service-template SUT1
Create a service template SUT1
(config-svc)#match untagged
Allow untagged traffic
(config-svc)#exit
Exit the service template mode
(config)#interface xe3
Specify the interface (xe3) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t1 service-template SUT1
Bind the interface to the VC with service template
PE-2
 
#configure terminal
Enter the configure mode
(config)#service-template SUT1
Create a service template SUT1
(config-svc)#match untagged
Allow untagged traffic
(config-svc)#exit
Exit the service template mode
(config)#interface xe3
Specify the interface (xe3) to be configured.
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t1 service-template SUT1
Bind the interface to the VC with service template
Layer 2 Tagged Traffic
Use Trunk mode for Layer-2 tagged traffic. The following configuration allows only VLAN 2 and 3 traffic.
PE-1
 
#configure terminal
Enter the configure mode.
(config)#mpls l2-circuit t2 200 2.2.2.2
Configure the VC for PE-2. In this example, t2 is the VC name, 200 is the VC ID, and 2.2.2.2 is the VC endpoint IP address
(config-pseudowire)#exit
Exit the pseudowire config mode
(config)#service-template ST1
Create a service template ST1
(config-svc)#match outer-vlan 2
Allow VLAN 2 traffic on this VC
(config-svc)#match outer-vlan 3
Allow VLAN 3 traffic on this VC
(config-svc)#exit
Exit the service template mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t2 service-template ST1
Bind the interface to the VC with service template
PE-2
 
#configure terminal
Enter the configure mode
(config)#mpls l2-circuit t2 200 1.1.1.1
Configure the VC for PE-2. In this example, t2 is the VC name, 200 is the VC ID, and 1.1.1.1 is the VC endpoint IP address
(config-pseudowire)#exit
Exit the pseudowire config mode
(config)#service-template ST1
Create a service template ST1
(config-svc)#match outer-vlan 2
Allow VLAN 2 traffic on this VC
(config-svc)#match outer-vlan 3
Allow VLAN 3 traffic on this VC
(config-svc)#exit
Exit the service template mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t2 service-template ST1
Bind the interface to the VC with service template
Validation
Use the show ldp mpls-l2-circuit (Control Plane) command, and the show mpls vc-table (Forwarding Plane) command, to display complete information about the Layer 2 VC.
If the VC State is UP in the output from the show ldp mpls-l2 circuit command, and the Status is Active in the output of the show mpls vc-table command, a ping from CE1 to CE2 should be successful.
PE1#show ldp mpls-l2-circuit
Transport Client VC VC Local Remote Destinatio
n
VC ID Binding State Type VC Label VC Label Address
100 xe3 UP Ethernet VLAN 26240 26240 2.2.2.2
200 xe2 UP Ethernet VLAN 26241 26241 2.2.2.2
 
PE1#show mpls vc-table
(m) - Service mapped over multipath transport
(e) - Service mapped over LDP ECMP
 
VC-ID Vlan-ID Inner-Vlan-ID Access-Intf Network-Intf Out Label Tunnel-Label Nexthop Status
100 N/A N/A xe3 xe1 26240 25600 2.2.2.2 Active
200 N/A N/A xe2 xe1 26241 25600 2.2.2.2 Active
 
PE2#show ldp mpls-l2-circuit
Transport Client VC VC Local Remote Destinatio
n
VC ID Binding State Type VC Label VC Label Address
100 xe3 UP Ethernet VLAN 26240 26240 1.1.1.1
200 xe2 UP Ethernet VLAN 26241 26241 1.1.1.1
 
PE2#show mpls vc-table
(m) - Service mapped over multipath transport
(e) - Service mapped over LDP ECMP
 
VC-ID Vlan-ID Inner-Vlan-ID Access-Intf Network-Intf Out Label Tunnel-Label Nexthop Status
100 N/A N/A xe3 xe1 26240 25601 1.1.1.1 Active
200 N/A N/A xe2 xe1 26241 25601 1.1.1.1 Active
 
 
These additional commands can also be used to display information about the Layer 2 virtual circuits.
show ldp mpls-l2-circuit detail
show ldp mpls-l2-circuit VC-ID
show ldp mpls-l2-circuit VC-ID detail
show mpls l2-circuit
 
PE1:
 
PE1#show ldp mpls-l2-circuit detail
PW ID: 100, VC state is up
Access IF: xe3,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26240, remote label: 26240
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:03:19
 
PW ID: 200, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26241, remote label: 26241
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:01:16
 
 
 
PE1#show ldp mpls-l2-circuit 100
Transport Client VC VC Local Remote Destination
VC ID Binding State Type VC Label VC Label Address
100 xe3 UP Ethernet VLAN 26240 26240 2.2.2.2
 
PE1#show ldp mpls-l2-circuit 200
Transport Client VC VC Local Remote Destination
VC ID Binding State Type VC Label VC Label Address
200 xe2 UP Ethernet VLAN 26241 26241 2.2.2.2
 
 
 
PE1#show ldp mpls-l2-circuit 100 detail
PW ID: 100, VC state is up
Access IF: xe3,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26240, remote label: 26240
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:04:19
 
PE1#show ldp mpls-l2-circuit 200 detail
PW ID: 200, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26241, remote label: 26241
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:02:24
 
PE1#show mpls l2-circuit
MPLS Layer-2 Virtual Circuit: t1, id: 100 PW-INDEX: 1 service-tpid: dot1.q
Endpoint: 2.2.2.2
Control Word: 0
Flow Label Status: Disabled, Direction: None, Static: No
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe3
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : SUT1
Match criteria : Untagged
 
 
MPLS Layer-2 Virtual Circuit: t2, id: 200 PW-INDEX: 2 service-tpid: dot1.q
Endpoint: 2.2.2.2
Control Word: 0
Flow Label Status: Disabled, Direction: None, Static: No
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe2
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : ST1
Match criteria : 2,3
 
PE2:
 
PE2#show ldp mpls-l2-circuit detail
PW ID: 100, VC state is up
Access IF: xe3,up,AC state is up
Session IF: xe1, state is up
Destination: 1.1.1.1, Peer LDP Ident: 10.143.73.1
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26240, remote label: 26240
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:07:08
 
PW ID: 200, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 1.1.1.1, Peer LDP Ident: 10.143.73.1
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26241, remote label: 26241
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:05:05
 
 
PE2#show ldp mpls-l2-circuit 100
Transport Client VC VC Local Remote Destination
VC ID Binding State Type VC Label VC Label Address
100 xe3 UP Ethernet VLAN 26240 26240 1.1.1.1
 
 
PE2#show ldp mpls-l2-circuit 200
Transport Client VC VC Local Remote Destination
VC ID Binding State Type VC Label VC Label Address
200 xe2 UP Ethernet VLAN 26241 26241 1.1.1.1
 
PE2#show ldp mpls-l2-circuit
PW ID: 200, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 1.1.1.1, Peer LDP Ident: 10.143.73.1
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 26241, remote label: 26241
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local Flow Label Direction: Disabled, Static: Disabled
Remote Flow Label Direction: Disabled, Static: Disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
MPLS VC UpTime : 00:06:00
 
 
PE2#show mpls l2-circuit
MPLS Layer-2 Virtual Circuit: t1, id: 100 PW-INDEX: 1 service-tpid: dot1.q
Endpoint: 1.1.1.1
Control Word: 0
Flow Label Status: Disabled, Direction: None, Static: No
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe3
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : SUT1
Match criteria : Untagged
 
 
MPLS Layer-2 Virtual Circuit: t2, id: 200 PW-INDEX: 2 service-tpid: dot1.q
Endpoint: 1.1.1.1
Control Word: 0
Flow Label Status: Disabled, Direction: None, Static: No
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe2
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : ST1
Match criteria : 2,3
 
Configure a Static Layer-2 VC
For a static MPLS Layer 2 VC configuration:
1. Configure the VC with the manual option
2. Configure the VC FIB entry
3. Bind the VC; all steps are in the configurations that follow.
PE-1
 
#configure terminal
Enter the configure mode
PE1(config)#mpls l2-circuit t3 300 2.2.2.2 manual
Configure the VC ID with the manual option (no signaling used)
PE1(config-pseuodwire)#manual-pseudowire
Configure the pseudowire manual (no signaling)
PE1(config-pseudowire)#exit
Exit the pseudowire config mode
PE1(config)#service-template ST3
Create a service template ST3
PE1(config-svc)#exit
Exit the service template mode
PE1(config)#interface xe2
Add an FTN entry; where 1000 is the incoming label, 2000 is the outgoing label, 2.2.2.2 is the endpoint, xe1 is the incoming interface name, and xe2 is outgoing interface name
PE1(config)#switchport
Config interface as switch port
PE1(config-if)#mpls-l2-circuit t2 service-template ST3
Bind the interface to the VC with service template
PE1(config-if)#exit
Exit the interface mode
PE1(config)#mpls l2-circuit-fib-entry 300 1000 2000 2.2.2.2 xe1 xe2
Configure the VC ID with the manual option (no signaling used)
PE-2
 
#configure terminal
Enter the configure mode.
PE2(config)#mpls l2-circuit t3 300 1.1.1.1 manual
Configure the VC ID with the manual option (no signaling used).
PE2(config-pseuodwire)#manual-pseudowire
Configure the pseudowire manual (no signaling)
PE2(config-pseudowire)#exit
Exit the pseudowire config mode.
PE2(config)#service-template ST3
Create a service template ST3
(config-svc)#exit
Exit the service template mode
PE2(config)#interface xe2
Add an FTN entry; where 2000 is the incoming label, 1000 is the outgoing label, 1.1.1.1 is the endpoint, xe1 is the incoming interface name, and xe2 is outgoing interface name
PE2(config)#switchport
Configure interface as a switch port
PE2(config-if)#mpls-l2-circuit t2 service-template ST3
Bind the interface to the VC with service template
PE2(config-if)#exit
Exit the interface mode
PE2(config)#mpls l2-circuit-fib-entry 300 2000 1000 1.1.1.1 xe1 xe2
Configure the VC ID with the manual option (no signaling used)
PE2(config)#end
Exit the configure mode
Validation
This example shows number of configured VCs and its status.
#show mpls vc-table count
-------------------------------
Num PWs : 3
Active PWs : 3
OAM-only PWs : 0
Inactive PWs : 0
-------------------------------
 
#show ldp mpls-l2-circuit count
----------------------------------------------
Num Signaled PWs: 3 [UP: 3]
----------------------------------------------
Service template Configuration
PE-1
 
#configure terminal
Enter the configure mode.
(config)#mpls l2-circuit vc1 10 2.2.2.2
Configure the VC
(config-pseudowire)#service-tpid dot1.ad
Configure Service-TPID as dot1.ad (0x88a8)
(config-pseudowire)#exit
Exit the pseudowire configure mode
(config)# service-template template1
Configure the service template
(config-svc)# match double-tag outer-vlan 204 inner-vlan 203
Match the criteria for service template
(config-svc)#rewrite ingress pop outgoing-tpid dot1.ad
Action performed for service template
(config-svc)#exit
Exit the configure SVC mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#switchport dot1q ethertype 0x88a8
Configure interface ethertype as dot1.ad (0x88a8)
(config-if)#mpls-l2-circuit vc1 service-template template1
Bind the interface to the VC with service template
(config-if)#exit
End of Interface and configurations mode
PE-2
 
(config)#mpls l2-circuit vc1 10 1.1.1.1
Configure the VC
(config-pseudowire)#service-tpid dot1.ad
Configure Service-TPID as dot1.ad (0x88a8)
(config-pseudowire)#exit
Exit the pseudowire config mode
(config)# service-template template1
Configure the service template
(config-svc)# match double-tag outer-vlan 204 inner-vlan 203
Matching criteria for service template
(config-svc)# rewrite ingress pop outgoing-tpid dot1.ad
Action performed for service template
(config-svc)#exit
Exit the configure SVC mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#switchport dot1q ethertype 0x88a8
Configure interface ethertype as dot1.ad (0x88a8)
(config-if)#mpls-l2-circuit vc1 service-template template1
Bind the interface to the VC with service template
(config-if)#exit
End of interface and configurations mode
Validation
PE1
PE1#show ldp mpls-l2-circuit detail
PW ID: 10, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 24322, remote label: 52482
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
 
 
PE1#show mpls l2-circuit detail
MPLS Layer-2 Virtual Circuit: vc1, id: 10 PW-INDEX: 1 service-tpid: dot1.ad
Endpoint: 2.2.2.2
Control Word: 0
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe2
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : template1
Match criteria : 204/203
Action type : Pop
Outgoing tpid : dot1.ad
 
 
PE1#show mpls vc-table
VC-ID Vlan-ID Inner-Vlan-ID Access-Intf Network-Intf Out Label Tunnel-Label Nexthop Status
10 N/A N/A xe2 xe1 52482 52480 2.2.2.2 Activ
Service-template with multiple match support
This is to validate the multiple match criteria support in a service template. When multiple match statements are configured only rewrite push is supported, rewrite translate and pop are not supported.
PE-1
 
#configure terminal
Enter the configure mode
(config)#mpls l2-circuit t4 400 2.2.2.2
Configure the VC for PE-1. In this example, t4 is the VC name, 400 is the VC ID, and 2.2.2.2 is the VC endpoint IP address
(config-pseudowire)#exit
Exit the pseudowire configure mode
(config)#service-template template4
Template configuration
(config-svc)# match outer-vlan 700
Allow VLAN 700 traffic on this VC
(config-svc)# match double-tag outer-vlan 1200 inner-vlan 3200
Allow double tag match with s+c tags
(config-svc)# match untagged
Allow untagged traffic
(config-svc)# rewrite ingress push 300
Push Action performed for service template
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t4 service-template template4
Bind the interface to the VC with service template
(config)#mpls l2-circuit vc1 10 1.1.1.1
Configure the VC
(config-pseudowire)#service-tpid dot1.ad
Configure Service-TPID as dot1.ad (0x88a8)
(config-pseudowire)#exit
Exit the pseudowire configure mode
(config)# service-template template1
Configure the service template
(config-svc)# match double-tag outer-vlan 204 inner-vlan 203
Match criteria for the service template
(config-svc)# rewrite ingress pop outgoing-tpid dot1.ad
Action performed for service template
(config-svc)#exit
Exit the configure SVC mode
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer 2 mode
(config-if)#switchport dot1q ethertype 0x88a8
Configure interface ethertype as dot1.ad (0x88a8)
(config-if)#mpls-l2-circuit vc1 service-template template1
Bind the interface to the VC with service template
(config-if)#exit
End of interface and configurations mode
PE-2
#configure terminal
Enter the configure mode
(config)#mpls l2-circuit t4 400 1.1.1.1
Configure the VC for PE-2. In this example, t4 is the VC name, 400 is the VC ID, and 1.1.1.1 is the VC endpoint IP address
(config-pseudowire)#exit
Exit the pseudowire configure mode
(config)#service-template template4
Template configuration
(config-svc)# match outer-vlan 700
Allow VLAN 700 traffic on this VC
(config-svc)# match double-tag outer-vlan 1200 inner-vlan 3200
Allow double tag match with s+c tag
(config-svc)# match untagged
Allow untagged traffic
 
(config-svc)# rewrite ingress push 300
Push Action performed for service template
(config)#interface xe2
Specify the interface (xe2) to be configured
(config-if)#switchport
Switch to Layer-2 mode
(config-if)#mpls-l2-circuit t4 service-template template4
Bind the interface to the VC with service template
 
Validation
PE1#sh ldp mpls-l2-circuit detail
PW ID: 400, VC state is up
Access IF: xe2,up,AC state is up
Session IF: xe1, state is up
Destination: 2.2.2.2, Peer LDP Ident: 2.2.2.2
Local vctype: vlan, remote vctype :vlan
Local groupid: 0, remote groupid: 0
Local label: 24324, remote label: 52485
Local MTU: 1500, Remote MTU: 1500
Local Control Word: disabled Remote Control Word: Not-Applicable Current use: disabled
Local PW Status Capability : disabled
Remote PW Status Capability : disabled
Current PW Status TLV : disabled
 
 
PE1#sh mpls l2-circuit detail
MPLS Layer-2 Virtual Circuit: t4, id: 400 PW-INDEX: 4 service-tpid: dot1.q
 
Endpoint: 2.2.2.2
Control Word: 0
MPLS Layer-2 Virtual Circuit Group: none
Bound to interface: xe2
Virtual Circuit Type: Ethernet VLAN
Virtual Circuit is configured as Primary
Virtual Circuit is configured as Active
Virtual Circuit is active
Service-template : template4
Match criteria : 700
1200/3200
untagged
Action type : Push
Action value : 300
 
PE1#show mpls vc-table
VC-ID Vlan-ID Inner-Vlan-ID Access-Intf Network-Intf Out Label Tunnel-Label Nexthop Status Ecmp-Group
400 N/A N/A xe2 xe1 24322 24320 2.2.2.2 Active N/A
 
 
PE2#show mpls vc-table
VC-ID Vlan-ID Inner-Vlan-ID Access-Intf Network-Intf Out Label Tunnel-Label Nexthop Status Ecmp-Group
400 N/A N/A xe2 xe1 24321 24325 1.1.1.1 Active N/A