Anycast RP is a special RP redundancy scenario that allows using redundant RPs sharing the same IP address. Here, Anycast means that groups of RPs use the same IP address used by all multicast routers in the domain to build shared trees. However, the PIM Joins are being sent to the closest RP, based on the unicast routing table. Thus, different routers might join shared trees rooted at different RPs. At the same time, different DRs will pick up different physical RPs based on the anycast address to register their local sources.

To maintain consistent source information, MSDP sessions should be configured between the RPs. This will ensure that all routers joining different RPs will still have full information about all potential sources in the domain. Thus, the following are the guidelines to configure Anycast RP:

  • Use the same IP address on all routers as the candidate RP IP address. Propagate this information via BSR or Auto-RP
  • Using different IP addresses on every router, source MSDP sessions and link all candidate RPs in a mesh. Note that you might need to manually specify the MSDP originator ID to be different on every RP, or the MSDP sessions won’t come up.

MSDP is fundamental to the creation of a virtual RP and redundant RPs. Because all four routers announce the same RP address, MSDP must be configured to use a unique address in its SA messages. The ip msdp originator-id command accomplishes this.

R1(config)# interface Loopback100
R1(config-if)# ip address 1.1.1.1 255.255.255.252
R1(config-if)# exit
R1(config)# ip pim sparse-mode
R1(config)# ip pim rp-candidate Loopback100
R1(config)# ip msdp peer 10.100.1.2 connect-source Loopback0
R1(config)# ip msdp peer 10.100.1.6 connect-source Loopback0
R1(config)# ip msdp peer 10.100.1.10 connect-source Loopback0
R1(config)# ip msdp originator-id Loopback0
R2(config)# interface Loopback100
R2(config-if)# ip address 1.1.1.1 255.255.255.252
R2(config-if)# exit
R1(config)# ip pim sparse-mode
R2(config)# ip pim rp-candidate Loopback100
R2(config)# ip msdp peer 10.100.1.2 connect-source Loopback0
R2(config)# ip msdp peer 10.100.1.6 connect-source Loopback0
R2(config)# ip msdp peer 10.100.1.10 connect-source Loopback0
R2(config)# ip msdp originator-id Loopback0

This type of setup allows us to have RP redundancy/load sharing. If one RP fails, all multicast routers are already pointing to the Anycast address. As soon as the routing protocol converges, the multicast routers will be able to begin using the other RP. At the same time, while both RPs are up, multicast routers throughout the network will use whichever RP is closest (based on routing protocol metrics). Anycast is used for other networking applications. DNS servers across the globe (for example, Google’s DNS servers), use Anycast by sharing the same IP address so that clients making DNS queries reach the closest DNS server from their location.