Configuring Multiple RPs in a PIM-SM Domain Anycast PIM

Problem

You want to configure multiple redundant RPs without the complexity of having to use MSDP.

Solution

Anycast PIM uses a mechanism similar to anycast RP but bypasses the need for MSDP. The configuration is similar to anycast RP. On each of the PIM-SM domains RPs, configure the shared anycast address on the routers loopback interface:

[edit interfaces] aviva@RouterA# set lo0 unit 0 family inet address 10.0.1.1/32

Set the routers regular loopback address as the primary address for the interface:

[edit interfaces] aviva@RouterA# set lo0 unit 0 family inet address 192.168.13.1/32 primary

Then configure PIM. First, set the local RP to use the shared RP address:

[edit protocols pim] aviva@RouterA# set rp local family inet address 10.0.1.1

Then, configure anycast PIM on the RP. First, configure the addresses of the other RPs in the PIM-SM domain:

[edit protocols pim] aviva@RouterA# set rp local family inet anycast-pim rp-set 192.168.12.1

Second, configure the primary loopback address of the local router:

[edit protocols pim] aviva@RouterA# set rp local family inet anycast-pim local-address 192.168.13.1

On the non-RP PIM routers, configure a static RP using the shared address:

[edit protocols pim] aviva@RouterG# set rp static address 10.0.1.1

Discussion

Anycast RP provides the advantages of having redundant RPs, but the cost is that MSDP must run between all the anycast RP routers to synchronize the active source information. Anycast PIM, defined in IETF draft draft-ietf-pim-anycast-rp.txt, provides the same advantages but without the overhead of having to run MSDP to share active source information among the RPs. Anycast PIM extends the definition of PIM Register messages so that they carry active source information among all routers sharing the same unicast (anycast) address.

The anycast PIM configuration is quite similar to that for anycast RP. On the RP routers, configure the loopback interface with the shared RP address. This address tells other routers in the PIM-SM domain what IP address to use for the RP address. Mark the regular loopback address as the primary address so that address is used as the router ID by unicast routing protocols. Verify the loopback interface configuration:

aviva@RouterA> show configuration interfaces lo0 unit 0 { family inet { address 192.168.13.1/32 { primary; } address 10.0.1.1/32; } }

On RouterA, 192.168.13.1 is the primary loopback address, to be used by BGP and OSPF as the router ID, and 10.0.1.1 is the shared RP address.

Instead of configuring the shared RP address at the [edit pim rp local] hierarchy as you did with anycast RP, you do this one level lower, at [edit pim rp local family inet]. You must configure three parameters: the shared RP address, a list of all the RP routers in the PIM-SM domain (called the RP set), and the primary loopback address of the local router. The RP set must be the same on all RP routers in the domain so that all the RPs have a consistent view of the active sources. If the lists are different, anycast PIM will not work. The configuration shown in this recipe looks like this:

[edit protocols] aviva@RouterA# show pim { rp { local { family inet { address 10.0.1.1; # <-- shared RP address anycast-pim { rp-set { address 192.168.12.1; # <-- primary lo0 of other RP } local-address 192.168.13.1; # <-- primary lo0 of this RP } } } } interface all { mode sparse; } interface fe-0/0/0 { disable; } }

When you use the show pim rps command to verify that the anycast PIM RPs are configured and operating correctly, some additional information about the RP is displayed:

aviva@RouterA> show pim rps extensive inet Instance: PIM.master Address family INET RP: 10.0.1.1 Learned via: static configuration Time Active: 00:54:52 Holdtime: 0 Device Index: 130 Subunit: 32769 Interface: pd-0/0/0.32769 Group Ranges: 224.0.0.0/4 Active groups using RP: 224.1.1.1 total 1 groups active Anycast-PIM rpset: 192.168.12.1 Anycast-PIM local address used: 192.168.13.1 Anycast-PIM Register State: Group Source Origin 224.1.1.1 192.168.15.1 DIRECT

The first several lines show the shared RP address of 10.0.1.1 that was learned through static configuration, the group ranges this RP is servicing, and the active groups using the RP, all of which are displayed when you use anycast RP. For anycast PIM, you also see the set of RP routers in the PIM domain (in Anycast-PIM rpset) and the primary loopback address of the local router (in Anycast-PIM local address used). The last section of the output shows which groups the RPs have learned from the PIM Register messages that anycast PIM uses to share active source information among the RPs in the PIM-SM domain.

See Also

IETF draft, draft-ietf-pim-anycast-rp.txt, Anycast-RP using PIM

Категории