Date created: Tuesday, June 30, 2015 6:58:55 PM. Last modified: Wednesday, March 28, 2018 5:23:19 PM
CSC (Squashed) with LDP
Carrier Supporting Carrier (MPLS backbone carrier supporting an MPLS customer carrier)
This example is a typical CSC scenario however the customer carrier and backbone carrier are the same carrier. This is a method of achieving MPLS down to the customer end site whilst also increasing the MPLS label stack such that if a customer site is compromised they can't break out of the label stack into the backbone carrier’s global routing table transport label range. Any traffic that comes into the CSC-PE1 device will go into the ISP200 VRF which simply links the CPEs at other end sites. It keeps the backbone carrier protected from label popping/jumping.
When this is all one carrier the CSC-CE's LAN interface is the customer LAN interface and WAN interface becomes the GRT of a standard MPLS carrier. The CSC-CE's form VPNv4 peering’s with each other to exchange labels. They don't form IPv4 Unicast peering’s with each other though. The backbone carrier acts as the customer carrier IGP, the CSC-CEs run OSPF and LDP to the CSC-PEs. The backbone carrier takes in the customer carrier GRT as a customer (VRF) and transports routes across its own backbone inside a transport label.
A key configuration point on to use LDP instead of MP-BGP between the CSC-CEs and CSC-PEs is on the IOS-XR CSC backbone PEs LDP is configured with a separate transport address under the VRF, for the interface facing the CSC-CE. Without this LDP will fail to establish a neighborship because the CSC-CE won't have a route to the CSC-PEs loopback which is being used as it's LDP transport address inside the CSC-PEs OSPF area 0 (main backbone IGP area).
In the example Wireshark capture below ping between end customer switches over the EoMPLS pseudowire on the CSC-CE's is shown, with explicit NULL enabled so that the label stack shows the full stack, as these two neighbour CSC-PEs would be using PHP.


