Configuring Basic Multicast Routing

Prerequisites for Basic IP Multicast Routing

The following are the prerequisites for configuring basic IP multicast routing:

  • You must configure the PIM version and the PIM mode in order to perform IP multicast routing. The switch populates its multicast routing table and forwards multicast packets it receives from its directly connected LANs according to the mode setting. You can configure an interface to be in the PIM dense mode, or sparse mode.

  • Enabling PIM on an interface also enables IGMP operation on that interface. (To participate in IP multicasting, the multicast hosts, routers, and multilayer device must have IGMP operating. )

    If you enable PIM on multiple interfaces, when most of these interfaces are not on the outgoing interface list, and IGMP snooping is disabled, the outgoing interface might not be able to sustain line rate for multicast traffic because of the extra replication.

Restrictions for Basic IP Multicast Routing

The following are the restrictions for IP multicast routing:

  • PIM enabled interface scale limit is 26 targets (Routed port + SVIs).

  • PIM sparse-dense mode is not supported on IE3x00 switches.

Information About Basic IP Multicast Routing

IP multicasting is an efficient way to use network resources, especially for bandwidth-intensive services such as audio and video. IP multicast routing enables a host (source) to send packets to a group of hosts (receivers) anywhere within the IP network by using a special form of IP address called the IP multicast group address.

The sending host inserts the multicast group address into the IP destination address field of the packet, and IP multicast routers and multilayer forward incoming IP multicast packets out all interfaces that lead to members of the multicast group. Any host, regardless of whether it is a member of a group, can send to a group. However, only the members of a group receive the message.

Multicast Forwarding Information Base Overview

The switch controller device uses the Multicast Forwarding Information Base (MFIB) architecture and the Multicast Routing Information Base (MRIB) for IP multicast.

The MFIB architecture provides both modularity and separation between the multicast control plane (Protocol Independent Multicast [PIM] and Internet Group Management Protocol [IGMP]) and the multicast forwarding plane (MFIB). This architecture is used in Cisco IOS IPv6 multicast implementations.

MFIB itself is a multicast routing protocol independent forwarding engine; that is, it does not depend on PIM or any other multicast routing protocol. It is responsible for:

  • Forwarding multicast packets

  • Registering with the MRIB to learn the entry and interface flags set by the control plane

  • Handling data-driven events that must be sent to the control plane

  • Maintaining counts, rates, and bytes of received, dropped, and forwarded multicast packets

The MRIB is the communication channel between MRIB clients. Examples of MRIB clients are PIM, IGMP, the multicast routing (mroute) table, and the MFIB.

Default IP Multicast Routing Configuration

This table displays the default IP multicast routing configuration.

Table 1. Default IP Multicast Routing Configuration

Feature

Default Setting

Multicast routing

Disabled on all interfaces.

PIM version

Version 2.

PIM mode

No mode is defined.

PIM RP address

None configured.

PIM domain border

Disabled.

PIM multicast boundary

None.

Candidate BSRs

Disabled.

Candidate RPs

Disabled.

Shortest-path tree threshold rate

0 kb/s.

PIM router query message interval

30 seconds.

How to Configure Basic IP Multicast Routing

This section provides information about configuring basic IP multicast routing.

Configuring Basic IP Multicast Routing

By default, multicast routing is disabled, and there is no default mode setting.

This procedure is required.

Before you begin

You must configure the PIM version and the PIM mode. The switch populates its multicast routing table and forwards multicast packets it receives from its directly connected LANs according to the mode setting.

In populating the multicast routing table, dense-mode interfaces are always added to the table. If the multicast traffic from a specific source is sufficient, the receiver’s first-hop router might send join messages toward the source to build a source-based distribution tree.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. interface interface-id
  4. ip pim {dense-mode | sparse-mode }
  5. end
  6. show running-config
  7. copy running-config startup-config

DETAILED STEPS

  Command or Action Purpose

Step 1

enable

Example:


> enable

Enables privileged EXEC mode.

Enter your password, if prompted.

Step 2

configure terminal

Example:


# configure terminal

Enters global configuration mode.

Step 3

interface interface-id

Example:


(config)# interface 
gigabitethernet 1/3

Specifies the Layer 3 interface on which you want to enable multicast routing, and enters interface configuration mode.

