Multicast is something that can be used to reduce required bandwidth by a single device when sending to multiple devices. In reverse, it can also allow multiple devices to receive data from a single network connection \ stream. In my case, I am studying for the CCIE R&S lab exam, so there is no real world situation with this one. This lab will cover a basic IP pim sparse mode multicast configuration. Be sure to review the lab topology above as well.
In a multicast setup, there are open standards and a Cisco proprietary method. This example will be the open standard. I will probably do another post on the Cisco proprietary method, which is called AutoRP.
For this example we will statically set the RP and the BSR. The RP is the rendezvous point. In a shared tree environment, the RP is the single root point where traffic is sent for traffic destined for a specific multicast address. It is then forwarded for all of the receivers in the network requesting traffic from that specific group address.
Then there is the BSR, or bootstrap router. A BSR is part of the open standard of multicast and something AutoRP does not have. The BSR is something that is used to allow devices to automatically find the RP in the network. In the case of this lab, I will be specifying the BSR and RP statically. I say statically in the sense that I will only specify one candidate, so I control who the RP and BSR are. In this case, that all falls on R2.
First off, the thing that needs to be done is to enable multicast routing globally on each router. Very basic and just a single command:
Next, you will need to set IP Pim Sparse Mode on each interfaces you want to receive and or forward the multicast traffic:
R2(config)#int range e0/0-1,lo0 R2(config-if-range)#ip pim sparse-mode
This will be done on all three routers in the lab environment that I displayed. Next, we will specify the BSR and RP, which will both be R2. There are two commands will need to be entered:
R2(config)#ip pim bsr-candidate lo0 R2(config)#ip pim rp-candidate lo0
We are very close to being able to see the multicast config in action. On R1 now, I will join an IGMP group, and receive traffic destined for a specific multicast IP:
R1(config)#int e0/0 R1(config-if)#ip igmp join 126.96.36.199
Now, I will do a basic test to verify functionality. From R3, I will ping 188.8.131.52. When I do this, any routers joined to that group with that IP will respond. In our case, this will be limited to R1 in terms of routers responding:
That’s all there is to it! If you had more interfaces joined to that IGMP group, they would respond to that ping as well, just as R1 did. If you experience different results in the lab, comment below and I will try to help you out.