Configuring Basic IP Multicast

IP multicast is a bandwidth-conserving technology that reduces traffic by delivering a single stream of information simultaneously to potentially thousands of corporate businesses and homes. Applications that take advantage of multicast include video conferencing, corporate communications, distance learning, and distribution of software, stock quotes, and news. This module describes the tasks used to configure basic IP multicast.

Prerequisites for Configuring Basic IP Multicast

  • To determine which of the tasks contained in this module you will have to perform, you must decide which Protocol Independent Multicast (PIM) mode will be used. This determination is based on the applications you intend to support on your network.

  • All access lists to be used with the tasks in this module should be configured prior to beginning the configuration task. For information about how to configure an access list, see the “Creating an IP Access List and Applying It to an Interface” module of the Security Configuration Guide: Access Control Lists guide.

Restrictions for Configuring Basic IP Multicast

HSRP/GLBP aware PIM is not supported.

Information About Configuring Basic IP Multicast

Auto-RP Overview

The Role of Auto-RP in a PIM Network

Auto-RP automates the distribution of group-to-rendezvous point (RP) mappings in a PIM network. To make Auto-RP work, a device must be designated as an RP mapping agent, which receives the RP announcement messages from the RPs and arbitrates conflicts. The RP mapping agent then sends the consistent group-to-RP mappings to all other devices.

Thus, all routers automatically discover which RP to use for the groups they support. The Internet Assigned Numbers Authority (IANA) has assigned two group addresses, 224.0.1.39 and 224.0.1.40, for Auto-RP.

The mapping agent receives announcements of intention to become the RP from Candidate-RPs. The mapping agent then announces the winner of the RP election. This announcement is made independently of the decisions by the other mapping agents.

IP Multicast Boundary

As shown in the figure, address scoping defines domain boundaries so that domains with RPs that have the same IP address do not leak into each other. Scoping is performed on the subnet boundaries within large domains and on the boundaries between the domain and the Internet.

Figure 1. Address Scoping at Boundaries

You can set up an administratively scoped boundary on an interface for multicast group addresses using the ip multicast boundary command with the access-list argument. A standard access list defines the range of addresses affected. When a boundary is set up, no multicast data packets are allowed to flow across the boundary from either direction. The boundary allows the same multicast group address to be reused in different administrative domains.

The Internet Assigned Numbers Authority (IANA) has designated the multicast address range 239.0.0.0 to 239.255.255.255 as the administratively scoped addresses. This range of addresses can be reused in domains administered by different organizations. They would be considered local, not globally unique.

You can configure the filter-autorp keyword to examine and filter Auto-RP discovery and announcement messages at the administratively scoped boundary. Any Auto-RP group range announcements from the Auto-RP packets that are denied by the boundary access control list (ACL) are removed. An Auto-RP group range announcement is permitted and passed by the boundary only if all addresses in the Auto-RP group range are permitted by the boundary ACL. If any address is not permitted, the entire group range is filtered and removed from the Auto-RP message before the Auto-RP message is forwarded.

Benefits of Auto-RP in a PIM Network

  • Auto-RP allows any change to the RP designation to be configured only on the devices that are RPs, not on the leaf routers.

  • Auto-RP offers the ability to scope the RP address within a domain.

BSR Overview

BSR Election and Functionality

PIM uses the BSR to discover and announce RP-set information for each group prefix to all the routers in a PIM domain. This is the same function performed by Auto-RP, but the BSR is part of the PIM Version 2 specification. The BSR mechanism interoperates with Auto-RP on Cisco routers.

To avoid a single point of failure, you can configure several candidate BSRs in a PIM domain. A BSR is elected among the candidate BSRs automatically; they use bootstrap messages to discover which BSR has the highest priority. This router then announces to all PIM routers in the PIM domain that it is the BSR.

Following the election of the BSR, candidate RPs use unicast to announce to the BSR their willingness to be the RP. The BSR advertises the entire group-to-RP mapping set to the router link local address 224.0.0.13. Unlike the RP mapping agent in Auto-RP, which is used by Auto-RP to select the RP, every router in the BSR network is responsible for selecting the RP.

BSR lacks the ability to scope RP advertisements; however, BSR is used when vendor interoperability or open standard adherence is a requirement.

BSR Border Interface

