Multicast Routing Configuration Guide
Multicast Routing Configuration Guide
Multicast Routing Configuration Guide
This chapter describes how to configure the Protocol Independent Multicast (PIM) and PIM6 features on
Cisco NX-OS devices in your IPv4 and IPv6 networks.
• Information About PIM and PIM6, on page 1
• Prerequisites for PIM and PIM6, on page 23
• Guidelines and Limitations for PIM and PIM6, on page 23
• Default Settings, on page 25
• Configuring PIM and PIM6, on page 25
• Verifying the PIM and PIM6 Configuration, on page 64
• Displaying Statistics, on page 65
• Configuration Examples for PIM, on page 67
• Related Documents, on page 72
• Standards, on page 73
• Feature History for PIM and PIM6, on page 73
Note Beginning with Cisco NX-OS Release 5.0(2a), Bidirectional Forwarding Detection (BFD) supports PIM. See
the Cisco Nexus 7000 Series NX-OS Interfaces Configuration Guide.
PIM, which is used between multicast-capable routers, advertises group membership across a routing domain
by constructing multicast distribution trees. PIM builds shared distribution trees on which packets from
multiple sources are forwarded, as well as source distribution trees on which packets from a single source are
forwarded. For more information about multicast, see Information About Multicast.
Cisco NX-OS supports PIM sparse mode for IPv4 networks (PIM) and for IPv6 networks (PIM6). In PIM
sparse mode, multicast traffic is sent only to locations of the network that specifically request it. You can
configure PIM and PIM6 to run simultaneously on a router. You can use PIM and PIM6 global parameters
to configure RPs, message packet filtering, and statistics. You can use PIM and PIM6 interface parameters
to enable multicast, identify PIM borders, set the PIM hello message interval, and set the designated router
(DR) priority. For more information, see Configuring PIM or PIM6 Sparse Mode.
In Cisco NX-OS, multicast is enabled only after you enable the PIM or PIM6 feature on each router and then
enable PIM or PIM6 sparse mode on each interface that you want to participate in multicast. You can configure
PIM for an IPv4 network and PIM6 for an IPv6 network. In an IPv4 network, if you have not already enabled
IGMP on the router, PIM enables it automatically. In an IPv6 network, MLD is enabled by default. For
information about configuring IGMP and MLD, see Configuring IGMP and Configuring MLD.
Note Beginning with Cisco NX-OS Release 5.2(1) for the Nexus 7000 Series devices, you can configure PIMv4
to run over generic routing encapsulation (GRE) tunnels including outgoing interfaces (OIFs).
You use the PIM and PIM6 global configuration parameters to configure the range of multicast group addresses
to be handled by each of the three distribution modes:
• Any Source Multicast (ASM) provides discovery of multicast sources. It builds a shared tree between
sources and receivers of a multicast group and supports switching over to a source tree when a new
receiver is added to a group. ASM mode requires that you configure an RP.
• Single Source Multicast (SSM) builds a source tree originating at the designated router on the LAN
segment that receives a request to join a multicast source. SSM mode does not require you to configure
RPs. Source discovery must be accomplished through other means.
• Bidirectional shared trees (Bidir) build a shared tree between sources and receivers of a multicast group
but do not support switching over to a source tree when a new receiver is added to a group. Bidir mode
requires that you configure an RP. Bidir forwarding does not require source discovery because only the
shared tree is used.
You can combine the three modes to cover different ranges of group addresses. For more information, see
Configuring PIM and PIM6.
For more information about PIM sparse mode and shared distribution trees used by ASM and Bidir modes,
see RFC 4601.
For more information about PIM SSM mode, see RFC 3569.
For more information about PIM Bidir mode, see draft-ietf-pim-bidir-09.txt.
Hello Messages
The PIM process begins when the router establishes PIM neighbor adjacencies by sending PIM hello messages
to the multicast address 224.0.0.13. Hello messages are sent periodically at the interval of 30 seconds. When
all neighbors have replied, the PIM software chooses the router with the highest priority in each LAN segment
as the designated router (DR). The DR priority is based on a DR priority value in the PIM hello message. If
the DR priority value is not supplied by all routers, or the priorities match, the highest IP address is used to
elect the DR.
The hello message also contains a hold-time value, which is typically 3.5 times the hello interval. If this hold
time expires without a subsequent hello message from its neighbor, the device detects a PIM failure on that
link.
For added security, you can configure an MD5 hash value that the PIM software uses to authenticate PIM
hello messages with PIM neighbors.
For information about configuring hello message authentication, see Configuring PIM or PIM6 Sparse Mode.
Join-Prune Messages
When the DR receives an IGMP membership report message from a receiver for a new group or source, the
DR creates a tree to connect the receiver to the source by sending a PIM join message out the interface toward
the rendezvous point (ASM or Bidir mode) or source (SSM mode).The rendezvous point (RP) is the root of
a shared tree, which is used by all sources and hosts in the PIM domain in the ASM or the Bidir mode. SSM
does not use an RP but builds a shortest path tree (SPT) that is the lowest cost path between the source and
the receiver.
When the DR determines that the last host has left a group or source, it sends a PIM prune message to remove
the path from the distribution tree.
The routers forward the join or prune action hop by hop up the multicast distribution tree to create (join) or
tear down (prune) the path.
Note In this publication, the terms “PIM join message” and “PIM prune message” are used to simplify the action
taken when referring to the PIM join-prune message with only a join or prune action.
Join-prune messages are sent as quickly as possible by the software. You can filter the join-prune messages
by defining a routing policy. For information about configuring the join-prune message policy, see Configuring
PIM or PIM6 Sparse Mode.
State Refreshes
PIM requires that multicast entries are refreshed within a 3.5-minute timeout interval. The state refresh ensures
that traffic is delivered only to active listeners, and it keeps routers from using unnecessary resources.
To maintain the PIM state, the last-hop DR sends join-prune messages once per minute. State creation applies
to both (*, G) and (S, G) states as follows:
• (*, G) state creation example—An IGMP (*, G) report triggers the DR to send a (*, G) PIM join message
toward the RP.
• (S, G) state creation example—An IGMP (S, G) report triggers the DR to send an (S, G) PIM join message
toward the source.
If the state is not refreshed, the PIM software tears down the distribution tree by removing the forwarding
paths in the multicast outgoing interface list of the upstream routers.
Rendezvous Points
A rendezvous point (RP) is a router that you select in a multicast network domain that acts as a shared root
for a multicast shared tree. You can configure as many RPs as you like, and you can configure them to cover
different group ranges.
Static RP
You can statically configure an RP for a multicast group range. You must configure the address of the RP on
every router in the domain.
You can define static RPs for the following reasons:
• To configure routers with the Anycast-RP address
• To manually configure an RP on a device
For information about configuring static RPs, see Configuring Static RPs.
BSRs
The bootstrap router (BSR) ensures that all routers in the PIM domain have the same RP cache as the BSR.
You can configure the BSR to help you select an RP set from BSR candidate RPs. The function of the BSR
is to broadcast the RP set to all routers in the domain. You select one or more candidate BSRs to manage the
RPs in the domain. Only one candidate BSR is elected as the BSR for the domain.
Caution Do not configure both Auto-RP and BSR protocols in the same network.
This figure shows the BSR mechanism. Router A, the software-elected BSR, sends BSR messages out all
enabled interfaces (shown by the solid lines in the figure). The messages, which contain the RP set, are flooded
hop by hop to all routers in the network. Routers B and C are candidate RPs that send their candidate-RP
advertisements directly to the elected BSR (shown by the dashed lines in the figure).
The elected BSR receives candidate-RP messages from all the candidate RPs in the domain. The bootstrap
message sent by the BSR includes information about all of the candidate RPs. Each router uses a common
algorithm to select the same RP address for a given multicast group.
Figure 1: BSR Mechanism
In the RP selection process, the RP address with the best priority is determined by the software. If the priorities
match for two or more RP addresses, the software may use the RP hash in the selection process. Only one RP
address is assigned to a group.
By default, routers are not enabled to listen or forward BSR messages. You must enable the BSR listening
and forwarding feature so that the BSR mechanism can dynamically inform all routers in the PIM domain of
the RP set assigned to multicast group ranges.
For more information about bootstrap routers, see RFC 5059.
Note The BSR mechanism is a nonproprietary method of defining RPs that can be used with third-party routers.
For information about configuring BSRs and candidate RPs, see Configuring BSRs.
Auto-RP
Auto-RP is a Cisco protocol that was prior to the Internet standard bootstrap router mechanism. You configure
Auto-RP by selecting candidate mapping agents and RPs. Candidate RPs send their supported group range
in RP-Announce messages to the Cisco RP-Announce multicast group 224.0.1.39. An Auto-RP mapping
agent listens for RP-Announce messages from candidate RPs and forms a Group-to-RP mapping table. The
mapping agent multicasts the Group-to-RP mapping table in RP-Discovery messages to the Cisco RP-Discovery
multicast group 224.0.1.40.
Caution Do not configure both Auto-RP and BSR protocols in the same network.
This figure shows the Auto-RP mechanism. Periodically, the RP mapping agent multicasts the RP information
that it receives to the Cisco-RP-Discovery group 224.0.1.40 (shown by the solid lines in the figure).
By default, routers are not enabled to listen or forward Auto-RP messages. You must enable the Auto-RP
listening and forwarding feature so that the Auto-RP mechanism can dynamically inform routers in the PIM
domain of the group-to-RP mapping.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.1.1*, next Bootstrap message in: 00:00:12,
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.1.1, uptime: 00:04:27, expires: 00:02:00,
priority: 128, hash-length: 30
• If the BSR priorities are the same, the BSR with the highest BSR-candidate IP address is elected as the
BSR router for the PIM domain (see configuration example 2).
• Configuration example 2—Identical BSR-candidate priorities: In this example, the system elects
the device labeled N7K-2 as the BSR for the PIM domain because it has the highest BSR-candidate
IP address.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.2.1, uptime: 01:45:20, expires: 00:01:54,
priority: 64, hash-length: 30
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.2.1*, next Bootstrap message in: 00:00:30,
priority: 64, hash-length: 30
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
show ip pim rp
PIM RP Status Information for VRF "default"
BSR disabled
Auto-RP RPA: 192.168.2.1, next Discovery message in: 00:00:52
show ip pim rp
PIM RP Status Information for VRF "default"
BSR disabled
Auto-RP RPA: 192.168.2.1*, next Discovery message in: 00:00:47
BSR-RP vs. BSR-RP BSR-RP vs. Static RP Auto-RP vs. Auto- RP Auto-RP vs. Static RP
3. Highest RP IP address — — —
Note BSR-RP versus Auto-RP is not listed in this table because we recommend that you do not run both
simultaneously in the same network.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
ip pim bsr bsr-candidate loopback0
ip pim bsr rp-candidate loopback0 group-list 224.0.0.0/4
ip pim bsr forward listen
•
• When multiple BSR RP-candidates advertise the same group list (for example, 224.0.0.0/4), the system
elects the BSR RP-candidate with the highest priority (lowest numerical value) as the RP for any multicast
address specified in its group list (see configuration example 2).
• Configuration example 2—Identical group list with different RP priorities: In this example, the
system elects the device labeled N7K-1 as the RP for all multicast addresses specified in the
224.0.0.0/4 group list because it has the lowest RP-candidate priority. The device labeled N7K-2
has a default priority of 192.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.2.1, uptime: 00:09:14, expires: 00:01:37,
priority: 64, hash-length: 30
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.2.1*, next Bootstrap message in: 00:00:55,
priority: 64, hash-length: 30
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
• When multiple BSR RP-candidates advertise the same group list (for example, 224.0.0.0/4) and are
configured with the same BSR RP-candidate priority, the system elects the BSR RP-candidate with the
highest IP address as the RP for any multicast address specified in its group list (see configuration example
3).
• Configuration example 3—Identical group list with identical RP priorities: In this example, the
system elects the device labeled N7K-2 as the RP for all multicast addresses specified in the
224.0.0.0/4 group list because it has the highest RP-candidate IP address.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
• When a static RP and the BSR RP-candidate advertise the same group list (for example, 224.0.0.0/4),
the system elects the system with the highest RP IP address as the RP for any multicast addresses specified
in its group list (see configuration example 2).
• Configuration example 2—Identical RP group list: In this example, the system elects the device
labeled N7K-2 as the RP for all multicast addresses specified in the 224.0.0.0/4 group list because
it has the highest RP IP address.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
• Because you cannot configure a static RP and its default value is 0, the RP priority has no impact. You
can configure the BSR RP-candidate with a value between 0 and 255. The system elects the device with
the most specific group list. If both devices have the same group list, the system elects the device with
the highest RP IP address (see configuration example 3).
• Configuration example 3—Identical group list and identical RP priorities: In this example, the
system elects the device labeled N7K-2 as the RP for all multicast addresses specified in the
224.0.0.0/4 group list because it has the highest RP IP address. The system does not compare RP
priorities between BSR RPs and static RPs.
interface loopback0
ip address 192.168.1.1/32
ip pim sparse-mode
interface loopback0
ip address 192.168.2.1/32
ip pim sparse-mode
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.1.1*, next Bootstrap message in: 00:00:52,
priority: 64, hash-length: 30
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
show ip pim rp
PIM RP Status Information for VRF "default"
BSR: 192.168.1.1, uptime: 00:29:47, expires: 00:01:45,
priority: 64, hash-length: 30
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
Anycast-RP
Anycast-RP has two implementations: one uses Multicast Source Discovery Protocol (MSDP) and the other
is based onRFC 4610, Anycast-RP Using Protocol Independent Multicast (PIM). This section describes how
to configure PIM Anycast-RP.
You can use PIM Anycast-RP to assign a group of routers, called the Anycast-RP set, to a single RP address
that is configured on multiple routers. The set of routers that you configure as Anycast-RPs is called the
Anycast-RP set. This method is the only RP method that supports more than one RP per multicast group,
which allows you to load balance across all RPs in the set. The Anycast RP supports all multicast groups.
PIM register messages are sent to the closest RP and PIM join-prune messages are sent in the direction of the
closest RP as determined by the unicast routing protocols. If one of the RPs goes down, unicast routing ensures
these message will be sent in the direction of the next-closest RP.
You must configue PIM on the loopback interface that is used for the PIM Anycast RP.
For more information about PIM Anycast-RP, see RFC 4610.
For information about configuring Anycast-RPs, see Configuring a PIM Anycast-RP Set.
The DR continues to send PIM register messages to the RP until it receives a Register-Stop message from the
RP. The RP sends a Register-Stop message in either of the following cases:
• The RP has no receivers for the multicast group being transmitted.
• The RP has joined the SPT to the source but has not started receiving traffic from the source.
You can use the ip pim register-source command to configure the IP source address of register messages
when the IP source address of a register message is not a uniquely routed address to which the RP can send
packets. This situation might occur if the source address is filtered so that the packets sent to it are not forwarded
or if the source address is not unique to the network. In these cases, the replies sent from the RP to the source
address will fail to reach the DR, resulting in Protocol Independent Multicast sparse mode (PIM-SM) protocol
failures.
This example shows how to configure the IP source address of the register message to the loopback 3 interface
of a DR:
Note In Cisco NX-OS, PIM register messages are rate limited to avoid overwhelming the RP.
You can filter PIM register messages by defining a routing policy. For information about configuring the PIM
register message policy, see the Configuring Shared Trees Only for ASM.
Designated Routers
In PIM ASM and SSM modes, the software chooses a designated router (DR) from the routers on each network
segment. The DR is responsible for forwarding multicast data for specified groups and sources on that segment.
The DR for each LAN segment is determined as described in the Hello Messages.
In ASM mode, the DR is responsible for unicasting PIM register packets to the RP. When a DR receives an
IGMP membership report from a directly connected receiver, the shortest path is formed to the RP, which
may or may not go through the DR. The result is a shared tree that connects all sources transmitting on the
same multicast group to all receivers of that group.
In SSM mode, the DR triggers (*, G) or (S, G) PIM join messages toward the RP or the source. The path from
the receiver to the source is determined hop by hop. The source must be known to the receiver or the DR.
For information about configuring the DR priority, see the Configuring PIM or PIM6 Sparse Mode.
Designated Forwarders
In PIM Bidir mode, the software chooses a designated forwarder (DF) at RP discovery time from the routers
on each network segment. The DF is responsible for forwarding multicast data for specified groups on that
segment. The DF is elected based on the best metric from the network segment to the RP.
If the router receives a packet on the RPF interface toward the RP, the router forwards the packet out all
interfaces in the OIF-list. If a router receives a packet on an interface on which the router is the elected DF
for that LAN segment, the packet is forwarded out all interfaces in the OIF-list except the interface that it was
received on and also out the RPF interface toward the RP.
Note Cisco NX-OS does not support PIM Bidir mode on F2 modules.
Note Cisco NX-OS puts the RPF interface into the OIF-list of the MRIB, but not in the OIF-list of the MFIB.
Note Cisco NX-OS puts the RPF interface into the OIF-list of the MRIB, but not in the OIF-list of the MFIB.
In ASM mode, the DR that is connected to a receiver switches over from the shared tree to the shortest-path
tree (SPT) to a source unless you configure the PIM parameter to use shared trees only. For information about
configuring the use of shared trees only, see the Configuring Shared Trees Only for ASM.
During the switchover, messages on the SPT and shared tree may overlap. These messages are different. The
shared tree messages are propagated upstream toward the RP, while SPT messages go toward the source.
For information about SPT switchovers, see the “Last-Hop Switchover” to the SPT section in RFC 4601.
ECMP Multicast Load Splitting Based on Source Group and Next-Hop Address
Overview
The Advanced Multicast Multipath Support feature adds support for Equal Cost Multipath (ECMP) multicast
load splitting based on source, group, and next-hop address. This feature enables multicast traffic from devices
that send many streams to groups or that broadcast many channels, such as IPTV servers or MPEG video
servers, to be more effectively load split across equal-cost paths.
Configuring ECMP multicast load splitting based on source, group, and next-hop address enables a more
complex hash, the next-hop-based S-G-hash algorithm, which is based on source, group, and next-hop address.
The next-hop-based S-G-hash algorithm is predictable because no randomization is used in calculating the
hash value. Unlike the S-hash and basic S-G-hash algorithms, the hash mechanism used by the next-hop-based
S-G-hash algorithm is not subject to polarization.
Note The next-hop-based S-G-hash algorithm in IPv4 multicast is the same algorithm used in IPv6 ECMP multicast
load splitting, which, in turn, utilizes the same hash function used for PIM-SM bootstrap device (BSR).
The next-hop-based hash mechanism does not produce polarization and also maintains better RPF stability
when paths fail. These benefits come at the cost that the source or RP IP addresses cannot be used to reliably
predict and engineer the outcome of load splitting when the next-hop-based S-G-hash algorithm is used.
Because many customer networks have implemented equal-cost multipath topologies, the manual engineering
of load splitting, thus, is not a requirement in many cases. Rather, it is more of a requirement that the default
behavior of IP multicast be similar to IP unicast; that is, it is expected that IP multicast use multiple equal-cost
paths on a best-effort basis. Load splitting for IPv4 multicast, therefore, could not be enabled by default
because of the anomaly of polarization.
Note Load splitting for CEF unicast also uses a method that does not exhibit polarization and likewise cannot be
used to predict the results of load splitting or engineer the outcome of load splitting.
The next-hop-based hash function avoids polarization because it introduces the actual next-hop IP address of
PIM neighbors into the calculation, so the hash results are different for each device, and in effect, there is no
problem of polarization. In addition to avoiding polarization, this hash mechanism also increases stability of
the RPF paths chosen in the face of path failures. Consider a device with four equal-cost paths and a large
number of states that are load split across these paths. Suppose that one of these paths fails, leaving only three
available paths. With the hash mechanism used by the polarizing hash mechanisms (the hash mechanism used
by the S-hash and basic S-G-hash algorithms), the RPF paths of all states would likely reconverge and thus
change between those three paths, especially those paths that were already using one of those three paths.
These states, therefore, may unnecessarily change their RPF interface and next-hop neighbor. This problem
exists simply because the chosen path is determined by taking the total number of paths available into
consideration by the algorithm, so once a path changes, the RPF selection for all states is subject to change
too. For the next-hop-based hash mechanism, only the states that were using the changed path for RPF would
need to reconverge onto one of the three remaining paths. The states that were already using one of those
paths would not change. If the fourth path came back up, the states that initially used it would immediately
reconverge back to that path without affecting the other states.
Virtualization Support
A virtual device context (VDC) is a logical representation of a set of system resources. Within each VDC,
multiple virtual routing and forwarding (VRF) instances can be defined. For each VRF in a VDC in the system,
independent multicast system resources are maintained, including the MRIB and M6RIB.
You can use the PIM and PIM6 show commands with a VRF argument to provide a context for the information
displayed. The default VRF is used if no VRF argument is supplied.
For information about configuring VDCs, see the Cisco Nexus 7000 Series NX-OS Virtual Device Context
Configuration Guide.
For information about configuring VRFs, see the Cisco Nexus 7000 Series NX-OS Unicast Routing
Configuration Guide.
Generation ID (GenID) value (defined in RFC 4601) as a mechanism to trigger adjacent PIM neighbors on
an interface to send PIM join messages for all (*, G) and (S, G) states that use that interface as a reverse path
forwarding (RPF) interface. This mechanism enables PIM neighbors to immediately reestablish those states
on the newly active RP.
Note PIM neighbors that are not compliant with RFC 4601 and are unable to process GenID differences in PIM
hello messages will ignore the GenIDs.
The mechanics of the support for Graceful Restart PIM feature are as follows:
• In steady state, PIM neighbors exchange periodic PIM hello messages.
• An active RP receives PIM joins periodically to refresh multicast-route (mroute) states.
• When an active RP fails, the standby RP takes over to become the new active RP.
• The new active RP then modifies the Generation ID (GenID) value and sends the new GenID in PIM
hello messages to adjacent PIM neighbors.
• Adjacent PIM neighbors that receive PIM hello messages on an interface with a new GenID send graceful
restart PIM for all (*, G) and (S, G) mroutes that use that interfaces as an RPF interface.
• Those mroute states are then immediately reestablished on the newly active RP.
Caution The default PIM hello hold-time interval is 3.5 times the PIM hello period. Multicast High Availability (HA)
operations may not function as per design if you configure PIM hello interval with a value lower than the
default value of 30 seconds.
RFCs
RFC Title
RFC Protocol Independent Multicast - Sparse Mode (PIM-SM)
4601
Technical Assistance
Description Link
The Cisco Support website provides extensive online resources, including http://www.cisco.com/support
documentation and tools for troubleshooting and resolving technical issues
with Cisco products and technologies.
To receive security and technical information about your products, you can
subscribe to various services, such as the Product Alert Tool (accessed from
Field Notices), the Cisco Technical Services Newsletter, and Really Simple
Syndication (RSS) Feeds.
Access to most tools on the Cisco Support website requires a Cisco.com user
ID and password.
High Availability
For information about high availability, see the Cisco Nexus 7000 Series NX-OS High Availability and
Redundancy Guide.
• Tunnel interfaces do not support PIM until Cisco NX-OS Release 5.2(1). Beginning with Release 5.2(1),
you can configure multicast on generic routing encapsulation (GRE) tunnel interfaces.
• The Cisco NX-OS software does not support multicast on a GRE tunnel interface that is in a different
virtual routing and forwarding (VRF) instance than the VRF of the transport interface.
• Cisco NX-OS PIM and PIM6 do not interoperate with any version of PIM dense mode or PIM sparse
mode version 1.
• Do not configure both Auto-RP and BSR protocols in the same network.
• Configure candidate RP intervals to a minimum of 15 seconds.
• If a device is configured with a BSR policy that should prevent it from being elected as the BSR, the
device ignores the policy. This behavior results in the following undesirable conditions:
• If a device receives a BSM that is permitted by the policy, the device, which incorrectly elected
itself as the BSR, drops that BSM so that routers downstream fail to receive it. Downstream devices
correctly filter the BSM from the incorrect BSR so that these devices do not receive RP information.
• A BSM received by a BSR from a different device sends a new BSM but ensures that downstream
devices do not receive the correct BSM.
Note Aggressive PIM timers have been tested and can be supported in deployments
where PIM timers must be modified. However this testing was limited and
SSO/ISSU cannot be guaranteed in such a deployment. For more information,
see the Cisco Nexus 7000 Series NX-OS Verified Scalability Guide.
• Cisco NX-OS PIM and PIM6 do not support Bidir PIM or SSM on vPCs.
• PIM adjacency with a vPC leg or with a router behind a vPC is not supported.
• Beginning with Release 7.1, PIM Bidir mode is not supported for VDCs that have the F2 Module. Bidir
mode is supported on F2E or F2E with F3 modules on the same VDC.
• Use the ip igmp static-oif command on a Layer 3 interface of Cisco Nexus device to force the interface
getting populated as an Outgoing Interface List (OIL). Do not use the ip igmp join-group command for
this purpose.
• Multicast works on periodic joins/prune and depending on the topology and number of routers in the
network, S,G state takes time to expire.
• The sprase-mode must be enabled by using the ip pim sparse-mode command on loopback interfaces
that are configured as PIM rendezvous points.
• The interface that is used to configure a PIM RP (whether static, BSR or Auto-RP) must have ip [v6]
pim sparse-mode.
Default Settings
Table 1: Default PIM and PIM6 Parameters
Parameters Default
SSM multicast group range or policy 232.0.0.0/8 for IPv4 and FF3x::/96 for IPv6
BFD Disabled
Note Cisco NX-OS supports only PIM sparse mode version 2. In this publication, “PIM” refers to PIM sparse mode
version 2.
You can configure separate ranges of addresses in the PIM or PIM6 domain using the multicast distribution
modes described in the table below.
Note The CLI commands used to configure PIM or PIM6 differ as follows:
• Commands begin with ip pim for PIM and begin with ipv6 pim for PIM6
• Commands begin with show ip pim for PIM and begin with show ipv6 pim for PIM6.
Note If you are familiar with the Cisco IOS CLI, be aware that the Cisco NX-OS commands for this feature might
differ from the Cisco IOS commands that you would use.
Procedure
Parameter Description
Parameter Description
Bidir RP limit Configures the number of Bidir RPs that you can
configure for IPv4 and IPv6. The maximum number
of Bidir RPs supported per VRF for PIM and PIM6
combined cannot exceed 8. Values range from 0 to 8.
The default is 6 for IPv4 and 2 for IPv6.
Register rate limit Configures the IPv4 or IPv6 register rate limit in
packets per second. The range is from 1 to 65,535.
The default is no limit.
Initial holddown period Configures the IPv4 or IPv6 initial holddown period
in seconds. This holddown period is the time it takes
for the MRIB to come up initially. If you want faster
convergence, enter a lower value. The range is from
90 to 210. Specify 0 to disable the holddown period.
The default is 210.
Designated router priority Sets the designated router (DR) priority that is
advertised in PIM hello messages on this interface.
On a multiaccess network with multiple PIM-enabled
routers, the router with the highest DR priority is
elected as the DR router. If the priorities match, the
software elects the DR with the highest IP address.
The DR originates PIM register messages for the
directly connected multicast sources and sends PIM
join messages toward the rendezvous point (RP) for
directly connected receivers. Values range from 1 to
4294967295. The default is 1.
Parameter Description
1
To configure route-map policies, see the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration
Guide.
Procedure
Step 2 ip pim auto-rp {listen [forward] forward (Optional) Enables listening or forwarding of
[listen]} Auto-RP messages. The default is disabled,
which means that the software does not listen
Example:
to or forward Auto-RP messages.
switch(config)# ip pim auto-rp listen
Step 3 ip pim bsr {listen [forward] forward (Optional) Enables listening or forwarding of
[listen]} Auto-RP messages. The default is disabled,
which means that the software does not listen
Example:
to or forward Auto-RP messages.
switch(config)# ip pim bsr forward
Step 4 show ip pim rp [ip-prefix] [forward | vrf (Optional) Enables listening or forwarding of
[vrf-name | all] Auto-RP messages. The default is disabled,
which means that the software does not listen
Example:
to or forward Auto-RP messages.
switch(config)# show ip pim rp
Step 5 ip pim bidir-rp-limit limit (Optional) Specifies the number of Bidir RPs
that you can configure for IPv4. The maximum
Example:
number of Bidir RPs supported per VRF for
switch(config)# ip pim bidir-rp-limit PIM and PIM6 combined cannot exceed 8.
4
Values range from 0 to 8. The default is 6.
Step 6 ip pim register-rate-limit rate (Optional) Configures the rate limit in packets
per second. The range is from 1 to 65,535. The
Example:
default is no limit.
switch(config)# ip pim
register-rate-limit 1000
Step 7 [ip | ipv4] routing multicast holddown (Optional) Configures the initial holddown
holddown-period period in seconds. The range is from 90 to 210.
Specify 0 to disable the holddown period. The
Example:
default is 210.
switch(config)# ip routing multicast
holddown 100
Step 11 ip pim dr-priority priority (Optional) Sets the designated router (DR)
priority that is advertised in PIM hello
Example:
messages. Values range from 1 to 4294967295.
switch(config-if)# ip pim dr-priority The default is 1.
192
Step 16 show ip pim interface [interface | brief] [vrf (Optional) Displays PIM interface information.
[vrf-name | all]
Example:
switch(config-if)# show ip pim interface
Procedure
Step 4 ipv6 pim bidir-rp-limit limit (Optional) Specifies the number of Bidir RPs
that you can configure for IPv6. The maximum
Example:
number of Bidir RPs supported per VRF for
switch(config)# ipv6 pim bidir-rp-limit PIM and PIM6 combined cannot exceed 8.
4
Values range from 0 to 8. The default is 2.
Step 5 ipv6 pim register-rate-limit rate (Optional) Configures the rate limit in packets
per second. The range is from 1 to 65,535. The
Example:
default is no limit.
switch(config)# ipv6 pim
register-rate-limit 1000
Step 6 ipv6 routing multicast holddown (Optional) Configures the initial holddown
holddown-period period in seconds. The range is from 90 to 210.
Specify 0 to disable the holddown period. The
Example:
default is 210.
switch(config)# ipv6 routing multicast
holddown 100
Step 9 ipv6 pim sparse-mode Enables PIM sparse mode on this interface.
The default is disabled.
Example:
switch(config-if)# ipv6 pim sparse-mode
Step 10 ipv6 pim dr-priority priority (Optional) Sets the designated router (DR)
priority that is advertised in PIM6 hello
Example:
messages. Values range from 1 to 4294967295.
switch(config-if)# ipv6 pim dr-priority The default is 1.
192
Step 13 ipv6 pim neighbor-policy policy-name (Optional) Configures which PIM6 neighbors
to become adjacent to based on a route-map
Example:
policy with the match ipv6 address
switch(config-if)# ip pim border command. The policy name can be up to 63
characters. The default is to become adjacent
with all PIM6 neighbors.
Note We recommend that you should
configure this feature only if you
are an experienced network
administrator.
Step 14 show ipv6 pim interface [interface | brief ] (Optional) Displays PIM6 interface
[vrfvrf-name |all] information.
Example:
switch(config-if)# show ipv6 pim
interface
IGMP Querier
IGMP Querier Overview
The IGMP Querier feature supports the sending of Internet Group Management Protocol (IGMP) queries
from a router only if the router is a multicast (PIM)-enabled) router. IGMP router functionality will be enabled
only when PIM is enabled on the interface. IGMP router functionality will be disabled when PIM is disabled
on the interface. If IGMP router functionality is enabled and PIM is disabled subsequently, then the router
functionality will be disabled.
Procedure
Step 2 interface type number Specifies an interface type and number, and
places the device in interface configuration
Example:
mode.
switch(config)# interface Ethernet 0/0
switch(config-if)# exit
Membership count: 1
.
.
Note Bidir mode is not supported for vPCs. For more information about vPCs, see the Cisco Nexus 7000 Series
NX-OS Interfaces Configuration Guide.
Note We recommend that the RP address uses the loopback interface and also the interface with the RP address
must have ip pim sparse-mode enabled.
You can specify a route-map policy name that lists the group prefixes to use with the match ip multicast
command.
Beginning with Cisco NX-OS Release 5.1(3), the ip pim rp-address command has been enhanced with the
following functionalities:
• Added the prefix-list method of configuration in addition to existing route-map method.
• Added support for policy actions (route-map or prefix-list).
Note Cisco NX-OS always uses the longest-match prefix to find the RP. So, the behavior
is the same irrespective of the position of the group prefix in the route map or in
the prefix list.
The following example configuration produces the same output using Cisco NX-OS (231.1.1.0/24 is always
denied irrespective of the sequence number):
This behavior differs from Cisco IOS. See the Cisco Nexus 7000 Series NX-OS Multicast Routing Command
Reference, behavior for more samples for the ip pim rp-address command.
Procedure
Step 2 ipv6 pim rp-address rp-address [group-list Configures a PIM6 static RP address for a
ipv6-prefix | route-map policy-name] [bidir] multicast group range. You can specify a
route-map policy name that lists the group
Example:
prefixes to use with the match ip multicast
switch(config)# ip pim rp-address command. The mode is ASM unless you specify
192.0.2.33 group-list 224.0.0.0/9
the bidir keyword. The default group range is
Example: ff00::0/8.
switch(config)# ip pim rp-address
192.0.2.34 group-list 224.128.0.0/9 bidir
Example 1 configures PIM6 ASM mode for the
specified group range.
Example 2 configures PIM6 Bidir mode for the
specified group range.
Step 3 show ip pim group-range ipv6-prefix| vrf (Optional) Displays PIM6 RP information,
vrf-name all including BSR listen and forward states.
Example:
switch(config)# show ip pim group-range
Procedure
Step 2 ipv6 pim rp-address rp-address [ group-list Configures a PIM6 static RP address for a
ipv6-prefix | route-map policy-nsmr ] [ bidir] multicast group range. You can specify a
route-map policy name that lists the group
Example:
prefixes to use with the match ip multicast
Step 3 show ipv6 pim rp ipv6-prefix|vrfvrf-nameall (Optional) Displays PIM6 modes and group
ranges.
Example:
switch(config)# show ipv6 pim group-range
Step 4 copy running-config startup-config (Optional) Displays PIM6 modes and group
ranges.
Example:
switch(config)# show ipv6 pim group-range
Configuring BSRs
You configure BSRs by selecting candidate BSRs and RPs.
Caution Do not configure both Auto-RP and BSR protocols in the same network.
You can configure a candidate BSR with the arguments described on the Table below.
Argument Description
You can configure a candidate RP with the arguments and keywords described on this Table.
route-map policy-name Route-map policy name that defines the group prefixes
where this feature is applied.
Tip You should choose the candidate BSRs and candidate RPs that have good connectivity to all parts of the PIM
domain.
You can configure the same router to be both a BSR and a candidate RP. In a domain with many routers, you
can select multiple candidate BSRs and RPs to automatically fail over to alternates if a BSR or an RP fails.
To configure candidate BSRs and RPs, follow these steps:
1. Configure whether each router in the PIM domain should listen to and forward BSR messages. A router
configured as either a candidate RP or a candidate BSR automatically listens to and forwards all bootstrap
router protocol messages, unless an interface is configured with the domain border feature. For more
information, see the Configuring PIM or PIM6 Sparse Mode.
2. Select the routers to act as candidate BSRs and RPs.
3. Configure each candidate BSR and candidate RP as described in this section.
Procedure
Step 2 ip pim bsr listen forward listen|forward | Configures listen and forward.
forward|listen
Ensure that you have entered this command in
Example: each VRF on the remote PE.
switch(config)# ip pim bsr listen forward
Step 3 ip pim bsr[bsr-candidate ] interface [hash-len Configures a candidate bootstrap router (BSR).
hash-length ] [ priorty priority ] The source IP address used in a bootstrap
message is the IP address of the interface. The
Example:
hash length ranges from 0 to 32 and has a
switch(config)# ip pim bsr-candidate default of 30. The priority ranges from 0 to 255
ethernet 2/1 hash-len 24
and has a default of 64.
Step 4 ip pim sparse-mode Enables PIM sparse mode on this interface. The
default is disabled.
Example:
switch(config)# ip pim sparse-mode
Step 5 ip [ bsr] rp-candidate interface group-list (Optional) Specifies the number of Bidir RPs
ip-prefix route-map policy-name priority that you can configure for IPv6. The maximum
priority interval interval bidir number of Bidir RPs supported per VRF for
PIM and PIM6 combined cannot exceed 8.
Example:
Values range from 0 to 8. The default is 2.
switch(config)# ip pim rp-candidate
ethernet 2/1 group-list 239.0.0.0/24 Configures a candidate RP for BSR. The
priority ranges from 0, the highest priority, to
Example:
65,535 and has a default of 192. The interval
switch(config)# ip pim rp-candidate
ranges from 1 to 65,535 seconds and has a
ethernet 2/1 group-list 239.0.0.0/24
bidir default of 60.
Note We recommend that you configure
the candidate RP interval to a
minimum of 15 seconds.
Step 6 show ip pim group-range ip-prefix vrf (Optional) Displays PIM modes and group
vrf-name all ranges.
Example:
Procedure
Step 2 ip pim [bsr] bsr-candidate | interface [ Configures a candidate bootstrap router (BSR).
hash-len hash-length priority priority] The source IP address used in a bootstrap
message is the IP address of the interface. The
Example:
hash length ranges from 0 to 128 and has a
switch(config)# ipv6 pim bsr-candidate default of 126. The priority ranges from 0, the
ethernet 2/1 hash-len 24 priority 192
lowest priority, to 255 and has a default of 64.
Step 3 ipv6 [ bsr] rp-candidate interface group-list Configures a candidate RP for BSR. The
ipv6-prefix [ route-map policy-name] priority priority ranges from 0, the highest priority, to
priority interval interval bidir ] 65,535 and has a default of 192. The interval
ranges from 1 to 65,535 seconds and has a
Example:
default of 60.
switch(config)# ipv6 pim rp-candidate
ethernet 2/1 group-list Example 1 configures an ASM candidate RP.
ff1e:abcd:def1::0/24
Example 2 configures a Bidir candidate RP.
Example:
switch(config)# ipv6 pim rp-candidate
ethernet 2/1 group-list
ff1e:abcd:def2::0/24 bidir
Step 4 show ipv6 pim group-range ipv6-prefix vrf (Optional) Displays PIM6 modes and group
vrf-name all ranges.
Example:
switch(config)# show ipv6 pim group-range
Configuring Auto-RP
You can configure Auto-RP by selecting candidate mapping agents and RPs. You can configure the same
router to be both a mapping agent and a candidate RP.
Caution Do not configure both Auto-RP and BSR protocols in the same network.
You can configure an Auto-RP mapping agent with the arguments described on this Table.
Argument Description
If you configure multiple Auto-RP mapping agents, only one is elected as the mapping agent for the domain.
The elected mapping agent ensures that all candidate RP messages are sent out. All mapping agents receive
the candidate RP messages and advertise the same RP cache in their RP-discovery messages.
You can configure a candidate RP with the arguments and keywords described on this Table.
route-map policy-name Route-map policy name that defines the group prefixes
where this feature is applied.
Tip You should choose mapping agents and candidate RPs that have good connectivity to all parts of the PIM
domain.
To configure Auto-RP mapping agents and candidate RPs, follow these steps:
1. For each router in the PIM domain, configure whether that router should listen and forward Auto-RP
messages. A router configured as either a candidate RP or an Auto-RP mapping agent will automatically
listen to and forward all Auto-RP protocol messages, unless an interface is configured with the domain
border feature. For more information, see the Configuring PIM or PIM6 Sparse Mode.
2. Select the routers to act as mapping agents and candidate RPs.
3. Configure each mapping agent and candidate RP as described in this section.
4. Configure Auto-RP message filtering. See Configuring Message Filtering.
Ensure that you have installed the Enterprise Services license and enabled PIM or PIM6.
Procedure
Step 4 ip pim sparse-mode Enables PIM sparse mode on the interface. The
default is disabled.
Example:
switch(config)# ip pim sparse-mode
Step 5 show ip pim group-range lip-prefix ] vrf (Optional) Displays PIM modes and group
vrf-name | all ] ranges.
Example:
switch(config)# show ip pim group-range
Procedure
Step 6 ip pim anycast-rp anycast-rp-address Configures a PIM Anycast-RP peer address for
anycast-rp-peer-address the specified Anycast-RP address. Each
command with the same Anycast-RP address
Example:
forms an Anycast-RP set. The IP addresses of
switch(config)# ip pim anycast-rp RPs are used for communication with RPs in
192.0.2.3 192.0.2.31
the set.
Procedure
Step 6 ipv6 pim anycast-rp anycast-rp-address Configures a PIM6 Anycast-RP peer address
anycast-rp-peer-address for the specified Anycast-RP address. Each
command with the same Anycast-RP address
Example:
forms an Anycast-RP set. The IP addresses of
switch(config)# ipv6 pim anycast-rp RPs are used for communication with RPs in
2001:0db8:0:abcd::3 2001:0db8:0:abcd::31
the set.
Note The Cisco NX-OS software does not support the shared-tree feature on vPCs. For more information about
vPCs, see the Cisco Nexus 7000 Series NX-OS Interfaces Configuration Guide, Release 6.x
The default is disabled, which means that the software can switch over to source trees.
Note In ASM mode, only the last-hop router switches from the shared tree to the SPT.
Procedure
Step 2 ip pim use-shared-tree-only group-list Builds only shared trees, which means that the
policy-name software never switches over from the shared
tree to the SPT. You specify a route-map policy
Example:
name that lists the groups to use with the match
switch(config)# ip pim ip multicast command. By default, the software
use-shared-tree-only group-list
my_group_policy triggers a PIM (S, G) join toward the source
when it receives multicast packets for a source
for which it has the (*, G) state.
Procedure
Step 2 ipv6 pim use-shared-tree-only group-list Builds only shared trees, which means that the
policy-name software never switches over from the shared
tree to the SPT. You specify a route-map policy
Example:
name that lists the groups to use with the match
switch(config)# ipv6 pim ipv6 multicast command. By default, the
use-shared-tree-only group-list
my_group_policy software triggers a PIM (S, G) join toward the
source when it receives multicast packets for a
source for which it has the (*, G) state.
Step 3 show ipv6 pim group-range [ip-prefix] vrf (Optional) Displays PIM6 modes and group
vrf-name | all ranges.
Example:
switch(config)# show ipv6 pim group-range
Configuring SSM
Source-Specific Multicast (SSM) is a multicast distribution mode where the software on the DR connected
to a receiver that is requesting data for a multicast source builds a shortest path tree (SPT) to that source.
On an IPv4 network, a host can request multicast data for a specific source only if it is running IGMPv3 and
the DR for that host is running IGMPv3. You will usually enable IGMPv3 when you configure an interface
for PIM in the SSM mode. For hosts running IGMPv1 or IGMPv2, you can configure a group to source
mapping using SSM translation. For more information, see Configuring IGMP and Configuring MLD.
You can configure the group range that is used by SSM by specifying values on the command line. By default,
the SSM group range for PIM is 232.0.0.0/8 and for PIM6 is FF3x/96.
You can specify a route-map policy name that lists the group prefixes to use with the match ip multicast
command.
Note If you want to use the default SSM group range, you do not need to configure the SSM group range.
Procedure
Step 2 [no] ip pim ssm range { ip-prefix | none | Configures up to four group ranges to be treated
route-mappolicy-name } in SSM mode. You can specify a route-map
policy name that lists the group prefixes to use
Example:
with the match ip multicast command. The
switch(config)# ip pim ssm range default range is 232.0.0.0/8. If the keyword
239.128.1.0/24
none is specified, all group ranges are removed.
Example:
The no option removes the specified prefix from
switch(config)# no ip pim ssm range none
the SSM range, or removes the route-map
policy. If the keyword none is specified, resets
the SSM range to the default of 232.0.0.0/8.
Step 3 show ip pim group-range [ ip-prefix ] vrf (Optional) Displays PIM mode and group
vrf-name | all ] ranges.
Example:
switch(config)# show ip pim group-range
Procedure
Step 2 [no] ipv6 pim ssm range { ipv6-prefix | none Configures up to four group ranges to be treated
| route-map policy-name } in SSM mode. You can specify a route-map
policy name that lists the group prefixes to use
Example:
with the match ip multicast command. If the
switch(config)# ipv6 pim ssm range keyword none is specified, all group ranges are
FF30::0/32
removed. The default range is FF3x/96.
Step 3 show ipv6 pim group-range [ ipv6-prefix ] (Optional) Displays PIM6 modes and group
vrfvrf-name | all ] ranges.
Procedure
Step 2 ip mroute{ip-addr mask | ip-prefix} {next-hop Configures an RPF route for multicast for use
| nh-prefix | interface} [route-preference] [vrf in RPF calculations. Route preference values
vrf-name] range from 1 to 255. The default preference is
1.
Example:
switch(config)# ip mroute 192.0.2.33/1
224.0.0.0/1
Step 3 show ip static-route [multicast] [vrf (Optional) Displays configured static routes.
vrf-name]
Example:
switch(config)# show ip static-route
multicast
Procedure
Step 3 clear ip mroute * vrf vrf-name Clears multipath routes and activates multicast
multipath suppression.
Example:
switch(config)# clear ip mroute *
Enabling ECMP Multicast Load Splitting Based on Source Group and Next-Hop
Address
Perform this task to enable ECMP multicast load splitting of multicast traffic based on source, group, and
next-hop address (using the next-hop-based S-G-hash algorithm) to take advantage of multiple paths through
the network. The next-hop-based S-G-hash algorithm is predictable because no randomization is used in
calculating the hash value. Unlike the S-hash and basic S-G-hash algorithms, the hash mechanism used by
the next-hop-based S-G-hash algorithm is not subject to polarization.
The next-hop-based S-G-hash algorithm provides more flexible support for ECMP multicast load splitting
than S-hash algorithm and eliminates the polarization problem. Using the next-hop-based S-G-hash algorithm
for ECMP multicast load splitting enables multicast traffic from devices that send many streams to groups or
that broadcast many channels, such as IPTV servers or MPEG video servers, to be more effectively load split
across equal-cost paths.
Procedure
Step 2 ip multicast multipath s-g-hash Enables ECMP multicast load splitting based
next-hop-based on source, group, and next-hop-address using
the next-hop-based S-G-hash algorithm.
Example:
• Because this command changes the way
switch(config)# ip multicast multipath an RPF neighbor is selected, it must be
s-g-hash next-hop-based configured consistently on all routers in a
redundant topology to avoid looping.
switch(config)# end
Step 6 show ip route ip-address (Optional) Displays the current state of the IP
routing table.
Example:
• Use this command to verify that there
switch# show ip route 10.1.1.2 multiple paths available to a source or RP
for ECMP multicast load splitting.
• For the ip-address argument, enter the IP
address of a source to validate that there
are multiple paths available to the source
(for shortest path trees) or the IP address
of an RP to validate that there are multiple
paths available to the RP (for shared trees).
Example: Enabling ECMP Multicast Load Splitting Based on Source Group and Next-Hop Address
The following example shows how to enable ECMP multicast load splitting on a router based on source,
group, and next-hop address using the next-hop-based S-G-hash algorithm:
Note Only the match ipv6 multicast command has an effect in the route map.
Ensure that you have installed the Enterprise Services license and enabled PIM or PIM6.
Procedure
Example:
switch(config)# route-map Bidir_only
permit 10
switch(config-route-map)#
Step 3 match ip multicast {{rp ip-address [rp-type Matches the group, RP, and RP type specified.
rp-type]} {{group-range {gadrr_start to You can specify the RP type (ASM or Bidir).
gadrr_end} | {group ip-prefix}} {source This configuration method requires the group
source-ip-address} and RP specified as shown in the examples.
Example: Note BSR RP, auto-RP, and static RP
switch(config-route-map)# match ip cannot use the group-range
multicast group 224.0.0.0/4 rp 0.0.0.0/0 keyword. This command allows both
rp-type ASM permit or deny. Some match mask
Example: commands do not allow permit or
deny.
switch(config-route-map)# match ip
multicast group 224.0.0.0/4 rp 0.0.0.0/0
rp-type Bdir
Procedure
Example:
switch(config)# route-map Bidir_only
permit 10
switch(config-route-map)#
Step 3 match ipv6 multicast {{rp ip-address [rp-type Matches the group, RP, and RP type specified.
rp-type]} {{group-range {gadrr_start to You can specify the RP type (ASM or Bidir).
gadrr_end} | {group ip-prefix}} {source This configuration method requires the group
source-ip-address} and RP specified as shown in the examples.
Example: Note BSR RP, auto-RP, and static RP
switch(config-route-map)# match ip cannot use the group-range
multicast group 224.0.0.0/4 rp 0.0.0.0/0 keyword. This command allows both
rp-type ASM permit or deny. Some match mask
Example: commands do not allow permit or
deny.
switch(config-route-map)# match ip
multicast group 224.0.0.0/4 rp 0.0.0.0/0
rp-type Bdir
Note Prefix matches in the rp-candidate-policy must be exact relative to what the c-rp is advertising. Subset matches
are not possible.
You can configure filtering of the PIM and PIM6 messages described in the table below.
Log Neighbor changes Enables syslog messages that list the neighbor state
changes to be generated. The default is disabled.
Route maps as containers can be use for the following commands, where route-map action (permit or deny)
is ignored:
• ip pim rp-address route map can use only G
• ip pim ssm-range route map can use only G
• ip igmp static-oif route map can use (S,G), (*,G), (S,G-range), (*,G-range)
• ip igmp join-group route map can use (S,G), (*,G), (S,G-range, (*, G-range)
Procedure
Procedure
Step 3 ipv6 pim register-policy policy-name (Optional) Enables PIM register messages to
be filtered based on a route-map policy. You
Example:
can specify group or group and source addresses
switch(config)# ipv6 pim register-policy with the match ipv6 multicast command. The
my_register_policy
default is disabled.
Step 4 ipv6 pim bsr rp-candidate-policy policy-name (Optional) Enables BSR candidate RP messages
to be filtered by the router based on a route-map
Example:
policy where you can specify the RP and group
switch(config)# ipv6 pim bsr addresses and whether the type is Bidir or ASM
rp-candidate-policy
my_bsr_rp_candidate_policy with the match ipv6 multicast command. This
command can be used on routers that are
eligible for BSR election. The default is no
filtering of BSR messages.
Step 5 ipv6 pim bsr bsr-policy policy-name (Optional) Enables BSR messages to be filtered
by the BSR client routers based on a route-map
Example:
policy where you can specify BSR source
switch(config)# ipv6 pim bsr bsr-policy addresses with the match ipv6 multicast
my_bsr_policy
command. This command can be used on client
routers that listen to BSR messages. The default
is no filtering of BSR messages.
Step 7 ipv6 pim jp-policy policy-name[in | out] (Optional) Enables join-prune messages to be
filtered based on a route-map policy where you
Example:
can specify group, group and source, or group
switch(config-if)# ipv6 pim jp-policy and RP addresses with thematch ipv6 multicast
my_jp_policy
command. The default is no filtering of
join-prune messages.
Beginning with Cisco NX-OS Release 4.2(3),
this command filters messages in both incoming
and outgoing directions.
Procedure
Procedure
Step 3 ipv6 pim flush-routes Removes routes when the PIM6 process is
restarted. By default, routes are not flushed.
Example:
switch(config)# ipv6 pim flush-routes
Note You can configure BFD for PIM by either VRF or by interface.
Procedure
Procedure
Step 3 config tip pim bfd instance Enables BFD on the specified interfaces. You
can enable or disable BFD on RIM interfaces
Example:
irrespective of whether BFD is enabled on the
switch(config-if)# ip pim bfd instance VRF.
Command Description
show ip [v6] mroute {source group | group [source]} Displays the IP or IPv6 multicast routing table.
[vrf vrf-name | all]
show ip [v6] pim df [vrf vrf-name | all] Displays the designated forwarder (DF) information
for each RP by interface.
show ip [v6] pim group-range [vrf vrf-name | all] Displays the learned or configured group ranges and
modes. For similar information, see also the show ip
pim rp command.
show ip [v6] pim interface [interface | brief] [vrf Displays information by the interface.
vrf-name | all]
show ip [v6] pim neighbor [vrf vrf-name | all] Displays neighbors by the interface.
show ip [v6] pim oif-list group [source] [vrf vrf-name Displays all the interfaces in the OIF-list.
| all]
show ip [v6] pim route {source group | group Displays information for each multicast route,
[source]} [vrf vrf-name | all] including interfaces on which a PIM join for that
(S, G) has been received.
show ip [v6] pim rp [vrf vrf-name | all] Displays rendezvous points (RPs) known to the
software, how they were learned, and their group
ranges. For similar information, see also the show ip
pim group-range command.
show ip [v6] pim rp-hash [vrf vrf-name | all] Displays the bootstrap router (BSR) RP hash
information. For information about the RP hash, see
RFC 5059.
show ip [v6] pim vrf [vrf-name | all] [detail] Displays per-VRF information.
For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series
NX-OS Multicast Routing Command Reference.
Displaying Statistics
You can display and clear PIM and PIM6 statistics by using the commands in this section.
Command Description
show ip [v6] pim policy statistics Displays policy statistics for Register, RP, and
join-prune message policies.
show ip [v6] pim statistics [vrf vrf-name | all] Displays global statistics. If PIM is in vPC mode,
displays vPC statistics.
For detailed information about the fields in the output from these commands, see the Cisco Nexus 7000 Series
NX-OS Multicast Routing Command Reference.
Command Description
ip [v6] pim interface statisticsinterface Clears counters for the specified interface.
clear ip [v6] pim policy statistics Clears policy counters for Register, RP, and join-prune
message policies.
clear ip [v6] pim statistics [vrf-name | all] Clears global counters handled by the PIM process.
clear ip mroute statistics {* | Clears software and hardware statistics for all or
ipv4-grp-addr/prefix-length} [vrf {vrf-name | all specific multicast routes or multicast prefixes.
| default | management}]
Note Use the show ip mroute command to
display the statistics for multicast route and
prefixes.
Rates:
Description In PPS In Bps Out PPS Out Bps
-----------------------------------------------------------------------------------
Interface In Hi (port 1) 0 0 0 0
Interface In Lo (port 1) 0 0 0 0
Interface In Hi (port 2) 0 0 0 0
Interface In Lo (port 2) 0 0 0 0
Interface Out Hi (port 1) 0 0 0 0
Interface Out Lo (port 1) 0 0 0 0
Interface Out Hi (port 2) 0 0 0 0
Interface Out Lo (port 2) 0 0 0 0
Fabric In Hi 0 0 0 0
Fabric In Lo 0 0 0 0
Fabric Out Hi 0 0 0 0
Fabric Out Lo 0 0 0 0
Fwding Engine Tx 0 0 0 0
Fwding Engine Rx 0 0 0 0
Fwding Engine Ucast Rx 0 0 0 0
Fwding Engine Mcast Rx 0 0 0 0
Fwding Engine Rx 0 0 0 0
Replication In Ucast 0 0 0 0
Replication Out Ucast 0 0 0 0
Replication In Mcast 0 0 0 0
Replication Out Mcast 0 0 0 0
Drop Counters:
Description Drops
---------------------------------------------------
Multicast/SPAN FIFO Drops 0
SPAN Rate Limiter Drops 0
Peak Rates:
Packets per second:
Description Peak PPS Date/Time
------------------------------------------------------------
Interface In (port 1) 0 yyyy/mm/dd hh:ss
Interface In (port 2) 0 yyyy/mm/dd hh:ss
Interface Out (port 1) 0 yyyy/mm/dd hh:ss
Interface Out (port 2) 0 yyyy/mm/dd hh:ss
Fabric In 0 yyyy/mm/dd hh:ss
Fabric Out 0 yyyy/mm/dd hh:ss
Replication In Ucast 0 yyyy/mm/dd hh:ss
Replication Out Ucast 0 yyyy/mm/dd hh:ss
Replication In Mcast 0 yyyy/mm/dd hh:ss
Replication Out Mcast 0 yyyy/mm/dd hh:ss
switch#
Note See the Multiple RPs Configured in a PIM Domain for more configuration examples.
This section describes how to configure PIM using different data distribution modes and RP selection methods.
switch# config t
switch(config)# interface ethernet 2/1
switch(config-if)# ip pim sparse-mode
2. Configure the parameters for IGMP that support SSM. See Configuring IGMP Usually, you configure
IGMPv3 on PIM interfaces to support SSM.
switch# config t
switch(config)# interface ethernet 2/1
switch(config-if)# ip igmp version 3
3. Configure the SSM range if you do not want to use the default range.
switch# config t
switch(config)# ip pim ssm range 239.128.1.0/24
switch# config t
switch(config)# ip pim log-neighbor-changes
config t
interface ethernet 2/1
ip pim sparse-mode
ip igmp version 3
exit
ip pim ssm range 239.128.1.0/24
ip pim log-neighbor-changes
switch# config t
switch(config)# interface ethernet 2/1
switch(config-if)# ip pim sparse-mode
2. Configure whether that router should listen and forward BSR messages
switch# config t
switch(config)# ip pim bsr forward listen
3. Configure the BSR parameters for each router that you want to act as a BSR.
switch# config t
switch(config)# ip pim bsr-candidate ethernet 2/1 hash-len 30
4. Configure the RP parameters for each router that you want to act as a candidate RP
switch# config t
switch(config)# ip pim rp-candidate ethernet 2/1 group-list 239.0.0.0/24
switch# config t
switch(config)# ip pim log-neighbor-changes
This example shows how to configure PIM ASM mode using the BSR mechanism and how to configure the
BSR and RP on the same router:
config t
interface ethernet 2/1
ip pim sparse-mode
exit
ip pim bsr forward listen
ip pim bsr-candidate ethernet 2/1 hash-len 30
ip pim rp-candidate ethernet 2/1 group-list 239.0.0.0/24
ip pim log-neighbor-changes
switch# config t
switch(config)# interface ethernet 2/1
switch(config-if)# ip pim sparse-mode
2. Configure whether that router should listen and forward Auto-RP messages.
switch# config t
switch(config)# ip pim auto-rp forward listen
3. Configure the mapping agent parameters for each router that you want to act as a mapping agent.
switch# config t
switch(config)# ip pim auto-rp mapping-agent ethernet 2/1
4. Configure the RP parameters for each router that you want to act as a candidate RP.
switch# config t
switch(config)# ip pim auto-rp rp-candidate ethernet 2/1 group-list 239.0.0.0/24 bidir
switch# config t
switch(config)# ip pim log-neighbor-changes
This example shows how to configure PIM Bidir mode using the Auto-RP mechanism and how to configure
the mapping agent and RP on the same router:
config t
interface ethernet 2/1
ip pim sparse-mode
exit
ip pim auto-rp listen
ip pim auto-rp forward
ip pim auto-rp mapping-agent ethernet 2/1
ip pim auto-rp rp-candidate ethernet 2/1 group-list 239.0.0.0/24 bidir
ip pim log-neighbor-changes
2. Configure the RP address that you configure on all routers in the Anycast-RP set.
switch# config t
switch(config)# interface loopback 0
switch(config-if)# ip address 192.0.2.3/32
3. Configure a loopback with an address to use in communication between routers in the Anycast-RP set for
each router that you want to be in the Anycast-RP set.
switch# config t
switch(config)# interface loopback 1
switch(config-if)# ip address 192.0.2.31/32
4. Configure the Anycast-RP parameters and repeat with the IP address of each Anycast-RP for each router
that you want to be in the Anycast-RP set. This example shows two Anycast-RPs.
switch# config t
switch(config)# ip pim anycast-rp 192.0.2.3 193.0.2.31
switch(config)# ip pim anycast-rp 192.0.2.3 193.0.2.32
This example shows how to configure PIM ASM mode using two Anycast-RPs:
config t
interface ethernet 2/1
ip pim sparse-mode
exit
interface loopback 0
ip address 192.0.2.3/32
exit
ip pim anycast-rp 192.0.2.3 192.0.2.31
ip pim anycast-rp 192.0.2.3 192.0.2.32
ip pim log-neighbor-changes
Output
dc3rtg-d2(config-if)# show ip pim rp
PIM RP Status Information for VRF "default"
BSR disabled
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
Related Documents
Related Topic Document Title
Configuring VRFs and Policy Based Routing Cisco Nexus 7000 Series NX-OS Unicast Routing
Configuration Guide
Standards
Standards Title
Support for Graceful Restart 6.2(2) Support for Graceful Restart protocol
PIM Independent Multicast (PIM) is a multicast
high availability (HA) enhancement that
improves the reconvergence of multicast
routes (mroutes) after a route processor (RP)
switchover. In the event of an RP switchover,
this feature uses the PIM-SM Generation ID
(GenID) value as a mechanism to trigger
adjacent PIM neighbors on an interface to
send PIM messages for all (*, G) and (S, G)
mroutes that use that interface as an RPF
interface, immediately reestablishing those
states on the newly active RP.
Support for the pim 5.2(1) Support for configuring the IP source address
register-source command. of register messages.
BFD support for PIM (IPv4) 5.0(2) BFD supported for PIM with IPv4.