Introduction
This document describes how to configure Anycast RP using MSDP on a Nexus switch running in NX-OS mode.
Prerequisites
Requirements
It is recommended that you have knowledge of these topics:
Components Used
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
The information in this document is based on Cisco Nexus 9000 with NXOS version 9.3.9.
Background Information
Although the protocol Anycast-RP is more commonly used to share the role of RP between two or more PIM routers in the same routing domain, MSDP can also be used.
Configure
Network Diagram
Note: In the previous diagram, the blue links are labeled as Layer 2 Interface and the red links are labeled as Layer 3 Interface.
Configure Unicast and Multicast before MSDP
Before MSDP can be configured, unicast and multicast must be configured on all the layer 3 Nexus switches including the RPs. In this example, EIGRP was configured on all Layer 3 interfaces and ICMP pings were successful from source to receiver.
IGMP is configured on layer 3 interfaces by default. However, you must enable PIM on the layer 3 interfaces as well as statically configure the rp-address that you plan to use on RP-1 and RP-2:
FHR-1:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface Vlan87
ip pim sparse-mode
interface Ethernet1/7
ip pim sparse-mode
interface Ethernet1/9
ip pim sparse-mode
FHR-2:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface Vlan87
ip pim sparse-mode
interface Ethernet1/7
ip pim sparse-mode
interface Ethernet1/9
ip pim sparse-mode
RP-1:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface loopback0
ip pim sparse-mode
interface Ethernet1/53
ip pim sparse-mode
interface Ethernet1/54
ip pim sparse-mode
RP-2:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface loopback0
ip pim sparse-mode
interface Ethernet1/53
ip pim sparse-mode
interface Ethernet1/54
ip pim sparse-mode
LHR-1:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface Vlan5
ip pim sparse-mode
interface Ethernet1/53
ip pim sparse-mode
interface Ethernet1/54
ip pim sparse-mode
LHR-2:
feature pim
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4
interface Vlan5
ip pim sparse-mode
interface Ethernet1/53
ip pim sparse-mode
interface Ethernet1/54
ip pim sparse-mode
Configure MSDP Peering on all RPs in the Network
Each Nexus switch that is a member of the Anycast RP set must be configured to peer with all other Nexus switches. In this example, RP-1 and RP-2 are both configured as peers:
RP-1:
feature msdp
ip msdp originator-id loopback1
ip msdp peer 10.1.1.3 connect-source loopback1
ip msdp mesh-group 10.1.1.3 rp-mesh
interface loopback0
description Anycast RP Address
ip address 10.1.1.1/32
ip router eigrp 1
ip pim sparse-mode
interface loopback1
description MSDP Originator ID
ip address 10.1.1.2/32
ip router eigrp 1
RP-2:
feature msdp
ip msdp originator-id loopback1
ip msdp peer 10.1.1.2 connect-source loopback1
ip msdp mesh-group 10.1.1.2 rp-mesh
interface loopback0
description Anycast RP Address
ip address 10.1.1.1/32
ip router eigrp 1
ip pim sparse-mode
interface loopback1
description MSDP Originator ID
ip address 10.1.1.3/32
ip router eigrp 1
Note: In this example, interface loopback1 is used for MSDP peering and not PIM. For that reason, ip pim sparse-mode does not need to be configured on interface loopback1. That said, there is no harm in enabling PIM sparse-mode on interface loopback1.
Verify
MSDP peering is configured correctly when you see the Connection State is Established. You can see the counter for (S,G)s Received increase:
RP-1# show ip msdp summary
MSDP Peer Status Summary for VRF "default"
Local ASN: 0, originator-id: 10.1.1.2
Number of configured peers: 1
Number of established peers: 1
Number of shutdown peers: 0
Peer Peer Connection Uptime/ Last msg (S,G)s
Address ASN State Downtime Received Received
10.1.1.3 0 Established 01:33:54 never 1
Note: The counter for (S,G)s Received remains at 0 if there is no multicast in the network.
Troubleshoot
MSDP Peering Stuck in Listening State
The show ip msdp summary command indicates that Connection State is in the Listening state:
RP-1# show ip msdp summary
MSDP Peer Status Summary for VRF "default"
Local ASN: 0, originator-id: 10.1.1.2
Number of configured peers: 1
Number of established peers: 0
Number of shutdown peers: 0
Peer Peer Connection Uptime/ Last msg (S,G)s
Address ASN State Downtime Received Received
10.1.1.3 0 Listening 00:03:27 never 0
The likely causes for this issue are:
- MSDP is incorrectly configured.
- A connectivity failure caused the MSDP peers to be unable to reach each other.
In this example, assuming the configuration is correct, ethanalyzer can be used to troubleshoot potential packet loss between 10.1.1.2 and 10.1.1.3.
Note: Watch How to perform Ethanalyzer captures on Nexus series switches for more details about ethanalyzer.
Multicast (S, G)s not Shared
If the Connection State is Established but (S,G)s Received is not incrementing, it is likely that MSDP is not configured properly. The most likely cause for this behavior is that the (S,G)s are being discarded due to a detected duplicate rp-address:
RP-1# show ip msdp event-history events | i looping
2023 Sep 22 12:13:15.106735 msdp [26860]: : Possible looping SA or duplicate RP address exists, RP 10.1.1.1, entry count: 1, length 20, message discarded
2023 Sep 22 12:10:10.314695 msdp [26860]: : Possible looping SA or duplicate RP address exists, RP 10.1.1.1, entry count: 1, length 20, message discarded
2023 Sep 22 12:09:08.352690 msdp [26860]: : Possible looping SA or duplicate RP address exists, RP 10.1.1.1, entry count: 1, length 20, message discarded
2023 Sep 22 12:08:06.688953 msdp [26860]: : Possible looping SA or duplicate RP address exists, RP 10.1.1.1, entry count: 1, length 20, message discarded
2023 Sep 22 12:07:04.403736 msdp [26860]: : Possible looping SA or duplicate RP address exists, RP 10.1.1.1, entry count: 1, length 20, message discarded
By default, the Nexus switch is configured to use the rp-address as the originator-id. However, that causes each MSDP peer to use the same originator-id which causes the (S,G)s to be discarded.
In this example, if the originator-id is not configured, the rp-address 10.1.1.1 from loopback0 is used as the originator-id when it must be a unique IP for Anycast RP to work:
RP-1:
feature msdp
ip msdp peer 10.1.1.3 connect-source loopback1
ip msdp mesh-group 10.1.1.3 rp-mesh
interface loopback0
description Anycast RP Address
ip address 10.1.1.1/32
ip router eigrp 1
ip pim sparse-mode
interface loopback1
description MSDP Originator ID
ip address 10.1.1.2/32
ip router eigrp 1
RP-2:
feature msdp
ip msdp peer 10.1.1.2 connect-source loopback1
ip msdp mesh-group 10.1.1.2 rp-mesh
interface loopback0
description Anycast RP Address
ip address 10.1.1.1/32
ip router eigrp 1
ip pim sparse-mode
interface loopback1
description MSDP Originator ID
ip address 10.1.1.3/32
ip router eigrp
The originator-id is confirmed in the MSDP summary show command:
RP-1# show ip msdp summary
MSDP Peer Status Summary for VRF "default"
Local ASN: 0, originator-id: 10.1.1.1 <--- rp-address from loopback0 is used for the originator-id
Number of configured peers: 1
Number of established peers: 0
Number of shutdown peers: 0
Peer Peer Connection Uptime/ Last msg (S,G)s
Address ASN State Downtime Received Received
10.1.1.3 0 Established 01:33:54 never 0
RP-2# show ip msdp summary
MSDP Peer Status Summary for VRF "default"
Local ASN: 0, originator-id: 10.1.1.1 <--- rp-address from loopback0 is used for the originator-id
Number of configured peers: 1
Number of established peers: 0
Number of shutdown peers: 0
Peer Peer Connection Uptime/ Last msg (S,G)s
Address ASN State Downtime Received Received
10.1.1.2 0 Established 01:33:54 never 0
Note: If MSDP is used to peer between BGP Autonomous Systems (AS)s where the rp-address is typically different, the originator-id can be left default. However, if MSDP is used for Anycast RP, the originator-id must be unique on each MSDP peer.
To resolve this issue, ip msdp originator-id loopback1 must be configured on both of the MSDP peers to ensure that a unique originator-id is used.
Related Information