A border interface in a PIM sparse mode domain requires precautions to prevent exchange of certain traffic with a neighboring domain reachable through that interface, especially if that domain is also running PIM sparse mode. BSR and Auto-RP messages should not be exchanged between different domains, because routers in one domain may elect RPs in the other domain, resulting in protocol malfunction or loss of isolation between the domains. Configure a BSR border interface to prevent BSR messages from being sent or received through an interface.

Static RP Overview

If you are configuring PIM sparse mode, you must configure a PIM RP for a multicast group. An RP can either be configured statically in each device, or learned through a dynamic mechanism. This task explains how to statically configure an RP, as opposed to the router learning the RP through a dynamic mechanism such as Auto-RP.

PIM designated routers (DRs) forward data from directly connected multicast sources to the RP for distribution down the shared tree. Data is forwarded to the RP in one of two ways. It is encapsulated in register packets and unicast directly to the RP, or, if the RP has itself joined the source tree, it is multicast forwarded per the RPF forwarding algorithm. Last hop routers directly connected to receivers may, at their discretion, join themselves to the source tree and prune themselves from the shared tree.

A single RP can be configured for multiple groups that are defined by an access list. If no RP is configured for a group, the router treats the group as dense using the PIM sparse-dense mode techniques. (You can prevent this occurrence by configuring the no ip pim dm-fallback command.)

If dynamic and static group-to-RP mappings are used together and there is an RP address conflict, the RP address configured for a static group-to-RP mapping (with the ip pim rp-address override command) will take precedence.


Note

If the override keyword is not specified and there is RP address conflict, dynamic group-to-RP mappings will take precedence over static group-to-RP mappings.


SSM Overview

Source Specific Multicast (SSM). SSM is an extension of IP multicast where datagram traffic is forwarded to receivers from only those multicast sources that the receivers have explicitly joined. For multicast groups configured for SSM, only source-specific multicast distribution trees (not shared trees) are created.

SSM Components

Source Specific Multicast (SSM) is a datagram delivery model that best supports one-to-many applications, also known as broadcast applications. SSM is a core networking technology for the Cisco implementation of IP multicast solutions targeted for audio and video broadcast application environments and is described in RFC 3569. The following two components together support the implementation of SSM:

  • Protocol Independent Multicast source-specific mode (PIM-SSM)

  • Internet Group Management Protocol Version 3 (IGMPv3)

Protocol Independent Multicast (PIM) SSM, or PIM-SSM, is the routing protocol that supports the implementation of SSM and is derived from PIM sparse mode (PIM-SM). IGMP is the Internet Engineering Task Force (IETF) standards track protocol used for hosts to signal multicast group membership to routers. IGMP Version 3 supports source filtering, which is required for SSM. In order for SSM to run with IGMPv3, SSM must be supported in the device, the host where the application is running, and the application itself.

How SSM Differs from Internet Standard Multicast

The standard IP multicast infrastructure in the Internet and many enterprise intranets is based on the PIM-SM protocol and Multicast Source Discovery Protocol (MSDP). These protocols have proved to be reliable, extensive, and efficient. However, they are bound to the complexity and functionality limitations of the Internet Standard Multicast (ISM) service model. For example, with ISM, the network must maintain knowledge about which hosts in the network are actively sending multicast traffic. With SSM, this information is provided by receivers through the source addresses relayed to the last-hop devices by IGMPv3. SSM is an incremental response to the issues associated with ISM and is intended to coexist in the network with the protocols developed for ISM. In general, SSM provides IP multicast service for applications that utilize SSM.

ISM service is described in RFC 1112. This service consists of the delivery of IP datagrams from any source to a group of receivers called the multicast host group. The datagram traffic for the multicast host group consists of datagrams with an arbitrary IP unicast source address S and the multicast group address G as the IP destination address. Systems will receive this traffic by becoming members of the host group. Membership in a host group simply requires signaling the host group through IGMP Version 1, 2, or 3.

In SSM, delivery of datagrams is based on (S, G) channels. Traffic for one (S, G) channel consists of datagrams with an IP unicast source address S and the multicast group address G as the IP destination address. Systems will receive this traffic by becoming members of the (S, G) channel. In both SSM and ISM, no signaling is required to become a source. However, in SSM, receivers must subscribe or unsubscribe to (S, G) channels to receive or not receive traffic from specific sources. In other words, receivers can receive traffic only from (S, G) channels to which they are subscribed, whereas in ISM, receivers need not know the IP addresses of sources from which they receive their traffic. The proposed standard approach for channel subscription signaling utilizes IGMP INCLUDE mode membership reports, which are supported only in IGMP Version 3.

