RPW (Routed Pseudowire) Examples

IOS ME3600X/ME3800X to ME3600X/ME3800X RPW example:

! PE1
interface TenGigabitEthernet0/1
 switchport trunk allowed vlan 20
 switchport mode trunk
 !
interface Vlan20
 ip address 1.1.1.1 255.255.255.0
 xconnect 10.10.10.2 10 encapsulation mpls

! PE2
interface GigabitEthernet0/6
 switchport trunk allowed vlan 20
 switchport mode trunk
 !
interface Vlan20
 ip address 1.1.1.2 255.255.255.0
 xconnect 10.10.10.1 10 encapsulation mpls

IOS ME3600X/ME3800X to ME3600X/ME3800X RPW example:

! Port based PWE3 at one end
interface GigabitEthernet0/17
 description DC1 VLAN 10 xconnect to DC2 VLAN 20
 no switchport
 no ip address
 no shutdown
 no keepalive
 xconnect 10.0.0.2 123 encapsulation mpls
 exit


! Use VFI at the other end to xconnect into a VLAN so all access ports
! in this VLAN can use the xconnect, the VFI will provide mac learning

l2vpn vfi context 20
 vpn id 123
 member 10.0.0.1 encapsulation mpls
 exit

interface Vlan20
 description Xconnect to DC1 VLAN 10 port
 no ip address ! Could put IP here to make RPW
 member vfi 20
 exit

IOS ME3600X to IOS-XE ASR920 example:

!ME3600X
interface GigabitEthernet0/21
 description xxxxxx
 switchport trunk allowed vlan none
 switchport mode trunk
 service instance 200 ethernet
  encapsulation dot1q 200
  rewrite ingress tag pop 1 symmetric
  l2protocol forward
  bridge-domain 200
  exit
 exit
!
l2 vfi VLAN-200 manual
 vpn id 200
 neighbor 10.0.0.1 200 encaps mpls
 exit
!
interface Vlan200
 xconnect vfi VLAN-200
 ip address x.x.x.x
 exit

!ASR920
interface GigabitEthernet0/0/0
 description xxx
 no ip address
 negotiation auto
 cdp enable
 service instance 200 ethernet
  encapsulation dot1q 200
  rewrite ingress tag pop 1 symmetric
  l2protocol forward
  bridge-domain 200
  exit
 exit
!
l2 vfi VLAN-200 manual
 vpn id 200
 bridge-domain 200
 neighbor 10.0.0.2 20 encps mpls
 exit
!
interface BDI 200
 ip address x.x.x.x
 exit

IOS-XE ASR1K to ASR1K RPW example:

PE1:

interface GigabitEthernet0/0/1
 service instance 500 ethernet
  encapsulation dot1q 500
  rewrite ingress tag pop 1 symmetric
  bridge-domain 500

interface BDI500
 description L3 Interface
 ip address 192.0.2.1 255.255.255.252

l2 vfi SRC manual
 vpn id 1
 bridge-domain 500
 neighbor 2.2.2.2 500 encapsulation mpls



PE2:
interface GigabitEthernet0/0/1
 service instance 500 ethernet
  encapsulation dot1q 500
  rewrite ingress tag pop 1 symmetric
  bridge-domain 500

l2 vfi DST manual
 vpn id 1
 bridge-domain 500
 neighbor 1.1.1.1 500 encapsulation mpls

interface BDI500
 description L3 Interface
 ip address 192.0.2.2 255.255.255.252

IOS-XR ASR9001 to IOS-XE ASR920 RPW example:

ASR920:

l2 vfi test manual
 vpn id 123
 bridge-domain 1000
 neighbor 10.0.0.2 encapsulation mpls

interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ip ospf 1 area 0


interface TenGigabitEthernet0/0/2
 service instance 1000 ethernet
  encapsulation dot1q 1000
  rewrite ingress tag pop 1 symmetric
  bridge-domain 1000

interface BDI1000
 ip address 2.0.0.2 255.255.255.248



ASR9001:
l2vpn
 bridge group test
  bridge-domain testbd
   interface TenGigE0/0/2/0.1000
   !
   neighbor 1.1.1.1 pw-id 123
   !
   routed interface BVI1000

interface TenGigE0/0/2/0.1000 l2transport
 encapsulation dot1q 1000

interface BVI1000
 ipv4 address 2.0.0.1 255.255.255.248

IOS-XR ASR9001 to IOS ME3600X/ME3800X RPW example:

! ASR9001 Config:

hostname ASR9001
!
vrf CUST12
 address-family ipv4 unicast
 !
!
interface Loopback0
 description Global Loopback interface
 ipv4 address 10.0.0.1 255.255.255.255
!
interface TenGigE0/0/2/0
 description Link to ME3600X-Te0/1
 ipv4 unreachables disable
 ipv6 nd suppress-ra
 ipv6 unreachables disable
 load-interval 30
 transceiver permit pid all
!
interface TenGigE0/0/2/0.20 l2transport
 encapsulation dot1q 20
 rewrite ingress tag pop 1 symmetric
!
interface TenGigE0/0/2/0.100
 ipv4 address 10.0.1.1 255.255.255.252
 ipv4 unreachables disable
 ipv6 nd suppress-ra
 ipv6 unreachables disable
 load-interval 30
 encapsulation dot1q 100
!
interface BVI20
 vrf CUST12
 ipv4 address 192.168.0.3 255.255.255.248
 ipv4 unreachables disable
 ipv6 nd suppress-ra
 ipv6 unreachables disable
 load-interval 30
