This article is the first of series on multicast routing.
The first describes an IP multicast routing configuration with a static RP. The next will go through dynamic RP propagation as well as inter-AS multicast.
<h1 class=”symple-heading symple-heading- text-align-left “style=”color: undefined;margin-bottom: 30px;margin-top: 30px;”> Unicast forwarding Plane </h1>
Here is the topology for this first article. It is quite simple, made of 3 routers. OSPF process is used to create the IP unicast plane necessary to multicast operations.
router ospf 1 router-id 10.10.10.1 network 0.0.0.0 255.255.255.255 area 0
Without a unicast plane, multicast cannot operate as it relies on the unicast routing table to:
– locate the rendez-vous point
– perform RPF (Reverse Path Forwarding) checks
The RPF checks are essential to multicast as they prevent packet loops in the network. Packets are expected to be received from the interface where they are routed to in the unicast routing table (which is the best path).
Note that in specific cases, you may need to override the RPF checks / routing table. For that purpose you can define static mroutes. We will probably see them in a another article.
Multicast activation and PIM-SM configuration
ip multicast-routing int eX/X ip pim sparse-mode
<h1 class=”symple-heading symple-heading- text-align-left “style=”color: undefined;margin-bottom: 30px;margin-top: 30px;”> Static RP </h1>
The multicast rendez vous point, which is used in ASM (Any Source Multicast) to create source trees (SPT) from inital shared trees is defined statically in the present case. This is the most basic RP configuration you can use as it only relies on local configuration on each network devices. This can be limited in larger networks with redundancy needs, yet you can configure multiple RPs for multiple different groups.
Static RP definition can be used when working with Anycast RP, you can check my NX-OS Anycast RP PIM article to learn more about it.
R1(config)#ip pim rp-address 192.168.1.2 R2(config)#ip pim rp-address 192.168.1.2 R3(config)#ip pim rp-address 192.168.1.2
In order to test our multicast configuration, a receiver is simulated on R1.
R1(config)#do sh run int e0/1 ! interface Ethernet0/1 no switchport ip address 172.16.14.1 255.255.255.0 ip pim sparse-mode ip igmp join-group 18.104.22.168 duplex auto end
And then the multicast address is pinged successfully:
R3#ping 22.214.171.124 Type escape sequence to abort. Sending 1, 100-byte ICMP Echos to 126.96.36.199, timeout is 2 seconds: Reply to request 0 from 172.16.14.1, 29 ms Reply to request 0 from 172.16.14.1, 29 ms
The next article will come soon and will bring more details on the registration process as well as dynamic RP propagation methods.