SSM can coexist with the ISM service by applying the SSM delivery model to a configured subset of the IP multicast group address range. The Internet Assigned Numbers Authority (IANA) has reserved the address range from 232.0.0.0 through 232.255.255.255 for SSM applications and protocols. The software allows SSM configuration for an arbitrary subset of the IP multicast address range from 224.0.0.0 through 239.255.255.255. When an SSM range is defined, an existing IP multicast receiver application will not receive any traffic when it tries to use addresses in the SSM range unless the application is modified to use explicit (S, G) channel subscription or is SSM-enabled.

SSM Operations

An established network in which IP multicast service is based on PIM-SM can support SSM services. SSM can also be deployed alone in a network without the full range of protocols that are required for interdomain PIM-SM. That is, SSM does not require an RP, so there is no need for an RP mechanism such as Auto-RP, MSDP, or bootstrap router (BSR).

If SSM is deployed in a network that is already configured for PIM-SM, then only the last-hop devices must be upgraded to a software image that supports SSM. Routers that are not directly connected to receivers do not have to upgrade to a software image that supports SSM. In general, these non-last-hop devices must only run PIM-SM in the SSM range. They may need additional access control configuration to suppress MSDP signaling, registering, or PIM-SM shared-tree operations from occurring within the SSM range.

The SSM mode of operation is enabled by configuring the SSM range using the ip pim ssm global configuration command. This configuration has the following effects:

  • For groups within the SSM range, (S, G) channel subscriptions are accepted through IGMPv3 INCLUDE mode membership reports.

  • PIM operations within the SSM range of addresses change to PIM-SSM, a mode derived from PIM-SM. In this mode, only PIM (S, G) Join and Prune messages are generated by the device. Incoming messages related to rendezvous point tree (RPT) operations are ignored or rejected, and incoming PIM register messages are immediately answered with Register-Stop messages. PIM-SSM is backward-compatible with PIM-SM unless a device is a last-hop device. Therefore, devices that are not last-hop devices can run PIM-SM for SSM groups (for example, if they do not yet support SSM).

  • For groups within the SSM range, no MSDP Source-Active (SA) messages within the SSM range will be accepted, generated, or forwarded.

IGMPv3 Host Signaling

IGMPv3 is the third version of the IETF standards track protocol in which hosts signal membership to last-hop devices of multicast groups. IGMPv3 introduces the ability for hosts to signal group membership that allows filtering capabilities with respect to sources. A host can signal either that it wants to receive traffic from all sources sending to a group except for some specific sources (a mode called EXCLUDE) or that it wants to receive traffic only from some specific sources sending to the group (a mode called INCLUDE).

IGMPv3 can operate with both ISM and SSM. In ISM, both EXCLUDE and INCLUDE mode reports are accepted by the last-hop router. In SSM, only INCLUDE mode reports are accepted by the last-hop router.

Benefits of Source Specific Multicast

IP Multicast Address Management Not Required

In the ISM service, applications must acquire a unique IP multicast group address because traffic distribution is based only on the IP multicast group address used. If two applications with different sources and receivers use the same IP multicast group address, then receivers of both applications will receive traffic from the senders of both applications. Even though the receivers, if programmed appropriately, can filter out the unwanted traffic, this situation would cause generally unacceptable levels of unwanted traffic.

Allocating a unique IP multicast group address for an application is still a problem. Most short-lived applications use mechanisms like Session Description Protocol (SDP) and Session Announcement Protocol (SAP) to get a random address, a solution that does not work well with a rising number of applications in the Internet. The best current solution for long-lived applications is described in RFC 2770, but this solution suffers from the restriction that each autonomous system is limited to only 255 usable IP multicast addresses.

In SSM, traffic from each source is forwarded between devices in the network independent of traffic from other sources. Thus different sources can reuse multicast group addresses in the SSM range.

Denial of Service Attacks from Unwanted Sources Inhibited