CSC-CE1:
hostname CSC-CE1 ! vrf definition CUST1 rd 10.0.0.1:1 ! address-family ipv4 route-target export 200:1 route-target import 200:1 exit-address-family ! mpls label protocol ldp mpls ldp explicit-null no mpls ip propagate-ttl ! interface Loopback0 ip address 10.0.0.1 255.255.255.255 ! interface FastEthernet0/0 description Link to Cust1 vrf forwarding CUST1 ip address 192.0.2.1 255.255.255.252 ! interface FastEthernet0/1 description Link to CSC-PE1 mtu 1530 ip address 172.16.0.2 255.255.255.252 ip ospf network point-to-point ip ospf 200 area 200 mpls ldp discovery transport-address interface mpls ip ! interface FastEthernet1/0 description Xconnect CSC-CE2 no ip address xconnect 10.0.0.2 1234 encapsulation mpls ! router ospf 200 router-id 10.0.0.1 passive-interface default no passive-interface FastEthernet0/1 network 10.0.0.1 0.0.0.0 area 200 ! router bgp 200 bgp router-id 10.0.0.1 bgp log-neighbor-changes neighbor 10.0.0.2 remote-as 200 neighbor 10.0.0.2 update-source Loopback0 ! address-family ipv4 no neighbor 10.0.0.2 activate exit-address-family ! address-family vpnv4 neighbor 10.0.0.2 activate neighbor 10.0.0.2 send-community extended neighbor 10.0.0.2 next-hop-self exit-address-family ! address-family ipv4 vrf CUST1 redistribute connected exit-address-family ! mpls ldp router-id Loopback0 force
CSC-PE1:
hostname CSC-PE1
!
vrf ISP200
address-family ipv4 unicast
import route-target
100:200
!
export route-target
100:200
!
!
!
interface Loopback0
ipv4 address 1.1.1.1 255.255.255.255
!
interface GigabitEthernet0/0/0/0
description Link to CSC-PE2
mtu 1544
ipv4 address 1.0.0.1 255.255.255.252
!
interface GigabitEthernet0/0/0/1
description Link to CSC-CE2
mtu 1544
vrf ISP200
ipv4 address 172.16.0.1 255.255.255.252
!
route-policy PASS
pass
end-policy
!
router ospf 1
router-id 1.1.1.1
address-family ipv4 unicast
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
network point-to-point
passive disable
!
!
!
router ospf 200
address-family ipv4 unicast
vrf ISP200
redistribute bgp 100 metric 10
address-family ipv4 unicast
area 200
interface GigabitEthernet0/0/0/1
network point-to-point
!
!
!
!
router bgp 100
bgp router-id 1.1.1.1
bgp log neighbor changes detail
address-family ipv4 unicast
!
address-family vpnv4 unicast
!
neighbor 2.2.2.2
remote-as 100
update-source Loopback0
address-family ipv4 unicast
route-policy PASS in
route-policy PASS out
next-hop-self
!
address-family vpnv4 unicast
route-policy PASS in
route-policy PASS out
next-hop-self
!
!
vrf ISP200
rd 1.1.1.1:200
address-family ipv4 unicast
redistribute connected
redistribute ospf 200 match internal
!
!
!
mpls ldp
router-id 1.1.1.1
interface GigabitEthernet0/0/0/0
!
vrf ISP200
router-id 172.16.0.1
address-family ipv4
!
interface GigabitEthernet0/0/0/1
address-family ipv4
discovery transport-address interface
!
!
!
!
CSC-PE2:
hostname CSC-PE2
!
vrf ISP200
address-family ipv4 unicast
import route-target
100:200
!
export route-target
100:200
!
!
!
interface Loopback0
ipv4 address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
description Link to CSC-PE1
mtu 1544
ipv4 address 1.0.0.2 255.255.255.252
!
interface GigabitEthernet0/0/0/1
description Link to CSC-CE2
mtu 1544
vrf ISP200
ipv4 address 172.16.0.5 255.255.255.252
!
route-policy PASS
pass
end-policy
!
router ospf 1
router-id 2.2.2.2
address-family ipv4 unicast
area 0
interface Loopback0
passive enable
!
interface GigabitEthernet0/0/0/0
network point-to-point
passive disable
!
!
!
router ospf 200
address-family ipv4 unicast
area 200
!
vrf ISP200
redistribute bgp 100 metric 10
address-family ipv4 unicast
area 200
interface GigabitEthernet0/0/0/1
network point-to-point
!
!
!
!
router bgp 100
bgp router-id 2.2.2.2
bgp log neighbor changes detail
address-family ipv4 unicast
!
address-family vpnv4 unicast
!
neighbor 1.1.1.1
remote-as 100
update-source Loopback0
address-family ipv4 unicast
route-policy PASS in
route-policy PASS out
next-hop-self
!
address-family vpnv4 unicast
route-policy PASS in
route-policy PASS out
next-hop-self
!
!
vrf ISP200
rd 2.2.2.2:200
address-family ipv4 unicast
redistribute connected
redistribute ospf 200 match internal
!
!
!
mpls ldp
router-id 2.2.2.2
interface GigabitEthernet0/0/0/0
!
vrf ISP200
router-id 172.16.0.5
address-family ipv4
!
interface GigabitEthernet0/0/0/1
address-family ipv4
discovery transport-address interface
!
!
!
!
CSC-CE2:
hostname CSC-CE2 ! vrf definition CUST1 rd 10.0.0.2:1 ! address-family ipv4 route-target export 200:1 route-target import 200:1 exit-address-family ! multilink bundle-name authenticated mpls label protocol ldp mpls ldp explicit-null ! interface Loopback0 ip address 10.0.0.2 255.255.255.255 ! interface FastEthernet0/0 description Link to Cust1 vrf forwarding CUST1 ip address 192.0.2.5 255.255.255.252 ! interface FastEthernet0/1 description Link to CSC-PE2 mtu 1530 ip address 172.16.0.6 255.255.255.252 ip ospf network point-to-point ip ospf 200 area 200 mpls label protocol ldp mpls ip ! interface FastEthernet1/0 description Xconnect CSC-CE1 no ip address xconnect 10.0.0.1 1234 encapsulation mpls ! router ospf 200 router-id 10.0.0.2 passive-interface default no passive-interface FastEthernet0/1 network 10.0.0.2 0.0.0.0 area 200 ! router bgp 200 bgp router-id 10.0.0.2 bgp log-neighbor-changes neighbor 10.0.0.1 remote-as 200 neighbor 10.0.0.1 update-source Loopback0 ! address-family ipv4 no neighbor 10.0.0.1 activate exit-address-family ! address-family vpnv4 neighbor 10.0.0.1 activate neighbor 10.0.0.1 send-community extended neighbor 10.0.0.1 next-hop-self exit-address-family ! address-family ipv4 vrf CUST1 redistribute connected exit-address-family ! mpls ldp router-id FastEthernet0/1 force
CSC-CE1#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
16 No Label 192.0.2.0/30[V] 0 aggregate/CUST1
17 Pop Label 192.0.2.253/32[V] \
0 aggregate/CUST1
18 24003 172.16.0.4/30 0 Fa0/1 172.16.0.1
19 24004 10.0.0.2/32 0 Fa0/1 172.16.0.1
20 No Label l2ckt(1234) 24300 Fa1/0 point2point
RP/0/0/CPU0:CSC-PE1#show mpls forwarding Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 24000 Exp-Null-v4 10.0.0.1/32[V] Gi0/0/0/1 172.16.0.2 79706 24001 Aggregate ISP200: Per-VRF Aggr[V] \ ISP200 0 24002 Pop 2.2.2.2/32 Gi0/0/0/0 1.0.0.2 60616 24003 24003 172.16.0.4/30[V] 2.2.2.2 4218 24004 24004 10.0.0.2/32[V] 2.2.2.2 4554441
Previous page: 6PE Interop (IOS/IOS-XR/Junos)
Next page: CSC (Squashed) with MP-BGP