The specified interface must be one of the following:

  • A routed port—A physical port that has been configured as a Layer 3 port by entering the no switchport interface configuration command. You will also need to enable IP PIM mode on the interface, and join the interface as a statically connected member to an IGMP static group.

  • An SVI—A VLAN interface created by using the interface vlan vlan-id global configuration command. You will also need to enable IP PIM mode on the VLAN, join the VLAN as a statically connected member to an IGMP static group, and then enable IGMP snooping on the VLAN, the IGMP static group, and physical interface.

These interfaces must have IP addresses assigned to them.

Step 4

ip pim {dense-mode | sparse-mode }

Example:


(config-if)# ip pim 
sparse-mode

Enables a PIM mode on the interface.

By default, no mode is configured.

The keywords have these meanings:

  • dense-mode —Enables dense mode of operation.

  • sparse-mode —Enables sparse mode of operation. If you configure sparse mode, you must also configure an RP.

Note

 

To disable PIM on an interface, use the no ip pim interface configuration command.

Step 5

end

Example:


(config-if)# end

Returns to privileged EXEC mode.

Step 6

show running-config

Example:


# show running-config 

Verifies your entries.

Step 7

copy running-config startup-config

Example:


# copy running-config startup-config 

(Optional) Saves your entries in the configuration file.

Configuring IP Multicast Forwarding

You can use the following procedure to configure IPv4 Multicast Forwarding Information Base (MFIB) interrupt-level IP multicast forwarding of incoming packets or outgoing packets on the device.


Note


After you have enabled IP multicast routing by using the ip multicast-routing command, IPv4 multicast forwarding is enabled. To disable IPv4 multicast forwarding, use the no form of the ip mfib command.


SUMMARY STEPS

  1. enable
  2. configure terminal
  3. ip mfib
  4. exit
  5. show running-config
  6. copy running-config startup-config

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 mfib

Example:

Device(config)# ip mfib

Enables IP multicast forwarding.

Step 4

exit

Example:

Device(config)# exit

Returns to privileged EXEC mode.

Step 5

show running-config

Example:

Device# show running-config

Verifies your entries.

Step 6

copy running-config startup-config

Example:

Device# copy running-config startup-config

(Optional) Saves your entries in the configuration file.

Configuring Optional IP Multicast Routing Features

This section provides information about configuring optional IP multicast routing features.

Defining the IP Multicast Boundary


Note


Support for this feature on ipv6 was introduced in IOS XE Release 17.3.1. It is not supported on ipv4.


You define a multicast boundary to prevent Auto-RP messages from entering the PIM domain. You create an access list to deny packets destined for 224.0.1.39 and 224.0.1.40, which carry Auto-RP information.

This procedure is optional.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. access-list access-list-number deny source [source-wildcard]
  4. interface interface-id
  5. ip multicast boundary access-list-number
  6. end
  7. show running-config
  8. copy running-config startup-config

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

access-list access-list-number deny source [source-wildcard]

Example:
Device(config)# 
access-list 12 deny 224.0.1.39
access-list 12 deny 224.0.1.40

Creates a standard access list, repeating the command as many times as necessary.

  • For access-list-number , the range is 1 to 99.

  • The deny keyword denies access if the conditions are matched.

  • For source , enter multicast addresses 224.0.1.39 and 224.0.1.40, which carry Auto-RP information.

  • (Optional) For source-wildcard , enter the wildcard bits in dotted decimal notation to be applied to the source. Place ones in the bit positions that you want to ignore.

The access list is always terminated by an implicit deny statement for everything.

Step 4

interface interface-id

Example:
Device(config)# interface gigabitethernet 1/3

Specifies the interface to be configured, and enters interface configuration mode.

Step 5

ip multicast boundary access-list-number

Example:
Device(config-if)# ip multicast boundary 12

Configures the boundary, specifying the access list you created in Step 2.

Step 6

end

Example:
Device(config)# end

Returns to privileged EXEC mode.

Step 7

show running-config

Example:
Device# show running-config

Verifies your entries.

Step 8

copy running-config startup-config

Example:
Device# copy running-config startup-config

(Optional) Saves your entries in the configuration file.

Monitoring and Maintaining Basic IP Multicast Routing

Clearing Caches, Tables, and Databases

You can remove all contents of a particular cache, table, or database. Clearing a cache, table, or database might be necessary when the contents of the particular structure are or suspected to be invalid.

You can use any of the privileged EXEC commands in the following table to clear IP multicast caches, tables, and databases.