In SSM, multicast traffic from each individual source will be transported across the network only if it was requested (through IGMPv3 or IGMP v3lite memberships) from a receiver. In contrast, ISM forwards traffic from any active source sending to a multicast group to all receivers requesting that multicast group. In Internet broadcast applications, this ISM behavior is highly undesirable because it allows unwanted sources to easily disturb the actual Internet broadcast source by simply sending traffic to the same multicast group. This situation depletes bandwidth at the receiver side with unwanted traffic and thus disrupts the undisturbed reception of the Internet broadcast. In SSM, this type of denial of service (DoS) attack cannot be made by simply sending traffic to a multicast group.

Easy to Install and Manage

SSM is easy to install and provision in a network because it does not require the network to maintain which active sources are sending to multicast groups. This requirement exists in ISM (with IGMPv1, IGMPv2, or IGMPv3).

The current standard solutions for ISM service are PIM-SM and MSDP. Rendezvous point (RP) management in PIM-SM (including the necessity for Auto-RP or BSR) and MSDP is required only for the network to learn about active sources. This management is not necessary in SSM, which makes SSM easier than ISM to install and manage, and therefore easier than ISM to operationally scale in deployment. Another factor that contributes to the ease of installation of SSM is the fact that it can leverage preexisting PIM-SM networks and requires only the upgrade of last hop devices to support IGMPv3, or IGMP v3lite.

Ideal for Internet Broadcast Applications

The three benefits previously described make SSM ideal for Internet broadcast-style applications for the following reasons:

  • The ability to provide Internet broadcast services through SSM without the need for unique IP multicast addresses allows content providers to easily offer their service (IP multicast address allocation has been a serious problem for content providers in the past).

  • The prevention against DoS attacks is an important factor for Internet broadcast services because, with their exposure to a large number of receivers, they are the most common targets for such attacks.

  • The ease of installation and operation of SSM makes it ideal for network operators, especially in those cases where content needs to be forwarded between multiple independent PIM domains (because there is no need to manage MSDP for SSM between PIM domains).

How to Configure Basic IP Multicast

The tasks described in this section configure the basic IP multicast modes. No single task in this section is required; however, at least one of the tasks must be performed to configure IP multicast in a network. More than one of the tasks may be needed.

Configuring Sparse Mode with Auto-RP

Before you begin

  • An interface configured in sparse-dense mode is treated in either sparse mode or dense mode of operation, depending on the mode in which the multicast group operates. You must decide how to configure your interfaces.

  • All access lists that are needed when Auto-RP is configured should be configured prior to beginning the configuration task.


Note

  • If a group has no known RP and the interface is configured to be sparse-dense mode, the interface is treated as if it were in dense mode, and data is flooded over the interface. To avoid this data flooding, configure the Auto-RP listener and then configure the interface as sparse mode.
  • When configuring Auto-RP, you must either configure the Auto-RP listener feature (Step 5) and specify sparse mode (Step 7) or specify sparse-dense mode (Step 8) .
  • When you configure sparse-dense mode, dense mode failover may result in a network dense-mode flood. To avoid this condition, use PIM sparse mode with the Auto-RP listener feature.

Follow this procedure to configure auto-rendezvous point (Auto-RP). Auto-RP can also be optionally used with anycast RP.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. ip multicast-routing distributed
  4. Either perform Steps 5 through 7 or perform Steps 6 and 8.
  5. ip pim autorp listener
  6. interface type number
  7. ip pim sparse-mode
  8. ip pim sparse-dense-mode
  9. exit
  10. Repeat Steps 1 through 9 on all PIM interfaces.
  11. ip pim send-rp-announce {interface-type interface-number | ip-address } scope ttl-value [group-list access-list ] [interval seconds ] [bidir ]
  12. ip pim send-rp-discovery [interface-type interface-number ] scope ttl-value [interval seconds ]
  13. ip pim rp-announce-filter rp-list access-list group-list access-list
  14. no ip pim dm-fallback
  15. interface type number
  16. ip multicast boundary access-list [filter-autorp ]
  17. end
  18. show ip pim autorp
  19. show ip pim rp [mapping ] [rp-address ]
  20. show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]
  21. show ip mroute [group-address | group-name ] [source-address | source-name ] [interface-type interface-number ] [summary ] [count ] [active kbps ]

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Device# configure terminal

Enters global configuration mode.

Step 3

ip multicast-routing distributed

Example:


Device(config)# ip multicast-routing

Enables IP multicast routing.

Step 4

Either perform Steps 5 through 7 or perform Steps 6 and 8.

--

Step 5

ip pim autorp listener

Example:


