Multicast VPN (mVPN)
Network Topology:
Step 1: Choosing the PIM mode for P-network
Here, the SP is running PIM SM using Auto-RP. PE2 router is configured as the RP-Mapping Agent while PE2 and PE3 are configured as Candidate-RPs (C-RPs).
PE1, PE2 & PE3 PIM Configuration
PE1 router:ip multicast-routing!interface Loopback 0 ip address 1.1.1.1 255.255.255.255 ip pim sparse-mode!interface fastethernet 0/0 ip pim sparse-mode!PE2 router:ip multicast-routing!interface Loopback 0 ip address 2.2.2.2 255.255.255.255 ip pim sparse-mode!interface fastethernet 0/0 ip pim sparse-mode!access-list 1 permit 239.0.0.0 0.255.255.255!ip pim send-rp-announce Loopback 0 scope 30 group-list 1 ! C-RPip pim send-rp-discovery Loopback 0 scope 30 ! RP-Mapping Agent!PE3 router:ip multicast-routing!interface Loopback 0 ip address 3.3.3.3 255.255.255.255 ip pim sparse-mode!interface fastethernet 0/0 ip pim sparse-mode!access-list 1 permit 239.0.0.0 0.255.255.255!ip pim send-rp-announce Loopback 0 scope 10 group-list 1 ! C-RP!Step 2: Choosing the VPN group address used inside the P-network
MVPN requires a group address for Default-MDT. The PE routers build default-MDT with peer PE routers with same mVRF (multicast VRF) for the Multicast Domain (MD). The PE routers share PIM information over this MDT.
Default-MDT configuration
PE1 router:ip vrf CUST1 rd 1:1 route-target both 1:1 mdt default 239.192.10.0!PE2 router:ip vrf CUST1 rd 1:1 route-target both 1:1 mdt default 239.192.10.0!PE3 router:ip vrf CUST1 rd 1:1 route-target both 1:1 mdt default 239.192.10.0!Step 3: Choosing the PIM mode for the VPN (C-network)
This is for the customer. Essentially, a customer can use any PIM mode in this type of setup. PIM DM, PIM SM, Bidir-PIM, PIM SSM are all available as a choice to the customer.
Here, the customer will use PIM SM using Static-RP. The RP is located at the remote site. RP Address: 12.1.1.1 (CE2 router's Loopback 0 interface)
CE1 and PE1 PIM configuration
CE1 router:ip multicast-routing!interface Loopback 0 ip address 192.168.1.1 255.255.255.0 ip pim sparse-mode!interface serial 0/0 ip address 10.1.1.1 255.255.255.252 ip pim sparse-mode!ip pim rp-address 12.1.1.1 ! Remote CE's Loopback interface acting as the RP!PE1 router:ip multicast-routing vrf CUST1!interface serial 1/0 ip vrf forwarding CUST1 ip address 10.1.1.2 255.255.255.252 ip pim sparse-mode!ip pim vrf CUST1 rp-address 12.1.1.1 ! RP address for the VPN!CE2 & PE2 PIM configuration
CE2 router:ip multicast-routing!interface Loopback 0 ip address 12.1.1.1 255.255.255.255 ip pim sparse-mode!interface Loopback 1 ip address 192.168.2.1 255.255.255.0 ip pim sparse-mode!interface serial 0/0 ip address 10.2.2.1 255.255.255.252 ip pim sparse-mode!ip pim rp-address 12.1.1.1!PE2 router:ip multicast-routing vrf CUST1!interface serial 1/0 ip vrf forwarding CUST1 ip address 10.2.2.2 255.255.255.252 ip pim sparse-mode!ip pim vrf CUST1 rp-address 12.1.1.1!Multicast Tunnel Interface (MTI):
When default-MDT is created on PE routers, they immediately create a Tunnel interface (Tunnel 0 here) from the Loopback interface called Multicast Tunnel Interface MTI. An MP-BGP update is sent to all PE routers that are peers to the router to indicate the presence of Default-MDT. The PE-router issues a Join message to the RP for the Default-MDT group.
MTI
PE1# show interface tunnel 0Tunnel0 is up, line protocol is up Hardware is Tunnel Interface is unnumbered. Using address of Loopback0 (1.1.1.1) MTU 1514 bytes, BW 9 Kbit/sec, DLY 500000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 1.1.1.1 (Loopback0), destination 239.192.10.1 Tunnel protocol/transport GRE/IP Multicast Key disabled, sequencing disabled Checksumming of packets disabled Tunnel TTL 255 Fast tunneling enabled Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input never, output 00:00:20, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 17 packets output, 1066 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped outAs seen above, the traffic entering Tunnel 0 interface is encapsulated by GRE with a destination address of 239.192.10.1 (Default-MDT group address) and source address of 1.1.1.1 (Loopback 0 interface of PE1 router). This happens for all PE routers.
PIM interfaces in the VRF on PE1
PE1# show ip pim vrf CUST1 interfaceAddress Interface Ver/ Nbr Query DR DR Mode Count Intvl Prior1.1.1.1 Tunnel0 v2/S 2 30 1 3.3.3.310.1.1.2 Serial1/0 v2/S 1 30 1 0.0.0.0The above output shows that two interfaces are enabled for PIM- Tunnel 0 and Serial 1/0. The MTI Tunnel 0 interface is treated as a LAN interface and hence a DR (Designated Router) is elected (by default, the router with highest IP address). Note the tunnel interface operates in PIM Sparse-mode (inherits from Loopback interface) and the neighbor count is 2 which are PE2 and PE3 routers.
Multiprotocol BGP MDT updates:
When a PE router creates a Default-MDT, it updates all its peers using MP-BGP. BGP uses Extended Community attribute to advertise the updates. The update contains the following information-
(a) The MDT extended community attribute for the Default-MDT group of the form ASN : Default-MDT-group-address.
(b) The MP_REACH_NLRI contains the VPNv4 style address with RD 2 : ASN : Assigned-Number indicating this RD is part of MDT group address.
BGP VPNv4 updates from BGP peers
---- "debug ip bgp vpnv4 unicast updates" on PE1----BGP(2): 3.3.3.3 rcvd UPDATE w/ attr: nexthop 3.3.3.3, origin ?, localpref 100, metric 0, extended community RT:1:1 MDT:100:239.192.10.1BGP(2): 3.3.3.3 rcvd 2:1:1:3.3.3.3/32BGP(2): 2.2.2.2 rcvd UPDATE w/ attr: nexthop 2.2.2.2, origin ?, localpref 100, metric 0, extended community RT:1:1 MDT:100:239.192.10.1BGP(2): 2.2.2.2 rcvd 2:1:1:2.2.2.2/32PE1# show ip bgp vpnv4 allBGP table version is 19, local router ID is 1.1.1.1Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S StaleOrigin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight PathRoute Distinguisher: 1:1 (default for vrf CUST1)*> 10.1.1.0/30 0.0.0.0 0 32768 ?*>i10.2.2.0/30 2.2.2.2 0 100 0 ?*>i12.1.1.1/32 2.2.2.2 10 100 0 ?*> 192.168.1.1/32 10.1.1.1 10 32768 ?*>i192.168.2.1/32 2.2.2.2 10 100 0 ?Route Distinguisher: 2:1:1*> 1.1.1.1/32 0.0.0.0 0 ?*>i2.2.2.2/32 2.2.2.2 0 100 0 ?*>i3.3.3.3/32 3.3.3.3 0 100 0 ?PE1# show ip pim mdt bgpPeer (Route Distinguisher + IPv4) Next Hop MDT group 239.192.10.1 2:1:1:2.2.2.2 2.2.2.2 2:1:1:3.3.3.3 3.3.3.3PIM Adjacencies:
A PE router forms three different types of adjacencies:
(1) Between PE and CE: This VRF PIM adjacency is formed between PE and CE routers for a VRF. Both PE and CE run same PIM mode.
(2) Between PE and P: This global PIM adjacency is formed between PE and P routers in the P-network. If a PE is directly connected, then too a PIM adjacency is formed between them via an MTI.
(3) Between PE and PE: This VRF PIM adjacency is formed between PE and remote PE routers via an MTI tunnel interface for a particular VRF.
PIM adjacencies on PE1
!! Global PIM adjacenciesPE1# show ip pim neighborPIM Neighbor TableMode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority, S - State Refresh CapableNeighbor Interface Uptime/Expires Ver DRAddress Prio/Mode172.16.1.2 FastEthernet2/0 00:46:44/00:01:23 v2 1 / DR S!! VRF PIM adjacencies for CUST1 VRFPE1# show ip pim vrf CUST1 neighborPIM Neighbor TableMode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority, S - State Refresh CapableNeighbor Interface Uptime/Expires Ver DRAddress Prio/Mode3.3.3.3 Tunnel0 00:16:40/00:01:20 v2 1 / DR S2.2.2.2 Tunnel0 00:26:07/00:01:21 v2 1 / S10.1.1.1 Serial1/0 00:40:13/00:01:21 v2 1 / SPIM RP Mapping:
The C-network is configured for PIM SM using Static RP while the P-network is configured with PIM SM using Auto-RP.
PIM RP Mappings
PE1# show ip pim rp mappingPIM Group-to-RP MappingsGroup(s) 239.0.0.0/8 RP 2.2.2.2 (PE2), v2v1 Info source: 2.2.2.2 (PE2), elected via Auto-RP Uptime: 00:16:03, expires: 00:02:47PE1# show ip pim vrf CUST1 rp mappingPIM Group-to-RP MappingsGroup(s): 224.0.0.0/4, Static RP: 12.1.1.1 (?)Multicast Distribution Trees (MDTs):
The source is located behind the CE1 router while the receiver is behind the CE2 router. When the source starts to send multicast traffic for group address 239.10.10.10, CE1 router receives the packets, checks its multicast routing table for 239.10.10.10 group, creates a (*, G) i.e. (*, 239.10.10.10) entry in its multicast routing table, creates a Register message encapsulating the multicast packet with RP address 12.1.1.1 (configured statically) and forwards it towards the upstream router PE1. Due to inefficiency, the RP creates a (S, G) entry i.e. (192.168.1.1, 239.10.10.10), switches over to SPT-tree and sends Register-stop message to CE1 router. The RP sends periodic Join/Prune message to upstream routers to join SPT-tree.
CE1 multicast routing table
CE1# show ip mrouteIP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.10.10.10), 00:08:34/stopped, RP 12.1.1.1, flags: SPF Incoming interface: Serial0/0, RPF nbr 10.1.1.2 Outgoing interface list: Null(10.1.1.1, 239.10.10.10), 00:01:27/00:02:34, flags: PFT Incoming interface: Serial0/0, RPF nbr 0.0.0.0, Registering Outgoing interface list: Null(192.168.1.1, 239.10.10.10), 00:01:27/00:03:05, flags: FT Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: Serial0/0, Forward/Sparse, 00:01:27/00:03:02When PE1 router receives multicast packets over VRF CUST1, it encapsulates these multicast packets in GRE and forwards to the Default-MDT group 239.192.10.1 via MTI Tunnel 0. So, PE2 and PE3 routers receive these GRE packets. Both routers decapsulate the GRE packets and retrieve the multicast packets from within. Since, PE3 router does not have any interested receiver(s), it will discard those packets. However, PE2 router checks its multicast routing table and forwards to CE2 router. Hence, it will forward these multicast packets over the VRF interface to CE2. CE2 router checks its multicast routing table and forwards the packets to the correct receiver.
The following output shows the global multicast routing table for Default-MDT group address 239.192.10.1. Other PE routers in the same multicast domain (MD) will have a same multicast routing table. The flag 'Z' indicates the multicast packets are sent over the MTI tunnel.
Global multicast routing table
PE1# show ip mroute 239.192.10.1IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.192.10.1), 00:44:02/stopped, RP 2.2.2.2, flags: SJCFZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 00:44:02/00:01:04(1.1.1.1, 239.192.10.1), 00:22:38/00:03:13, flags: FT Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: FastEthernet2/0, Forward/Sparse, 00:22:38/00:02:35(2.2.2.2, 239.192.10.1), 00:22:51/00:02:43, flags: JTZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 00:22:51/00:01:10(3.3.3.3, 239.192.10.1), 00:13:12/00:02:43, flags: JTZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 00:13:12/00:01:48The mVRF routing entries on PE1 shows that the incoming interface is Serial 1/0 (VRF interface towards CE1 router) while the outgoing interface is Tunnel 0 interface. While on PE2 router, the incoming interface is Tunnel 0 interface and outgoing interface is Serial 1/0 (VRF interface towards CE2 router).
mVRF entries on PE1 & PE2
PE1# show ip mroute vrf CUST1 239.10.10.10IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.10.10.10), 00:02:28/stopped, RP 12.1.1.1, flags: SPF Incoming interface: Tunnel0, RPF nbr 2.2.2.2 Outgoing interface list: Null(10.1.1.1, 239.10.10.10), 00:02:28/00:01:27, flags: FT Incoming interface: Serial1/0, RPF nbr 10.1.1.1 Outgoing interface list: Tunnel0, Forward/Sparse, 00:02:22/00:03:00(192.168.1.1, 239.10.10.10), 00:02:22/00:01:27, flags: T Incoming interface: Serial1/0, RPF nbr 10.1.1.1 Outgoing interface list: Tunnel0, Forward/Sparse, 00:02:22/00:02:58PE2# show ip mroute vrf CUST1 239.10.10.10IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.10.10.10), 00:00:13/stopped, RP 12.1.1.1, flags: SP Incoming interface: Serial1/0, RPF nbr 10.2.2.1 Outgoing interface list: Null(10.1.1.1, 239.10.10.10), 00:00:13/00:03:26, flags: T Incoming interface: Tunnel0, RPF nbr 1.1.1.1 Outgoing interface list: Serial1/0, Forward/Sparse, 00:00:13/00:03:18(192.168.1.1, 239.10.10.10), 00:00:13/00:03:26, flags: T Incoming interface: Tunnel0, RPF nbr 1.1.1.1 Outgoing interface list: Serial1/0, Forward/Sparse, 00:00:13/00:03:18RPF Checks:
In mVPN, RPF check is categorised into three types of multicast packets-
(1) Customer packets received on the PE router on mVRF interface: The customer source IP address lookup in the VRF unicast routing table returns the interface associated with that VRF as the RPF interface
(2) P-packets received on the PE router from P router or directly connected PE router: The P-packet source IP address lookup in the global unicast routing table returns the interface connected to the P-router or PE-router as the RPF interface
(3) Customer packets received from MTI from remote PE router in the mVRF: If MP-BGP has learned the prefix that contains the C-source address, the RPF interface is set to the MTI that is associated with that mVRF since MTI does not take part in unicast routing.
RPF check on PE1 & PE2
PE1# show ip rpf vrf CUST1 12.1.1.1RPF information for ? (12.1.1.1) RPF interface: Tunnel0 RPF neighbor: PE2 (2.2.2.2) RPF route/mask: 12.1.1.1/32 RPF type: unicast (bgp 100) RPF recursion count: 0 Doing distance-preferred lookups across tablesPE1# show ip rpf 2.2.2.2RPF information for PE2 (2.2.2.2) RPF interface: FastEthernet2/0 RPF neighbor: ? (172.16.1.2) RPF route/mask: 2.2.2.2/32 RPF type: unicast (ospf 1) RPF recursion count: 0 Doing distance-preferred lookups across tablesPE2# show ip rpf vrf CUST1 12.1.1.1RPF information for ? (12.1.1.1) RPF interface: Serial1/0 RPF neighbor: ? (10.2.2.1) RPF route/mask: 12.1.1.1/32 RPF type: unicast (ospf 11) RPF recursion count: 0 Doing distance-preferred lookups across tablesData-MDT: Optimizing traffic forwarding
Data-MDT is a multicast tree that is constructed on demand. The conditions to create Data-MDT depends on the threshold of traffic-load (1Kbps by default) and/or access-list specifying specific source address inside the VPN. When traffic-load threshold exceeds configured rate, the PE router sends a Data-Join message to the RP with the group address. It creates a (S,G) entry i.e. (1.1.1.1, 239.192.20.0) in its global multicast routing table by picking a group address from the range and starts sending traffic over to the Data-MDT group. Data-MDT is only created by PE that has the source connected to its site. Data-MDT uses the MTI created by Default-MDT.
Data-MDT configuration on PE1
ip vrf CUST1 rd 1:1 route-target both 1:1 mdt default 239.192.10.1 mdt data 239.192.20.0 0.0.0.255 threshold 1!When Default-MDT was configured, multicast traffic was forwarded to PE3 router which had no receives. With Data-MDT being created on demand, there wont be any traffic flowing towards PE3 router now. The flag 'z' indicates that PE1 router is the Data-MDT group sender for 239.192.20.0
Data-MDT multicast routing table
PE1# show ip mrouteIP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.192.20.0), 00:04:23/stopped, RP 2.2.2.2, flags: SPFz Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: Null(1.1.1.1, 239.192.20.0), 00:04:23/00:02:02, flags: FTz Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: FastEthernet2/0, Forward/Sparse, 00:04:22/00:03:03(*, 239.192.20.1), 00:04:23/stopped, RP 2.2.2.2, flags: SPFz Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: Null(1.1.1.1, 239.192.20.1), 00:04:23/00:02:02, flags: FTz Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: FastEthernet2/0, Forward/Sparse, 00:04:22/00:03:01(*, 239.192.10.1), 16:36:57/stopped, RP 2.2.2.2, flags: SJCFZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 01:54:46/00:02:23(1.1.1.1, 239.192.10.1), 16:15:34/00:03:07, flags: FT Incoming interface: Loopback0, RPF nbr 0.0.0.0 Outgoing interface list: FastEthernet2/0, Forward/Sparse, 16:15:33/00:03:20(2.2.2.2, 239.192.10.1), 16:15:46/00:02:57, flags: JTZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 01:54:46/00:02:23(3.3.3.3, 239.192.10.1), 16:06:07/00:02:37, flags: JTZ Incoming interface: FastEthernet2/0, RPF nbr 172.16.1.2 Outgoing interface list: MVRF CUST1, Forward/Sparse, 01:54:46/00:02:23The following output shows the mVRF entries. The flag 'y' indicates PE1 router is sending to the Data-MDT group.
Data-MDT: mVRF routing table on PE1
PE1# show ip mroute vrf CUST1 239.10.10.10IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.10.10.10), 00:00:55/stopped, RP 12.1.1.1, flags: SPF Incoming interface: Tunnel0, RPF nbr 2.2.2.2 Outgoing interface list: Null(10.1.1.1, 239.10.10.10), 00:00:50/00:03:19, flags: FTy Incoming interface: Serial1/0, RPF nbr 10.1.1.1 Outgoing interface list: Tunnel0, Forward/Sparse, 00:00:54/00:02:35(192.168.1.1, 239.10.10.10), 00:00:50/00:03:19, flags: Ty Incoming interface: Serial1/0, RPF nbr 10.1.1.1 Outgoing interface list: Tunnel0, Forward/Sparse, 00:00:54/00:02:35The following output taken from PE2 router indicates that it is receiving traffic on Data-MDT indicated by flag 'Y'.
Data-MDT: mVRF routing entries on PE2
PE2# show ip mroute VRF CUST1 239.10.10.10IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data groupOutgoing interface flags: H - Hardware switched, A - Assert winner Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.10.10.10), 00:02:12/stopped, RP 12.1.1.1, flags: SP Incoming interface: Serial1/0, RPF nbr 10.2.2.1 Outgoing interface list: Null(10.1.1.1, 239.10.10.10), 00:02:12/00:02:09, flags: TY Incoming interface: Tunnel0, RPF nbr 1.1.1.1, MDT:239.192.20.0/00:01:52 Outgoing interface list: Serial1/0, Forward/Sparse, 00:02:12/00:03:14(192.168.1.1, 239.10.10.10), 00:02:12/00:02:09, flags: TY Incoming interface: Tunnel0, RPF nbr 1.1.1.1, MDT:239.192.20.1/00:01:52 Outgoing interface list: Serial1/0, Forward/Sparse, 00:02:12/00:03:18Since PE3 router has no interested receiver for VPN group address 239.10.10.10, it does not join the Data-MDT group.
Data-MDT:mVRF entries on PE3
PE3# show ip mroute vrf CUST1 239.192.20.0Group 239.192.20.0 not foundPE3# show ip mroute vrf CUST1 239.192.20.1Group 239.192.20.1 not foundThe show ip pim vrf CUST1 mdt send command displays the Data-MDT setup on the sending PE router i.e. PE1 router.
Data-MDT sending by PE1
PE1# show ip pim vrf CUST1 mdt sendMDT-data send list for VRF: CUST1 (source, group) MDT-data group ref_count (10.1.1.1, 239.10.10.10) 239.192.20.0 1 (192.168.1.1, 239.10.10.10) 239.192.20.1 1The show ip pim vrf CUST1 mdt receive command displays the Data-MDT setup on the receiving PE router i.e. PE2 router.
Data-MDT receiving on PE2
PE2# show ip pim vrf CUST1 mdt receiveJoined MDT-data [group : source] uptime/expires for VRF: CUST1 [239.192.20.1 : 0.0.0.0] 00:00:24/00:02:35 [239.192.20.0 : 0.0.0.0] 00:00:24/00:02:35