!
router ospf 1
 router-id 10.0.0.1
 mpls ldp sync
 mpls ldp auto-config
 auto-cost reference-bandwidth 10000
 area 0
  interface Loopback0
  !
  interface TenGigE0/0/2/0.100
   network point-to-point
  !
 !
!
l2vpn
 bridge group BG123
  bridge-domain BD123
   interface TenGigE0/0/2/0.20
   !
   neighbor 10.0.0.2 pw-id 123
   !
   routed interface BVI20
  !
 !
!
mpls ldp
 router-id 10.0.0.1
 address-family ipv4
  discovery targeted-hello accept
 !
 interface TenGigE0/0/2/0.100



! ME3600X Config:

vrf definition CUST12
 !
 address-family ipv4
 exit-address-family
!
mpls label protocol ldp
!
xconnect logging pseudowire status
!
vlan 10,20,100
!
interface Loopback0
 description Global Loopback interface
 ip address 10.0.0.2 255.255.255.255
 ip ospf 1 area 0
!
interface GigabitEthernet0/1
 description 1941 Gi0/0
 switchport trunk allowed vlan none
 switchport mode trunk
 load-interval 30
 no cdp enable
 service instance 10 ethernet
  encapsulation untagged
  bridge-domain 10
 !
!
interface GigabitEthernet0/2
 description 1941 Gi0/1
 switchport trunk allowed vlan none
 switchport mode trunk
 load-interval 30
 no cdp enable
 service instance 20 ethernet
  encapsulation untagged
  l2protocol forward
  bridge-domain 20
 !
!
interface TenGigabitEthernet0/1
 description ASR9001 Te0/0/2/0
 switchport trunk allowed vlan none
 switchport mode trunk
 load-interval 30
 service instance 20 ethernet
  encapsulation dot1q 20
  rewrite ingress tag pop 1 symmetric
  bridge-domain 20
 !
 service instance 100 ethernet
  encapsulation dot1q 100
  rewrite ingress tag pop 1 symmetric
  bridge-domain 100
 !
!
interface Vlan10
 vrf forwarding CUST12
 ip address 192.168.0.2 255.255.255.248
 no ip redirects
 no ip proxy-arp
 load-interval 30
 xconnect 10.0.0.1 123 encapsulation mpls
!
interface Vlan100
 ip address 10.0.1.2 255.255.255.252
 no ip redirects
 no ip proxy-arp
 ip ospf network point-to-point
 ip ospf 1 area 0
 load-interval 30
 mpls ip
!
router ospf 1
 router-id 10.0.0.2
 auto-cost reference-bandwidth 10000
 passive-interface default
 no passive-interface Vlan100
 mpls ldp sync
!
mpls ldp router-id Loopback0 force



! ASR9001 Output:

RP/0/RSP0/CPU0:ASR9001#ping vrf CUST12 192.168.0.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms

RP/0/RSP0/CPU0:ASR9001#ping vrf CUST12 192.168.0.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/5 ms

RP/0/RSP0/CPU0:ASR9001#ping vrf CUST12 192.168.0.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms

RP/0/RSP0/CPU0:ASR9001#ping vrf CUST12 192.168.0.4
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms



RP/0/RSP0/CPU0:ASR9001#show l2vpn forwarding bridge-domain mac-address location 0/0/CPU0
 To Resynchronize MAC table from the Network Processors, use the command...
    l2vpn resynchronize forwarding mac-address-table location <r/s/i>

Mac Address    Type    Learned from/Filtered on    LC learned Resync Age         Mapped to
------------------------------------------------------------------------------------------
442b.0375.46a1 dynamic Te0/0/2/0.20                0/0/CPU0   0d 0h 0m 11s       N/A
08cc.6812.5cc0 dynamic (10.0.0.2, 123)             0/0/CPU0   0d 0h 0m 13s       N/A
442b.0375.46a0 dynamic (10.0.0.2, 123)             0/0/CPU0   0d 0h 0m 4s        N/A
5087.8901.a87f routed  BD id: 0                    N/A        N/A                N/A


RP/0/RSP0/CPU0:ASR9001#show l2vpn forwarding bridge-domain BG123:BD123 mac-address location 0/0/cPU0
 To Resynchronize MAC table from the Network Processors, use the command...
    l2vpn resynchronize forwarding mac-address-table location <r/s/i>

Mac Address    Type    Learned from/Filtered on    LC learned Resync Age         Mapped to
------------------------------------------------------------------------------------------
442b.0375.46a1 dynamic Te0/0/2/0.20                0/0/CPU0   0d 0h 0m 11s       N/A
08cc.6812.5cc0 dynamic (10.0.0.2, 123)             0/0/CPU0   0d 0h 0m 13s       N/A
442b.0375.46a0 dynamic (10.0.0.2, 123)             0/0/CPU0   0d 0h 0m 4s        N/A
5087.8901.a87f routed  BD id: 0                    N/A        N/A                N/A


RP/0/RSP0/CPU0:ASR9001#show arp vrf CUST12

-------------------------------------------------------------------------------
0/0/CPU0
-------------------------------------------------------------------------------
Address         Age        Hardware Addr   State      Type  Interface
192.168.0.1     00:05:18   442b.0375.46a0  Dynamic    ARPA  BVI20
192.168.0.2     00:01:22   08cc.6812.5cc0  Dynamic    ARPA  BVI20
192.168.0.3     -          5087.8901.a87f  Interface  ARPA  BVI20
192.168.0.4     00:30:47   442b.0375.46a1  Dynamic    ARPA  BVI20