Profile 13
Load basic.startup.config.with.cpim.cfg
The basic IP addresses, L3VPN, and C-PIM between the PEs and CEs is pre-configured.
Configure multicast VPN using mLDP in the core using a MP2MP default tree, with P2 as the root.
You cannot use PIM in the core.
CE1 is predefined as the RP in the C-PIM via BSR.
PEs cannot form C-PIM adjacencies between each other. Instead use BGP for the overlay.
See answer below (scroll down).
Answer
This is similar to profile 12, except we use a MP2MP tree for the default MDT instead of P2MP trees. This means the type 1 route is not very useful just like we saw in profile 9, because we have to define the MP2MP root on every PE anyways. However, BGP is now used for overlay routing instead of C-PIM.
Verification
The main difference between this and profile 12 is just that the default MDT uses MP2MP instead of P2MP. Before any C-multicast traffic is seen in the data plane, we will see just one MP2MP mLDP tree on P2. In profile 12 we would see three - one default P2MP rooted at each PE.
The overlay routing works as we saw before with BGP. But we can also notice the difference in auto-discovery in the type 1 route. The FEC type is a MP2MP tree this time. As we saw in profile 9, this route type is not very useful because the PEs all define the MP2MP manually anyways.
Remember that you must define the VPN ID under the VRF on all PEs for the MP2MP tree. This is not the case when using P2MP tree, as bgp auto-discovery is required and the PEs will auto-generate the opaque value (tree ID). Note that if you don’t define the VPN ID on IOS-XR it still appears to work in the lab under certain circumstances. It seems that the VPN ID is coming from the previously configured VPN ID on the VRF, even after resetting the config. However, you should still just manually configure it under the VRF each time.
mLDP OAM
We can use OAM for mLDP to verify the tree. First we’ll enable mpls oam on all XR routers.
From any IOS-XE router, we can use ping mpls mldp to verify all receivers for the tree:
This also works from an IOS-XR PE:
IOS-XR also has the traceroute mpls mldp command available as well. This traces the path, exposing the transit routers in the tree:
Unfortunately, from an IOS-XR root of the MP2MP tree, we cannot ping or traceroute. However, from a IOS-XE root, it does work to ping. You will see replies from every receiver on the tree.
If we enable S-PMSI (data MDTs), we can verify P2MP trees as well.
PE1 advertises a type 3 route (S-PMSI) for this (S, G) flow. Both PE2 and PE3 join the tree. If we ping the tree from PE1, we see both PEs as receivers.
Last updated