Table 2. Commands for Clearing Caches, Tables, and Databases

Command

Purpose

clear ip igmp group {group [ hostname | IP address] | vrf name group [ hostname | IP address] }

Deletes entries from the IGMP cache.

clear ip mroute { * | [hostname | IP address] | vrf name group [ hostname | IP address] }

Deletes entries from the IP multicast routing table.

clear ip sap [group-address | session-name]

Deletes the Session Directory Protocol Version 2 cache or an sdr cache entry.

Displaying System and Network Statistics

You can display specific statistics, such as the contents of IP routing tables, caches, and databases.


Note


This release does not support per-route statistics.


You can display information to learn resource usage and solve network problems. You can also display information about node reachability and discover the routing path that packets of your device are taking through the network.

You can use any of the privileged EXEC commands in the following table to display various routing statistics.

Table 3. Commands for Displaying System and Network Statistics

Command

Purpose

ping [group-name | group-address]

Sends an ICMP Echo Request to a multicast group address.

show ip igmp filter

Displays IGMP filter information.

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

Displays the multicast groups that are directly connected to the device and that were learned through IGMP.

show ip igmp interface [type number]

Displays multicast-related information about an interface.

show ip igmp profile [ profile_number]

Displays IGMP profile information.

show ip igmp ssm-mapping [ hostname/IP address ]

Displays IGMP SSM mapping information.

show ip igmp static-group {class-map [ interface [ type ] ]

Displays static group information.

show ip igmp membership [ name/group address | all | tracked ]

Displays IGMP membership information for forwarding.

show ip igmp vrf

Displays the selected VPN Routing/Forwarding instance by name.

show ip mfib [ type number ]

Displays the IP multicast forwarding information base.

show ip mrib { client | route | vrf }

Displays the multicast routing information base.

show ip mrm { interface | manager | status-report }

Displays the IP multicast routing monitor information.

show ip mroute [group-name | group-address] [source] [ count | interface | proxy | pruned | summary | verbose]

Displays the contents of the IP multicast routing table.

show ip msdp { count | peer | rpf-peer | sa-cache | summary | vrf }

Displays the Multicast Source Discovery Protocol (MSDP) information.

show ip multicast [ interface | limit | mpls | redundancy | vrf ]

Displays global multicast information.

show ip pim autorp

Display global auto-RP information.

show ip pim bsr-router

Display bootstrap router information (version 2).

show ip pim interface [type number] [count | detail | df | stats ]

Displays information about interfaces configured for PIM. This command is available in all software images.

show ip pim neighbor [type number]

Lists the PIM neighbors discovered by the device. This command is available in all software images.

show ip pim rp [group-name | group-address]

Displays the RP routers associated with a sparse-mode multicast group. This command is available in all software images.

show ip pim tunnel [ tunnel | verbose ]

Displays the registered tunnels.

show ip pim vrf name

Displays VPN routing and forwarding instances.

show ip rpf {source-address | name}

Displays how the device is doing Reverse-Path Forwarding (that is, from the unicast routing table, DVMRP routing table, or static mroutes).

Command parameters include:

  • Host name or IP address —IP name or group address.

  • Select —Group-based VRF select information.

  • vrf —Selects VPN Routing/Forwarding instance.

show ip sap [group | session-name | detail]

Displays the Session Announcement Protocol (SAP) Version 2 cache.

Command parameters include:

  • A.B.C.D —IP group address.

  • WORD —Session name (in double quotes).

  • detail —Session details.

Configuration Examples for Basic IP Multicast Routing

This section provides configuration examples for Basic IP Multicast Routing.

Example: Configuring an IP Multicast Boundary (ipv6 only)

This example shows how to set up a boundary for all administratively-scoped addresses:


(config)# access-list 1 deny 239.0.0.0 0.255.255.255
(config)# access-list 1 permit 224.0.0.0 15.255.255.255
(config)# interface gigabitethernet 1/3
(config-if)# ip multicast boundary 1

Feature Information for Basic IP Multicast Routing

Table 4. Feature Information for Basic IP Multicast Routing

Feature Name

Releases

Feature Information

Basic IP Multicast Routing

IP Multicast is an efficient way to use network resources, especially for bandwidth-intensive services such as audio and video. IP multicast routing enables a host (source) to send packets to a group of hosts (receivers) anywhere within the IP network by using a special form of IP address called the IP multicast group address.