CSC with Option AB (D)
Last updated
Last updated
Load csc.option.ab.init.cfg in the EVE INE SPv4 topology. On XR1, load bootflash:blank.ssh.enabled.cfg and commit replace first. On R1, load bootflash:blank.cfg first as well.
The IGPs of each AS are already preconfigured. Basic L3VPN is setup in AS100 for VPN_A and VPN_B, however R2 and XR2 have no connectivity yet.
Configure CSC between AS100 and AS200, and AS100 and AS300. Configure an inter-AS option AB setup between R7 and R8. The CSC VRF is already defined on all routers in AS200 and AS300, with matching RT values.
Use BGP for all peerings between CSC PEs and CSC CEs.
Inter-AS option AB also has support for CSC. In this scenario, two backbone carriers are providing CSC service to the same customer carrier. These backbone carriers must interconnect and provide inter-AS connectivity for their CSC VRFs. We can use option AB with CSC by using the csc keyword under the VRF.
What this keyword does is preserve the label learned over the VPNv4 routes. In regular option AB, the label is “thrown away” and the traffic is forwarded as native IPv4. However, when you are using inter-AS to support CSC, the label path must be end-to-end. The service label cannot be disposed. Therefore, the csc keyword tells the router to retain the label when forwarding the traffic over the subinterface for the associated VRF.
In our lab, we only have a single CSC VRF, so using option-AB doesn’t really make any sense. If we had more CSC customers on AS 200 and AS 300 we would see the benefit. But even with only one customer, we can configure and verify the solution.
In addition, on R7 and R8 we also need the mpls bgp forwarding command under the per-VRF subinterfaces. This is automatically added when forming an eBGP IPv4-LU or VPNv4 peering, but since we are using option AB, we are only forming the eBGP peering on the global interface. Therefore we need to add mpls bgp forwarding manually under each per-VRF subinterface.
Finally, each peer is defined with the inter-as-hybrid keyword, as seen in the regular option AB lab.
When R2 forwards L3VPN traffic to XR20, there must be an end-to-end LSP. The service label is carried all the way through. The backbone carriers only hold routes for the customer carrier’s internal loopbacks.
On R7, we learn 20.20.20.20/32 within the CSC VRF from R8 over the global eBGP VPNv4 peering. R8 advertises label 16.
We use the option AB nexthop hack in order to forward this over the per-VRF subinterface. The command inter-as-hybrid csc next-hop 10.101.78.8 tells R7 to use 10.101.78.8 as the nexthop for 20.20.20.20/32 within VRF CSC.
The keyword csc tells R7 to retain the MPLS label learned via the VPNv4 route. R7 advertises a local label of 23 to R1 within AS200. We can see that label 23 is swapped with label 16 and forwarded out Gi1.101.
The same process happens on R8.
We can see that we have end-to-end LSPs between R2 and XR20. Service label 24002, below, is carried all the way through. The inter-AS link is labeled with 16/24002.
Using option AB for CSC only requires one additional keyword, csc, under the VRF.
This instructs the router to retain the VPNv4 label when forwarding the traffic over the per-VRF subinterface. In regular option AB, the label is thrown away and traffic is forwarded over the per-VRF subinterface as native IPv4.
Ensure you also enable MPLS on the per-VRF subinterfaces, too.