Device(config)# ip pim autorp listener

Causes IP multicast traffic for the two Auto-RP groups 224.0.1.39 and 224.0.1.40 to be PIM dense mode flooded across interfaces operating in PIM sparse mode.

  • Skip this step if you are configuring sparse-dense mode in Step 8.

Step 6

interface type number

Example:


Device(config)# interface Gigabitethernet 1/0/0

Selects an interface that is connected to hosts on which PIM can be enabled.

Step 7

ip pim sparse-mode

Example:


Device(config-if)# ip pim sparse-mode

Enables PIM sparse mode on an interface. When configuring Auto-RP in sparse mode, you must also configure the Auto-RP listener in the next step.

  • Skip this step if you are configuring sparse-dense mode in Step 8.

Step 8

ip pim sparse-dense-mode

Example:


Device(config-if)# ip pim sparse-dense-mode

Enables PIM sparse-dense mode on an interface.

  • Skip this step if you configured sparse mode in Step 7.

Step 9

exit

Example:


Device(config-if)# exit

Exits interface configuration mode and returns to global configuration mode.

Step 10

Repeat Steps 1 through 9 on all PIM interfaces.

--

Step 11

ip pim send-rp-announce {interface-type interface-number | ip-address } scope ttl-value [group-list access-list ] [interval seconds ] [bidir ]

Example:


Device(config)# ip pim send-rp-announce loopback0 scope 31 group-list 5 

Sends RP announcements out all PIM-enabled interfaces.

  • Perform this step on the RP device only.

  • Use the interface-type and interface-number arguments to define which IP address is to be used as the RP address.

  • Use the ip-address argument to specify a directly connected IP address as the RP address.

Note 

If the ip-address argument is configured for this command, the RP-announce message will be sourced by the interface to which this IP address is connected (that is, the source address in the IP header of the RP-announce message is the IP address of that interface).

  • This example shows that the interface is enabled with a maximum of 31 hops. The IP address by which the device wants to be identified as RP is the IP address associated with loopback interface 0. Access list 5 describes the groups for which this device serves as RP.

Step 12

ip pim send-rp-discovery [interface-type interface-number ] scope ttl-value [interval seconds ]

Example:


Device(config)# ip pim send-rp-discovery loopback 1 scope 31 

Configures the device to be an RP mapping agent.

  • Perform this step on RP mapping agent devices or on combined RP/RP mapping agent devices.

Note 

Auto-RP allows the RP function to run separately on one device and the RP mapping agent to run on one or multiple devices. It is possible to deploy the RP and the RP mapping agent on a combined RP/RP mapping agent device.

  • Use the optional interface-type and interface-number arguments to define which IP address is to be used as the source address of the RP mapping agent.

  • Use the scope keyword and ttl-value argument to specify the Time-to-Live (TTL) value in the IP header of Auto-RP discovery messages.

  • Use the optional interval keyword and seconds argument to specify the interval at which Auto-RP discovery messages are sent.

Note 

Lowering the interval at which Auto-RP discovery messages are sent from the default value of 60 seconds results in more frequent floodings of the group-to-RP mappings. In some network environments, the disadvantages of lowering the interval (more control packet overhead) may outweigh the advantages (more frequent group-to-RP mapping updates).

  • The example shows limiting the Auto-RP discovery messages to 31 hops on loopback interface 1.

Step 13

ip pim rp-announce-filter rp-list access-list group-list access-list

Example:


Device(config)# ip pim rp-announce-filter rp-list 1 group-list 2

Filters incoming RP announcement messages sent from candidate RPs (C-RPs) to the RP mapping agent.

  • Perform this step on the RP mapping agent only.

Step 14

no ip pim dm-fallback

Example:


Device(config)# no ip pim dm-fallback

(Optional) Prevents PIM dense mode fallback.

  • Skip this step if all interfaces have been configured to operate in PIM sparse mode.

Note 

The no ip pim dm-fallback command behavior is enabled by default if all the interfaces are configured to operate in PIM sparse mode (using the ip pim sparse-mode command).

Step 15

interface type number

Example:


Device(config)# interface gigabitethernet 1/0/0

Selects an interface that is connected to hosts on which PIM can be enabled.

Step 16

ip multicast boundary access-list [filter-autorp ]

Example:


Device(config-if)# ip multicast boundary 10 filter-autorp

