In this second post of my ccie blog series on Multicast we will be exploring auto rp.
If you have not seen the first post in this series please take a moment to read Lesson #1 – Static RP
We will be using the same topology below and I will be removing Static RP configuration and replacing it with Auto-RP
The first step is to remove the static RP configuration on every router
I will apply this command no ip pim rp-address 2.2.2.2 on R2,4,5 & 6
Now if we do sh ip pim rp mapping on any router there will be no information.
R2#sh ip pim rp mapping PIM Group-to-RP Mappings R2# R4#sh ip pim rp mapping PIM Group-to-RP Mappings R4#
OK so now we do not have any RP information on any of the routers in the topology. We now need to configure auto rp on R2 – this is done with the following two commands.
R2(config)#ip pim send-rp-discovery Loopback0 scope 255 R2(config)#ip pim send-rp-announce Loopback0 % Incomplete command. R2(config)#ip pim send-rp-announce Loopback0 scope 255 R2(config)#end
ip pim send-rp-discovery
Configure this command on the router designated as an RP mapping agent. Specify a TTL large enough to cover your Protocol Independent Multicast (PIM) domain.
When Auto-RP is used, the following events occur:
1. The RP mapping agent listens on well-known group address CISCO-RP-ANNOUNCE (224.0.1.39), which candidate RPs send to.
2. The RP mapping agent sends RP-to-group mappings in an Auto-RP discovery message to the well-known group CISCO-RP-DISCOVERY (224.0.1.40). The TTL value limits how many hops the message can take.
3. PIM designated routers listen to this group and use the RPs they learn about from the discovery message.
ip pim send-rp-announce
Use this command on the router you want to be an RP. When you are using Auto-RP to distribute group-to-RP mappings, this command causes the router to send an Auto-RP announcement message to the well-known group CISCO-RP-ANNOUNCE (224.0.1.39). This message announces the router as a candidate RP for the groups in the range described by the access list.
If we now go to another router and issue the command sh ip pim rp address, you will not see the RP information. The reason for this is that auto rp uses multicast groups to distribute the RP information. So you actually have a bit of a chicken and egg situation, where to populate RP information you need to join a multicast group but to join a multicast group you need to know the RP!
To overcome this you have to either dense flood the groups 224.0.1.39 and 224.0.1.40 or we can use another command
ip pim autorp listener
Configured on every router in global configuration mode this command enables the two Auto-RP groups 224.0.1.39 and 224.0.1.40 to be Protocol Independent Multicast (PIM) dense mode flooded across interfaces operating in PIM sparse mode.
If we configure this command on R4 and check the RP information again you will see we now have a RP again.
R4(config)#ip pim autorp listener R4(config)# R4(config)# R4(config)# R4(config)#exit R4# R4#sh i *Mar 1 01:38:31.227: %SYS-5-CONFIG_I: Configured from console by console R4#sh ip pim rp mapping PIM Group-to-RP Mappings Group(s) 224.0.0.0/4 RP 2.2.2.2 (?), v2v1 Info source: 2.2.2.2 (?), elected via Auto-RP Uptime: 00:15:31, expires: 00:02:13 R4#
By just configuring the ip pim autorp listener command the groups 224.0.1.39 and 224.0.1.40 are dense flooded across your pim domain. The RP information should now be down to R6
R6-CLIENT#sh ip pim rp mapping PIM Group-to-RP Mappings Group(s) 224.0.0.0/4 RP 2.2.2.2 (?), v2v1 Info source: 2.2.2.2 (?), elected via Auto-RP Uptime: 00:00:57, expires: 00:02:02 R6-CLIENT#
Now all the routers have the RP information again we should be able to get a reply to our ping on R1
R1-SERVER#ping 224.6.6.6 re 5 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 224.6.6.6, timeout is 2 seconds: Reply to request 0 from 10.0.65.6, 88 ms Reply to request 1 from 10.0.65.6, 76 ms Reply to request 2 from 10.0.65.6, 104 ms Reply to request 3 from 10.0.65.6, 108 ms Reply to request 4 from 10.0.65.6, 92 ms R1-SERVER#
Which we can. So there you have it, the second way to configure the rendezvouz point information in a pim sparse mode domain.
The third and final method is BSR or Bootstrap Router. This method does not use multicast groups but actually passes the information in the PIMv2 packet so there is no requirement for an ip autorp listener.
Lesson #3 – Bootstrap Router
Very clear! Thanks