Configures an administratively scoped boundary.

  • Perform this step on the interfaces that are boundaries to other devices.

  • The access list is not shown in this task.

  • An access list entry that uses the deny keyword creates a multicast boundary for packets that match that entry.

Step 17

end

Example:


Device(config-if)# end

Returns to global configuration mode.

Step 18

show ip pim autorp

Example:


Device# show ip pim autorp

(Optional) Displays the Auto-RP information.

Step 19

show ip pim rp [mapping ] [rp-address ]

Example:


Device# show ip pim rp mapping

(Optional) Displays RPs known in the network and shows how the device learned about each RP.

Step 20

show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]

Example:


Device# show ip igmp groups

(Optional) Displays the multicast groups having receivers that are directly connected to the device and that were learned through Internet Group Management Protocol (IGMP).

  • A receiver must be active on the network at the time that this command is issued in order for receiver information to be present on the resulting display.

Step 21

show ip mroute [group-address | group-name ] [source-address | source-name ] [interface-type interface-number ] [summary ] [count ] [active kbps ]

Example:


Device# show ip mroute cbone-audio 

(Optional) Displays the contents of the IP multicast routing (mroute) table.

What to Do Next

Proceed to the “ Verifying IP Multicast Operation ” module.

Configuring Sparse Mode with a Single Static RP

A rendezvous point (RP) is required in networks running Protocol Independent Multicast sparse mode (PIM-SM). In PIM-SM, traffic will be forwarded only to network segments with active receivers that have explicitly requested multicast data.

This section describes how to configure sparse mode with a single static RP.

Before you begin

All access lists that are needed when sparse mode is configured with a single static RP should be configured prior to beginning the configuration task.


Note

The same RP address cannot be used for both bidirectional and sparse mode PIM groups.


SUMMARY STEPS

  1. enable
  2. configure terminal
  3. ip multicast-routing distributed
  4. interface type number
  5. ip pim sparse-mode
  6. Repeat Steps 1 through 5 on every interface that uses IP multicast.
  7. exit
  8. ip pim rp-address rp-address [access-list ] [override ]
  9. end
  10. show ip pim rp [mapping ] [rp-address ]
  11. show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]
  12. show ip mroute

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Router> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Router# configure terminal

Enters global configuration mode.

Step 3

ip multicast-routing distributed

Example:


Router(config)# ip multicast-routing

Enables IP multicast routing.

Step 4

interface type number

Example:


Router(config)# interface gigabitethernet 1/0/0

Selects an interface that is connected to hosts on which PIM can be enabled.

Step 5

ip pim sparse-mode

Example:


Router(config-if)# ip pim sparse-mode

Enables PIM on an interface. You must use sparse mode.

Step 6

Repeat Steps 1 through 5 on every interface that uses IP multicast.

--

Step 7

exit

Example:


Router(config-if)# exit

Returns to global configuration mode.

Step 8

ip pim rp-address rp-address [access-list ] [override ]

Example:


Router(config)# ip pim rp-address 192.168.0.0 

Configures the address of a PIM RP for a particular group.

  • The optional access-list argument is used to specify the number or name a standard access list that defines the multicast groups to be statically mapped to the RP.

Note 

If no access list is defined, the RP will map to all multicast groups, 224/4.

  • The optional override keyword is used to specify that if dynamic and static group-to-RP mappings are used together and there is an RP address conflict, the RP address configured for a static group-to-RP mapping will take precedence.

Note 

If the override keyword is not specified and there is RP address conflict, dynamic group-to-RP mappings will take precedence over static group-to-RP mappings.

Step 9

end

Example:


Router(config)# end

Ends the current configuration session and returns to EXEC mode.

Step 10

show ip pim rp [mapping ] [rp-address ]

Example:


Router# show ip pim rp mapping

(Optional) Displays RPs known in the network and shows how the router learned about each RP.

Step 11

show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]

Example:


Router# show ip igmp groups

(Optional) Displays the multicast groups having receivers that are directly connected to the router and that were learned through IGMP.

  • A receiver must be active on the network at the time that this command is issued in order for receiver information to be present on the resulting display.

Step 12

show ip mroute

Example:


Router# show ip mroute

(Optional) Displays the contents of the IP mroute table.

What to Do Next

Proceed to the “ Verifying IP Multicast Operation ” module.

Configuring Source Specific Multicast

This section describes how to configure Source Specific Multicast (SSM).

Before you begin

If you want to use an access list to define the SSM range, configure the access list before you reference the access list in the ip pim ssm command.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. ip multicast-routing distributed
  4. ip pim ssm {default | range access-list }
  5. interface type number
  6. ip pim sparse-mode
  7. Repeat Steps 1 through 6 on every interface that uses IP multicast.
  8. ip igmp version 3
  9. Repeat Step 8 on all host-facing interfaces.
  10. end
  11. show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]
  12. show ip mroute

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Device# configure terminal

Enters global configuration mode.

Step 3

ip multicast-routing distributed

Example:


Device(config)# ip multicast-routing 

Enables IP multicast routing.

Step 4

ip pim ssm {default | range access-list }

Example:


Device(config)# ip pim ssm default

Configures SSM service.

  • The default keyword defines the SSM range access list as 232/8.

  • The range keyword specifies the standard IP access list number or name that defines the SSM range.

Step 5

interface type number

Example:


Device(config)# interface gigabitethernet 1/0/0

Selects an interface that is connected to hosts on which IGMPv3 can be enabled.

Step 6

ip pim sparse-mode

Example:


Device(config-if)# ip pim sparse-mode

Enables PIM on an interface. You must use sparse mode.

Step 7

Repeat Steps 1 through 6 on every interface that uses IP multicast.

--

Step 8

ip igmp version 3

Example:


Device(config-if)# ip igmp version 3

Enables IGMPv3 on this interface. The default version of IGMP is set to Version 2. Version 3 is required by SSM.

Step 9

Repeat Step 8 on all host-facing interfaces.

--

Step 10

end

Example:


Device(config-if)# end

Ends the current configuration session and returns to privileged EXEC mode.

Step 11

show ip igmp groups [group-name | group-address | interface-type interface-number ] [detail ]

Example:


Device# show ip igmp groups

(Optional) Displays the multicast groups having receivers that are directly connected to the device and that were learned through IGMP.

  • A receiver must be active on the network at the time that this command is issued in order for receiver information to be present on the resulting display.

Step 12

show ip mroute

Example:


Device# show ip mroute

(Optional) Displays the contents of the IP mroute table.

  • This command displays whether a multicast group is configured for SSM service or a source-specific host report has been received.

What to Do Next

Proceed to the “ Verifying IP Multicast Operation ” module.

Configuration Examples for Basic IP Multicast

Example: Sparse Mode with Auto-RP

The following example configures sparse mode with Auto-RP:


ip multicast-routing 
ip pim autorp listener 
ip pim send-rp-announce Loopback0 scope 16 group-list 1 
ip pim send-rp-discovery Loopback1 scope 16 
no ip pim dm-fallback
access-list 1 permit 239.254.2.0 0.0.0.255 
access-list 1 permit 239.254.3.0 0.0.0.255
.
.
.
access-list 10 permit 224.0.1.39
access-list 10 permit 224.0.1.40
access-list 10 permit 239.254.2.0 0.0.0.255
access-list 10 permit 239.254.3.0 0.0.0.255

BSR and RFC 2362 Interoperable Candidate RP Example

When Cisco and non-Cisco routers are being operated in a single PIM domain with PIM Version 2 BSR, care must be taken when configuring candidate RPs because the Cisco implementation of the BSR RP selection is not fully compatible with RFC 2362.

RFC 2362 specifies that the BSR RP be selected as follows (RFC 2362, 3.7):

  1. Select the candidate RP with the highest priority (lowest configured priority value).

  2. If there is a tie in the priority level, select the candidate RP with the highest hash function value.

  3. If there is a tie in the hash function value, select the candidate RP with the highest IP address.

Cisco routers always select the candidate RP based on the longest match on the announced group address prefix before selecting an RP based on priority, hash function, or IP address.

Inconsistent candidate RP selection between Cisco and non-Cisco RFC 2362-compliant routers in the same domain if multiple candidate RPs with partially overlapping group address ranges are configured can occur. Inconsistent candidate RP selection can prevent connectivity between sources and receivers in the PIM domain. A source may register with one candidate RP and a receiver may connect to a different candidate RP even though it is in the same group.

The following example shows a configuration that can cause inconsistent RP selection between a Cisco and a non-Cisco router in a single PIM domain with PIM Version 2 BSR:


access-list 10 permit 224.0.0.0  7.255.255.255 
ip pim rp-candidate gigabitethernet1/0/0 group-list 10 priority 20
access-list 20 permit 224.0.0.0 15.255.255.255
ip pim rp-candidate gigabitethernet2/0/0 group-list 20 priority 10

In this example, a candidate RP on GigabitEthernet interface 1/0/0 announces a longer group prefix of 224.0.0.0/5 with a lower priority of 20. The candidate RP on GigabitEthernet interface 2/0/0 announces a shorter group prefix of 224.0.0.0/4 with a higher priority of 10. For all groups that match both ranges a Cisco router will always select the candidate RP on Ethernet interface 1 because it has the longer announced group prefix. A non-Cisco fully RFC 2362-compliant router will always select the candidate RP on GigabitEthernet interface 2/0/0 because it is configured with a higher priority.

To avoid this interoperability issue, do not configure different candidate RPs to announce partially overlapping group address prefixes. Configure any group prefixes that you want to announce from more than one candidate RP with the same group prefix length.

The following example shows how to configure the previous example so that there is no incompatibility between a Cisco router and a non-Cisco router in a single PIM domain with PIM Version 2 BSR:


access-list 10 permit 224.0.0.0  7.255.255.255 
ip pim rp-candidate gigabitethernet1/0/0 group-list 10 priority 20
access-list 20 permit 224.0.0.0  7.255.255.255
access-list 20 permit 232.0.0.0  7.255.255.255
ip pim rp-candidate gigabitethernet2/0/0 group-list 20 priority 10

In this configuration the candidate RP on Ethernet interface 2 announces group address 224.0.0.0/5 and 232.0.0.0/5 which equal 224.0.0.0/4, but gives the interface the same group prefix length (5) as the candidate RP on Ethernet 1. As a result, both a Cisco router and an RFC 2362-compliant router will select the RP Ethernet interface 2.

Example: Sparse Mode with a Single Static RP

The following example sets the PIM RP address to 192.168.1.1 for all multicast groups and defines all groups to operate in sparse mode:

ip multicast-routing
interface gigiabitethernet 1/0/0
 ip pim sparse-mode
ip pim rp-address 192.168.1.1 

Note

The same RP cannot be used for both bidirectional and sparse mode groups.


The following example sets the PIM RP address to 172.16.1.1 for the multicast group 225.2.2.2 only:

access list 1 225.2.2.2 0.0.0.0 
 ip pim rp-address 172.17.1.1 

SSM with IGMPv3 Example

The following example shows how to configure a device (running IGMPv3) for SSM:


ip multicast-routing 
!
interface GigabitEthernet3/1/0 
 ip address 172.21.200.203 255.255.255.0 
 description backbone interface 
	ip pim sparse-mode 
! 
interface GigabitEthernet3/2/0 
	ip address 131.108.1.2 255.255.255.0 
	ip pim sparse-mode 
	description ethernet connected to hosts 
	ip igmp version 3 
! 
ip pim ssm default 

SSM Filtering Example

The following example shows how to configure filtering on legacy RP routers running software releases that do not support SSM routing. This filtering will suppress all unwanted PIM-SM and MSDP traffic in the SSM range. Without this filtering, SSM will still operate, but there may be additional RPT traffic if legacy first hop and last hop routers exist in the network.


ip access-list extended  no-ssm-range
  deny   ip any 232.0.0.0 0.255.255.255 ! SSM range
  permit ip any any
! Deny registering in SSM range
ip pim accept-register list no-ssm-range
ip access-list extended msdp-nono-list
  deny   ip any 232.0.0.0 0.255.255.255 ! SSM Range
  ! .
  ! .
  ! .
  ! See ftp://ftpeng.cisco.com/ipmulticast/config-notes/msdp-sa-filter.txt for other SA
  ! messages that typically need to be filtered.
  permit ip any any
! Filter generated SA messages in SSM range. This configuration is only needed if there
! are directly connected sources to this router. The “ip pim accept-register” command
! filters remote sources.
ip msdp redistribute list msdp-nono-list
! Filter received SA messages in SSM range. “Filtered on receipt” means messages are
! neither processed or forwarded. Needs to be configured for each MSDP peer.
ip msdp sa-filter in msdp-peer1 list msdp-nono-list
! .
! .
! .
ip msdp sa-filter in msdp-peerN list msdp-nono-list