- IP Multicast Routing Technology Overview
- Configuring IGMP
- Configuring IGMP Proxy
- Constraining IP Multicast in Switched Ethernet
- Configuring PIM
- Configuring PIM MIB Extension for IP Multicast
- Configuring MSDP
- Configuring Wireless Multicast
- Configuring SSM
- Configuring Basic IP Multicast Routing
- Configuring Multicast Routing over GRE Tunnel
- Configuring the Service Discovery Gateway
- IP Multicast Optimization: Optimizing PIM Sparse Mode in a Large IP Multicast Deployment
- IP Multicast Optimization: Multicast Subsecond Convergence
- IP Multicast Optimization: IP Multicast Load Splitting across Equal-Cost Paths
- IP Multicast Optimization: SSM Channel Based Filtering for Multicast
- IP Multicast Optimization: PIM Dense Mode State Refresh
- IP Multicast Optimization: IGMP State Limit
- Index
- Finding Feature Information
- Prerequisites for IGMP and IGMP Snooping
- Restrictions for IGMP and IGMP Snooping
- Information About IGMP
- Configuring the Device as a Member of a Group
- Controlling Access to IP Multicast Group
- Changing the IGMP Version
- Modifying the IGMP Host-Query Message Interval
- Changing the IGMP Query Timeout for IGMPv2
- Changing the Maximum Query Response Time for IGMPv2
- Configuring the Device as a Statically Connected Member
- Configuring IGMP Profiles
- Applying IGMP Profiles
- Setting the Maximum Number of IGMP Groups
- Configuring the IGMP Throttling Action
- Configuring the Device to Forward Multicast Traffic in the Absence of Directly Connected IGMP Hosts
- Controlling Access to an SSM Network Using IGMP Extended Access Lists
- How to Configure IGMP Snooping
- Enabling IGMP Snooping
- Enabling or Disabling IGMP Snooping on a VLAN Interface
- Setting the Snooping Method
- Configuring a Multicast Router Port
- Configuring a Host Statically to Join a Group
- Enabling IGMP Immediate Leave
- Configuring the IGMP Leave Timer
- Configuring the IGMP Robustness-Variable
- Configuring the IGMP Last Member Query Count
- Configuring TCN-Related Commands
- Configuring the IGMP Snooping Querier
- Disabling IGMP Report Suppression
- Example: Configuring the Device as a Member of a Multicast Group
- Example: Controlling Access to Multicast Groups
- Examples: Configuring IGMP Snooping
- Example: Configuring IGMP Profiles
- Example: Applying IGMP Profile
- Example: Setting the Maximum Number of IGMP Groups
- Example: Interface Configuration as a Routed Port
- Example: Interface Configuration as an SVI
- Example: Configuring the Device to Forward Multicast Traffic in the Absence of Directly Connected IGMP Hosts
- Controlling Access to an SSM Network Using IGMP Extended Access Lists
Configuring IGMP
- Finding Feature Information
- Prerequisites for IGMP and IGMP Snooping
- Restrictions for IGMP and IGMP Snooping
- Information About IGMP
- How to Configure IGMP
- Monitoring IGMP
- Configuration Examples for IGMP
- Additional References
- Feature History and Information for IGMP
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for IGMP and IGMP Snooping
Prerequisites for IGMP
-
Before performing the tasks in this module, you should be familiar with the concepts explained in the "IP Multicast Routing Technology Overview" module.
-
The tasks in this module assume that IP multicast has been enabled and that the Protocol Independent Multicast (PIM) interfaces have been configured using the tasks described in the "Configuring Basic IP Multicast Routing” module.
Prerequisites for IGMP Snooping
-
Configure an IP address on the VLAN interface. When enabled, the IGMP snooping querier uses the IP address as the query source address.
-
If there is no IP address configured on the VLAN interface, the IGMP snooping querier tries to use the configured global IP address for the IGMP querier. If there is no global IP address specified, the IGMP querier tries to use the VLAN device virtual interface (SVI) IP address (if one exists). If there is no SVI IP address, the device uses the first available IP address configured on the device. The first IP address available appears in the output of the show ip interface privileged EXEC command. The IGMP snooping querier does not generate an IGMP general query if it cannot find an available IP address on the device.
-
When administratively enabled, the IGMP snooping querier moves to the nonquerier state if it detects the presence of a multicast router in the network.
-
When it is administratively enabled, the IGMP snooping querier moves to the operationally disabled state under these conditions:
Restrictions for IGMP and IGMP Snooping
Restrictions for Configuring IGMP
The following are the restrictions for configuring IGMP:
-
The device supports IGMP Versions 1, 2 , and 3.
Note
For IGMP Version 3, only IGMP Version 3 BISS (Basic IGMPv3 Snooping Support) is supported.
-
IGMP Version 3 uses new membership report messages that might not be correctly recognized by older IGMP snooping devices.
-
IGMPv3 can operate with both ISM and SSM. In ISM, both exclude and include mode reports are applicable. In SSM, only include mode reports are accepted by the last-hop router. Exclude mode reports are ignored.
-
IGMP filtering and throttling is not supported under the WLAN.
-
You cannot have a device stack containing a mix of Catalyst 3850 and Catalyst 3650 devices.
Restrictions for IGMP Snooping
The following are the restrictions for IGMP snooping:
-
The device supports IGMPv3 snooping based only on the destination multicast IP address. It does not support snooping based on a source IP address or proxy report.
-
IGMPv3 join and leave messages are not supported on devices running IGMP filtering or Multicast VLAN registration (MVR).
-
IGMP report suppression is supported only when the multicast query has IGMPv1 and IGMPv2 reports. This feature is not supported when the query includes IGMPv3 reports.
-
The IGMP configurable leave time is only supported on hosts running IGMP Version 2. IGMP version 2 is the default version for the device.
The actual leave latency in the network is usually the configured leave time. However, the leave time might vary around the configured time, depending on real-time CPU load conditions, network delays and the amount of traffic sent through the interface.
-
The IGMP throttling action restriction can be applied only to Layer 2 ports. You can use ip igmp max-groups action replace interface configuration command on a logical EtherChannel interface but cannot use it on ports that belong to an EtherChannel port group.
When the maximum group limitation is set to the default (no maximum), entering the ip igmp max-groups action {deny | replace} command has no effect.
If you configure the throttling action and set the maximum group limitation after an interface has added multicast entries to the forwarding table, the forwarding-table entries are either aged out or removed, depending on the throttling action.
Information About IGMP
Role of the Internet Group Management Protocol
IGMP is used to dynamically register individual hosts in a multicast group on a particular LAN. Enabling PIM on an interface also enables IGMP. IGMP provides a means to automatically control and limit the flow of multicast traffic throughout your network with the use of special multicast queriers and hosts.
A querier is a network device, such as a router, that sends query messages to discover which network devices are members of a given multicast group.
A host is a receiver, including routers, that sends report messages (in response to query messages) to inform the querier of a host membership. Hosts use IGMP messages to join and leave multicast groups.
Hosts identify group memberships by sending IGMP messages to their local multicast device. Under IGMP, devices listen to IGMP messages and periodically send out queries to discover which groups are active or inactive on a particular subnet.
IGMP Multicast Addresses
IP multicast traffic uses group addresses, which are Class D IP addresses. The high-order four bits of a Class D address are 1110. Therefore, host group addresses can be in the range 224.0.0.0 to 239.255.255.255.
Multicast addresses in the range 224.0.0.0 to 224.0.0.255 are reserved for use by routing protocols and other network control traffic. The address 224.0.0.0 is guaranteed not to be assigned to any group.
IGMP packets are transmitted using IP multicast group addresses as follows:
IGMP general queries are destined to the address 224.0.0.1 (all systems on a subnet).
IGMP group-specific queries are destined to the group IP address for which the device is querying.
IGMP group membership reports are destined to the group IP address for which the device is reporting.
IGMPv2 leave-group messages are destined to the address 224.0.0.2 (all devices on a subnet).
IGMPv3 membership reports are destined to the address 224.0.0.22; all IGMPv3-capable multicast devices must listen to this address.
IGMP Versions
The device supports IGMP version 1, IGMP version 2, and IGMP version 3. These versions are interoperable on the device. For example, if IGMP snooping is enabled and the querier's version is IGMPv2, and the device receives an IGMPv3 report from a host, then the device can forward the IGMPv3 report to the multicast router.
An IGMPv3 device can receive messages from and forward messages to a device running the Source Specific Multicast (SSM) feature.
IGMP Version 1
IGMP version 1 (IGMPv1) primarily uses a query-response model that enables the multicast router and multilayer device to find which multicast groups are active (have one or more hosts interested in a multicast group) on the local subnet. IGMPv1 has other processes that enable a host to join and leave a multicast group. For more information, see RFC 1112.
IGMP Version 2
IGMPv2 extends IGMP functionality by providing such features as the IGMP leave process to reduce leave latency, group-specific queries, and an explicit maximum query response time. IGMPv2 also adds the capability for routers to elect the IGMP querier without depending on the multicast protocol to perform this task. For more information, see RFC 2236.
Note | IGMP version 2 is the default version for the device. |
IGMP Version 3
The device supports IGMP version 3.
An IGMPv3 device supports Basic IGMPv3 Snooping Support (BISS), which includes support for the snooping features on IGMPv1 and IGMPv2 switches and for IGMPv3 membership report messages. BISS constrains the flooding of multicast traffic when your network includes IGMPv3 hosts. It constrains traffic to approximately the same set of ports as the IGMP snooping feature on IGMPv2 or IGMPv1 hosts.
An IGMPv3 device can receive messages from and forward messages to a device running the Source Specific Multicast (SSM) feature.
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.
IGMP Versions Differences
There are three versions of IGMP, as defined by Request for Comments (RFC) documents of the Internet Engineering Task Force (IETF). IGMPv2 improves over IGMPv1 by adding the ability for a host to signal desire to leave a multicast group and IGMPv3 improves over IGMPv2 mainly by adding the ability to listen to multicast originating from a set of source IP addresses only.
IGMP Version |
Description |
---|---|
IGMPv1 |
Provides the basic query-response mechanism that allows the multicast device to determine which multicast groups are active and other processes that enable hosts to join and leave a multicast group. RFC 1112 defines the IGMPv1 host extensions for IP multicasting. |
IGMPv2 |
Extends IGMP, allowing such capabilities as the IGMP leave process, group-specific queries, and an explicit maximum response time field. IGMPv2 also adds the capability for devices to elect the IGMP querier without dependence on the multicast protocol to perform this task. RFC 2236 defines IGMPv2. |
Note | By default, enabling a PIM on an interface enables IGMPv2 on that device. IGMPv2 was designed to be as backward compatible with IGMPv1 as possible. To accomplish this backward compatibility, RFC 2236 defined special interoperability rules. If your network contains legacy IGMPv1 hosts, you should be familiar with these operability rules. For more information about IGMPv1 and IGMPv2 interoperability, see RFC 2236, Internet Group Management Protocol, Version 2 . |
Devices That Run IGMPv1
IGMPv1 devices send IGMP queries to the “all-hosts” multicast address of 224.0.0.1 to solicit multicast groups with active multicast receivers. The multicast receivers also can send IGMP reports to the device to notify it that they are interested in receiving a particular multicast stream. Hosts can send the report asynchronously or in response to the IGMP queries sent by the device. If more than one multicast receiver exists for the same multicast group, only one of these hosts sends an IGMP report message; the other hosts suppress their report messages.
In IGMPv1, there is no election of an IGMP querier. If more than one device on the segment exists, all the devices send periodic IGMP queries. IGMPv1 has no special mechanism by which the hosts can leave the group. If the hosts are no longer interested in receiving multicast packets for a particular group, they simply do not reply to the IGMP query packets sent from the device. The device continues sending query packets. If the device does not hear a response in three IGMP queries, the group times out and the device stops sending multicast packets on the segment for the group. If the host later wants to receive multicast packets after the timeout period, the host simply sends a new IGMP join to the device, and the device begins to forward the multicast packet again.
If there are multiple devices on a LAN, a designated router (DR) must be elected to avoid duplicating multicast traffic for connected hosts. PIM devices follow an election process to select a DR. The PIM device with the highest IP address becomes the DR.
The DR is responsible for the following tasks:
Devices That Run IGMPv2
IGMPv2 improves the query messaging capabilities of IGMPv1.
The query and membership report messages in IGMPv2 are identical to the IGMPv1 messages with two exceptions:
-
IGMPv2 query messages are broken into two categories: general queries (identical to IGMPv1 queries) and group-specific queries.
-
IGMPv1 membership reports and IGMPv2 membership reports have different IGMP type codes.
IGMPv2 also enhances IGMP by providing support for the following capabilities:
-
Querier election process--Provides the capability for IGMPv2 devices to elect the IGMP querier without having to rely on the multicast routing protocol to perform the process.
-
Maximum Response Time field--A new field in query messages permits the IGMP querier to specify the maximum query-response time. This field permits the tuning of the query-response process to control response burstiness and to fine-tune leave latencies.
-
Group-Specific Query messages--Permits the IGMP querier to perform the query operation on a specific group instead of all groups.
-
Leave-Group messages--Provides hosts with a method of notifying devices on the network that they wish to leave the group.
Unlike IGMPv1, in which the DR and the IGMP querier are typically the same device, in IGMPv2 the two functions are decoupled. The DR and the IGMP querier are selected based on different criteria and may be different devices on the same subnet. The DR is the device with the highest IP address on the subnet, whereas the IGMP querier is the device with the lowest IP address.
Query messages are used to elect the IGMP querier as follows:
-
When IGMPv2 devices start, they each multicast a general query message to the all-systems group address of 224.0.0.1 with their interface address in the source IP address field of the message.
-
When an IGMPv2 device receives a general query message, the device compares the source IP address in the message with its own interface address. The device with the lowest IP address on the subnet is elected the IGMP querier.
-
All devices (excluding the querier) start the query timer, which is reset whenever a general query message is received from the IGMP querier. If the query timer expires, it is assumed that the IGMP querier has gone down, and the election process is performed again to elect a new IGMP querier.
By default, the timer is two times the query interval.
IGMP Join and Leave Process
IGMP Join Process
When a host wants to join a multicast group, the host sends one or more unsolicited membership reports for the multicast group it wants to join. The IGMP join process is the same for IGMPv1 and IGMPv2 hosts.
In IGMPv3, the join process for hosts proceeds as follows:
When a hosts wants to join a group, it sends an IGMPv3 membership report to 224.0.0.22 with an empty EXCLUDE list.
When a host wants to join a specific channel, it sends an IGMPv3 membership report to 224.0.0.22 with the address of the specific source included in the INCLUDE list.
When a host wants to join a group excluding particular sources, it sends an IGMPv3 membership report to 224.0.0.22 excluding those sources in the EXCLUDE list.
Note | If some IGMPv3 hosts on a LAN wish to exclude a source and others wish to include the source, then the device will send traffic for the source on the LAN (that is, inclusion trumps exclusion in this situation). |
IGMP Leave Process
The method that hosts use to leave a group varies depending on the version of IGMP in operation.
IGMPv1 Leave Process
There is no leave-group message in IGMPv1 to notify the devices on the subnet that a host no longer wants to receive the multicast traffic from a specific group. The host simply stops processing traffic for the multicast group and ceases responding to IGMP queries with IGMP membership reports for the group. As a result, the only way IGMPv1 devices know that there are no longer any active receivers for a particular multicast group on a subnet is when the devices stop receiving membership reports. To facilitate this process, IGMPv1 devices associate a countdown timer with an IGMP group on a subnet. When a membership report is received for the group on the subnet, the timer is reset. For IGMPv1 devices, this timeout interval is typically three times the query interval (3 minutes). This timeout interval means that the device may continue to forward multicast traffic onto the subnet for up to 3 minutes after all hosts have left the multicast group.
IGMPv2 Leave Process
IGMPv2 incorporates a leave-group message that provides the means for a host to indicate that it wishes to stop receiving multicast traffic for a specific group. When an IGMPv2 host leaves a multicast group, if it was the last host to respond to a query with a membership report for that group, it sends a leave-group message to the all-devices multicast group (224.0.0.2).
IGMPv3 Leave Process
IGMPv3 enhances the leave process by introducing the capability for a host to stop receiving traffic from a particular group, source, or channel in IGMP by including or excluding sources, groups, or channels in IGMPv3 membership reports.
IGMP Snooping
Layer 2 devices can use IGMP snooping to constrain the flooding of multicast traffic by dynamically configuring Layer 2 interfaces so that multicast traffic is forwarded to only those interfaces associated with IP multicast devices. As the name implies, IGMP snooping requires the LAN device to snoop on the IGMP transmissions between the host and the router and to keep track of multicast groups and member ports. When the device receives an IGMP report from a host for a particular multicast group, the device adds the host port number to the forwarding table entry; when it receives an IGMP Leave Group message from a host, it removes the host port from the table entry. It also periodically deletes entries if it does not receive IGMP membership reports from the multicast clients.
Note | For more information on IP multicast and IGMP, see RFC 1112 and RFC 2236. |
The multicast router (which could be a device with the IP services feature set on the active device) sends out periodic general queries to all VLANs. All hosts interested in this multicast traffic send join requests and are added to the forwarding table entry. The device creates one entry per VLAN in the IGMP snooping IP multicast forwarding table for each group from which it receives an IGMP join request.
The device supports IP multicast group-based bridging, instead of MAC-addressed based groups. With multicast MAC address-based groups, if an IP address being configured translates (aliases) to a previously configured MAC address or to any reserved multicast MAC addresses (in the range 224.0.0.xxx), the command fails. Because the device uses IP multicast groups, there are no address aliasing issues.
The IP multicast groups learned through IGMP snooping are dynamic. However, you can statically configure multicast groups by using the ip igmp snooping vlan vlan-id static ip_address interface interface-id global configuration command. If you specify group membership for a multicast group address statically, your setting supersedes any automatic manipulation by IGMP snooping. Multicast group membership lists can consist of both user-defined and IGMP snooping-learned settings.
You can configure an IGMP snooping querier to support IGMP snooping in subnets without multicast interfaces because the multicast traffic does not need to be routed.
If a port spanning-tree, a port group, or a VLAN ID change occurs, the IGMP snooping-learned multicast groups from this port on the VLAN are deleted.
These sections describe IGMP snooping characteristics:
- Joining a Multicast Group
- Leaving a Multicast Group
- Immediate Leave
- IGMP Configurable-Leave Timer
- IGMP Report Suppression
- IGMP Snooping and Device Stacks
- IGMP Filtering and Throttling
Joining a Multicast Group
When a host connected to the device wants to join an IP multicast group and it is an IGMP version 2 client, it sends an unsolicited IGMP join message, specifying the IP multicast group to join. Alternatively, when the device receives a general query from the router, it forwards the query to all ports in the VLAN. IGMP version 1 or version 2 hosts wanting to join the multicast group respond by sending a join message to the device. The device CPU creates a multicast forwarding-table entry for the group if it is not already present. The CPU also adds the interface where the join message was received to the forwarding-table entry. The host associated with that interface receives multicast traffic for that multicast group.
Router A sends a general query to the device, which forwards the query to ports 2 through 5, all of which are members of the same VLAN. Host 1 wants to join multicast group 224.1.2.3 and multicasts an IGMP membership report (IGMP join message) to the group. The device CPU uses the information in the IGMP report to set up a forwarding-table entry that includes the port numbers connected to Host 1 and to the router.
The device hardware can distinguish IGMP information packets from other packets for the multicast group. The information in the table tells the switching engine to send frames addressed to the 224.1.2.3 multicast IP address that are not IGMP packets to the router and to the host that has joined the group.
Leaving a Multicast Group
The router sends periodic multicast general queries, and the device forwards these queries through all ports in the VLAN. Interested hosts respond to the queries. If at least one host in the VLAN wants to receive multicast traffic, the router continues forwarding the multicast traffic to the VLAN. The device forwards multicast group traffic only to those hosts listed in the forwarding table for that IP multicast group maintained by IGMP snooping.
When hosts want to leave a multicast group, they can silently leave, or they can send a leave message. When the device receives a leave message from a host, it sends a group-specific query to learn if any other devices connected to that interface are interested in traffic for the specific multicast group. The device then updates the forwarding table for that MAC group so that only those hosts interested in receiving multicast traffic for the group are listed in the forwarding table. If the router receives no reports from a VLAN, it removes the group for the VLAN from its IGMP cache.
Immediate Leave
The device uses IGMP snooping Immediate Leave to remove from the forwarding table an interface that sends a leave message without the device sending group-specific queries to the interface. The VLAN interface is pruned from the multicast tree for the multicast group specified in the original leave message. Immediate Leave ensures optimal bandwidth management for all hosts on a switched network, even when multiple multicast groups are simultaneously in use.
Immediate Leave is only supported on IGMP version 2 hosts. IGMP version 2 is the default version for the device.
IGMP Configurable-Leave Timer
You can configure the time that the device waits after sending a group-specific query to determine if hosts are still interested in a specific multicast group. The IGMP leave response time can be configured from 100 to 32767 milliseconds.
IGMP Report Suppression
Note | IGMP report suppression is supported only when the multicast query has IGMPv1 and IGMPv2 reports. This feature is not supported when the query includes IGMPv3 reports. |
The device uses IGMP report suppression to forward only one IGMP report per multicast router query to multicast devices. When IGMP report suppression is enabled (the default), the device sends the first IGMP report from all hosts for a group to all the multicast routers. The device does not send the remaining IGMP reports for the group to the multicast routers. This feature prevents duplicate reports from being sent to the multicast devices.
If the multicast router query includes requests only for IGMPv1 and IGMPv2 reports, the device forwards only the first IGMPv1 or IGMPv2 report from all hosts for a group to all the multicast routers.
If the multicast router query also includes requests for IGMPv3 reports, the device forwards all IGMPv1, IGMPv2, and IGMPv3 reports for a group to the multicast devices.
If you disable IGMP report suppression, all IGMP reports are forwarded to the multicast routers.
IGMP Snooping and Device Stacks
IGMP snooping functions across the device stack; that is, IGMP control information from one device is distributed to all devices in the stack. Regardless of the stack member through which IGMP multicast data enters the stack, the data reaches the hosts that have registered for that group.
If a device in the stack fails or is removed from the stack, only the members of the multicast group that are on that device will not receive the multicast data. All other members of a multicast group on other devices in the stack continue to receive multicast data streams. However, multicast groups that are common for both Layer 2 and Layer 3 (IP multicast routing) might take longer to converge if the active device is removed.
IGMP Filtering and Throttling
In some environments, for example, metropolitan or multiple-dwelling unit (MDU) installations, you might want to control the set of multicast groups to which a user on a device port can belong. You can control the distribution of multicast services, such as IP/TV, based on some type of subscription or service plan. You might also want to limit the number of multicast groups to which a user on a device port can belong.
With the IGMP filtering feature, you can filter multicast joins on a per-port basis by configuring IP multicast profiles and associating them with individual device ports. An IGMP profile can contain one or more multicast groups and specifies whether access to the group is permitted or denied. If an IGMP profile denying access to a multicast group is applied to a device port, the IGMP join report requesting the stream of IP multicast traffic is dropped, and the port is not allowed to receive IP multicast traffic from that group. If the filtering action permits access to the multicast group, the IGMP report from the port is forwarded for normal processing. You can also set the maximum number of IGMP groups that a Layer 2 interface can join.
IGMP filtering controls only group-specific query and membership reports, including join and leave reports. It does not control general IGMP queries. IGMP filtering has no relationship with the function that directs the forwarding of IP multicast traffic. The filtering feature operates in the same manner whether CGMP or MVR is used to forward the multicast traffic.
IGMP filtering applies only to the dynamic learning of IP multicast group addresses, not static configuration.
With the IGMP throttling feature, you can set the maximum number of IGMP groups that a Layer 2 interface can join. If the maximum number of IGMP groups is set, the IGMP snooping forwarding table contains the maximum number of entries, and the interface receives an IGMP join report, you can configure an interface to drop the IGMP report or to replace the randomly selected multicast entry with the received IGMP report.
Note | IGMPv3 join and leave messages are not supported on devices running IGMP filtering. |
Default IGMP Configuration
Default IGMP Snooping Configuration
TCN1 flood query count |
|
Default IGMP Filtering and Throttling Configuration
How to Configure IGMP
Configuring the Device as a Member of a Group
You can configure the device as a member of a multicast group and discover multicast reachability in a network. If all the multicast-capable routers and multilayer devices that you administer are members of a multicast group, pinging that group causes all of these devices to respond. The devices respond to ICMP echo-request packets addressed to a group of which they are members. Another example is the multicast trace-route tools provided in the software.
Caution | Performing this procedure might impact the CPU performance because the CPU will receive all data traffic for the group address. |
1.
enable
4.
ip igmp
join-group
group-address
6.
show ip igmp interface [interface-id]
7.
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 | |
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
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:
|
Step 4 | ip igmp
join-group
group-address
Example: Device(config-if)# ip igmp join-group 225.2.2.2 |
Configures the device to join a multicast group. By default, no group memberships are defined. For group-address, specify the multicast IP address in dotted decimal notation. |
Step 5 | end
Example: Device(config)# end | |
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Controlling Access to IP Multicast Group
The device sends IGMP host-query messages to find which multicast groups have members on attached local networks. The device then forwards to these group members all packets addressed to the multicast group. You can place a filter on each interface to restrict the multicast groups that hosts on the subnet serviced by the interface can join.
To limit the number of joins on the interface, configure the port for the filter which associates with the IGMP profile.
This procedure is optional.
1.
enable
3.
ip igmp profile
4.
permit
7.
ip igmp filter
filter_number
9.
show ip igmp interface [interface-id]
10.
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 | |
Step 3 | ip igmp profile
Example: Device(config)# ip igmp profile 10 Device(config-igmp-profile)# ? |
Enters an IGMP filter profile number from 1 to 4294967295. For additional information about configuring IGMP filter profiles, see Configuring IGMP Profiles. |
Step 4 | permit
Example:
Device(config-igmp-profile)#
permit 229.9.9.0
|
Enters an IGMP profile configuration action. The following IGMP profile configuration actions are supported: |
Step 5 | exit
Example: Device(config-igmp-profile)# exit | |
Step 6 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
Specifies the interface to be configured, and enters interface configuration mode. |
Step 7 | ip igmp filter
filter_number
Example:
Device(config-if)# ip igmp filter 10
|
Specifies the IGMP filter profile number. For additional information about applying IGMP filter profiles, see Applying IGMP Profiles. |
Step 8 | end
Example: Device(config)# end | |
Step 9 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |
Step 10 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Changing the IGMP Version
By default, the switch uses IGMP Version 2, which provides features such as the IGMP query timeout and the maximum query response time.
All systems on the subnet must support the same version. The switch does not automatically detect Version 1 systems and switch to Version 1. You can mix Version 1 and Version 2 hosts on the subnet because Version 2 routers or switches always work correctly with IGMPv1 hosts.
Configure the switch for Version 1 if your hosts do not support Version 2.
This procedure is optional.
1.
enable
4.
ip igmp version {1
|
2 |
3
}
6.
show ip igmp interface [interface-id]
7.
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 | |||
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
Specifies the interface to be configured, and enters the interface configuration mode. | ||
Step 4 | ip igmp version {1
|
2 |
3
}
Example: Device(config-if)# ip igmp version 2 | Specifies the
IGMP version that the switch uses.
To return to the default setting, use the no ip igmp version interface configuration command. | ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Modifying the IGMP Host-Query Message Interval
The device periodically sends IGMP host-query messages to discover which multicast groups are present on attached networks. These messages are sent to the all-hosts multicast group (224.0.0.1) with a time-to-live (TTL) of 1. The device sends host-query messages to refresh its knowledge of memberships present on the network. If, after some number of queries, the software discovers that no local hosts are members of a multicast group, the software stops forwarding multicast packets to the local network from remote origins for that group and sends a prune message upstream toward the source.
The device elects a PIM designated router (DR) for the LAN (subnet). The designated router is responsible for sending IGMP host-query messages to all hosts on the LAN. In sparse mode, the designated router also sends PIM register and PIM join messages toward the RP router. With IGMPv2, the DR is the router or multilayer device with the highest IP address. With IGMPv1, the DR is elected according to the multicast routing protocol that runs on the LAN.
1.
enable
4.
ip igmp
query-interval
seconds
6.
show ip igmp interface [interface-id]
7.
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 | |
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
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:
|
Step 4 | ip igmp
query-interval
seconds
Example: Device(config-if)# ip igmp query-interval 75 |
Configures the frequency at which the designated router sends IGMP host-query messages. By default, the designated router sends IGMP host-query messages every 60 seconds to keep the IGMP overhead very low on hosts and networks. The range is 1 to 65535. |
Step 5 | end
Example: Device(config)# end | |
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Changing the IGMP Query Timeout for IGMPv2
If you are using IGMPv2, you can specify the period of time before the device takes over as the querier for the interface. By default, the device waits twice the query interval period controlled by the ip igmp query-interval interface configuration command. After that time, if the device has received no queries, it becomes the querier.
1.
enable
4.
ip igmp
querier-timeout
seconds
6.
show ip igmp interface [interface-id]
7.
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 | |
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
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:
|
Step 4 | ip igmp
querier-timeout
seconds
Example: Device(config-if)# ip igmp querier-timeout 120 |
Specifies the IGMP query timeout. The default is 60 seconds (twice the query interval). The range is 60 to 300. |
Step 5 | end
Example: Device(config)# end | |
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Changing the Maximum Query Response Time for IGMPv2
If you are using IGMPv2, you can change the maximum query response time advertised in IGMP queries. The maximum query response time enables the device to quickly detect that there are no more directly connected group members on a LAN. Decreasing the value enables the device to prune groups faster.
1.
enable
4.
ip igmp
query-max-response-time
seconds
6.
show ip igmp interface [interface-id]
7.
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 | |
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
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:
|
Step 4 | ip igmp
query-max-response-time
seconds
Example: Device(config-if)# ip igmp query-max-response-time 15 |
Changes the maximum query response time advertised in IGMP queries. |
Step 5 | end
Example: Device(config)# end | |
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface | |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring the Device as a Statically Connected Member
At various times, either there is not a group member on a network segment or a host that cannot report its group membership by using IGMP. However, you may want multicast traffic to be sent to that network segment. The following commands are used to pull multicast traffic down to a network segment:
-
ip igmp join-group—The device accepts the multicast packets in addition to forwarding them. Accepting the multicast packets prevents the device from fast switching.
-
ip igmp static-group—The device does not accept the packets itself, but only forwards them. This method enables fast switching. The outgoing interface appears in the IGMP cache, but the device itself is not a member, as evidenced by lack of an L (local) flag in the multicast route entry.
1.
enable
4.
ip igmp
static-group
group-address
6.
show ip igmp interface [interface-id]
7.
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 | |
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
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:
|
Step 4 | ip igmp
static-group
group-address
Example: Device(config-if)# ip igmp static-group 239.100.100.101 |
Configures the device as a statically connected member of a group. |
Step 5 | end
Example: Device(config)# end | |
Step 6 | show ip igmp interface [interface-id]
Example: Device# show ip igmp interface gigabitethernet 1/0/1 | |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring IGMP Profiles
Follow these steps to create an IGMP profile:
This task is optional.
1.
enable
3.
ip igmp
profile
profile number
7.
show ip igmp
profile
profile number
9.
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 | |||
Step 3 | ip igmp
profile
profile number
Example: Device(config)# ip igmp profile 3 |
The default is for the device to have no IGMP profiles configured.
| ||
Step 4 | permit |
deny
Example: Device(config-igmp-profile)# permit |
(Optional) Sets the action to permit or deny access to the IP multicast address. If no action is configured, the default for the profile is to deny access. | ||
Step 5 | range
ip multicast
address
Example: Device(config-igmp-profile)# range 229.9.9.0 |
Enters the IP multicast address or range of IP multicast addresses to which access is being controlled. If entering a range, enter the low IP multicast address, a space, and the high IP multicast address. You can use the range command multiple times to enter multiple addresses or ranges of addresses.
| ||
Step 6 | end
Example: Device(config)# end | |||
Step 7 | show ip igmp
profile
profile number
Example: Device# show ip igmp profile 3 | |||
Step 8 | show running-config
Example: Device# show running-config | |||
Step 9 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Applying IGMP Profiles
To control access as defined in an IGMP profile, you have to apply the profile to the appropriate interfaces. You can apply IGMP profiles only to Layer 2 access ports; you cannot apply IGMP profiles to routed ports or SVIs. You cannot apply profiles to ports that belong to an EtherChannel port group. You can apply a profile to multiple interfaces, but each interface can have only one profile applied to it.
Follow these steps to apply an IGMP profile to a switch port:
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 | |||
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet1/0/1 |
Specifies the physical interface, and enters interface configuration mode. The interface must be a Layer 2 port that does not belong to an EtherChannel port group. | ||
Step 4 | ip igmp
filter
profile number
Example: Device(config-if)# ip igmp filter 321 |
Applies the specified IGMP profile to the interface. The range is 1 to 4294967295.
| ||
Step 5 | end
Example: Device(config-if)# end | |||
Step 6 | show running-config
Example: Device# show running-config | |||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Setting the Maximum Number of IGMP Groups
Follow these steps to set the maximum number of IGMP groups that a Layer 2 interface can join:
This restriction can be applied to Layer 2 ports only; you cannot set a maximum number of IGMP groups on routed ports or SVIs. You also can use this command on a logical EtherChannel interface but cannot use it on ports that belong to an EtherChannel port group.
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 | |||
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet1/0/2 |
Specifies the interface to be configured, and enters interface configuration mode. The interface can be a Layer 2 port that does not belong to an EtherChannel group or a EtherChannel interface. | ||
Step 4 | ip igmp
max-groups
number
Example: Device(config-if)# ip igmp max-groups 20 |
Sets the maximum number of IGMP groups that the interface can join. The range is 0 to 4294967294. The default is to have no maximum set.
| ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show
running-config interface
interface-id
Example: Device# show running-config interface gigabitethernet1/0/1 | |||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring the IGMP Throttling Action
After you set the maximum number of IGMP groups that a Layer 2 interface can join, you can configure an interface to replace the existing group with the new group for which the IGMP report was received.
Follow these steps to configure the throttling action when the maximum number of entries is in the forwarding table:
1.
enable
4.
ip igmp max-groups
action {deny |
replace}
6.
show
running-config interface
interface-id
7.
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 | |||
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
Specifies the physical interface to be configured, and enters interface configuration mode. The interface can be a Layer 2 port that does not belong to an EtherChannel group or an EtherChannel interface. The interface cannot be a trunk port. | ||
Step 4 | ip igmp max-groups
action {deny |
replace}
Example: Device(config-if)# ip igmp max-groups action replace |
When an interface receives an IGMP report and the maximum number of entries is in the forwarding table, specifies the action that the interface takes:
To prevent the device from removing the forwarding-table entries, you can configure the IGMP throttling action before an interface adds entries to the forwarding table.
| ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show
running-config interface
interface-id
Example: Device# show running-config interface gigabitethernet1/0/1 | |||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring the Device to Forward Multicast Traffic in the Absence of Directly Connected IGMP Hosts
Perform this optional task to configure the device to forward multicast traffic in the absence of directly connected IGMP hosts.
1.
enable
2.
configure
terminal
3.
interface
type
number
5.
end
6.
show
ip
igmp
interface
[interface-type
interface-number]
7.
copy running-config
startup-config
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example:
Device> enable
|
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example:
Device# configure terminal
|
Enters global configuration mode. |
Step 3 |
interface
type
number
Example:
Device(config)# interface gigabitethernet 1
|
Enters interface configuration mode. |
Step 4 | Do one of the
following:
Example:
Device(config-if)# ip igmp join-group 225.2.2.2
Example:
Device(config-if)# ip igmp static-group 225.2.2.2
|
|
Step 5 |
end
Example:
Device(config-if)# end
|
Returns to privileged EXEC mode. |
Step 6 |
show
ip
igmp
interface
[interface-type
interface-number]
Example:
Device# show ip igmp interface
|
(Optional) Displays multicast-related information about an interface. |
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Step 8 | show running-config
Example: Device# show running-config |
Controlling Access to an SSM Network Using IGMP Extended Access Lists
Perform this optional task to control access to an SSM network by using an IGMP extended access list that filters SSM traffic based on source address, group address, or both.
1.
enable
2.
configure
terminal
3.
ip
multicast-routing
[distributed]
4.
ip
pim
ssm
{default |
range
access-list}
5.
ip
access-list
extended
access-list
-name
6.
deny
igmp
source
source-wildcard
destination
destination-wildcard
[igmp-type] [precedence
precedence] [tos
tos] [log] [time-range
time-range-name] [fragments]
7.
permit
igmp
source
source-wildcard
destination
destination-wildcard
[igmp-type] [precedence
precedence] [tos
tos] [log] [time-range
time-range-name] [fragments]
8.
exit
9. interface type number
10.
ip
igmp
access-group
access-list
11.
ip
pim
sparse-mode
12. Repeat Steps 1 through 11 on all interfaces that require access control of SSM channel membership.
13.
ip
igmp
version
3
14. Repeat Step 13 on all host-facing interfaces.
15.
end
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. | ||
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. | ||
Step 3 |
ip
multicast-routing
[distributed]
Example: Device(config)# ip multicast-routing distributed |
Enables IP multicast routing. | ||
Step 4 |
ip
pim
ssm
{default |
range
access-list}
Example: Device(config)# ip pim ssm default |
Configures SSM service. | ||
Step 5 |
ip
access-list
extended
access-list
-name
Example: Device(config)# ip access-list extended mygroup |
Specifies an extended named IP access list. | ||
Step 6 |
deny
igmp
source
source-wildcard
destination
destination-wildcard
[igmp-type] [precedence
precedence] [tos
tos] [log] [time-range
time-range-name] [fragments]
Example: Device(config-ext-nacl)# deny igmp host 10.1.2.3 any |
(Optional) Filters the specified source address or group address from the IGMP report, thereby restricting hosts on a subnet from membership to the (S, G) channel.
| ||
Step 7 |
permit
igmp
source
source-wildcard
destination
destination-wildcard
[igmp-type] [precedence
precedence] [tos
tos] [log] [time-range
time-range-name] [fragments]
Example: Device(config-ext-nacl)# permit igmp any any |
Allows a source address or group address in an IGMP report to pass the IP access list. | ||
Step 8 |
exit
Example: Device(config-ext-nacl)# exit |
Exits the current configuration session and returns to global configuration mode. | ||
Step 9 | interface type number
Example: Device(config)# interface ethernet 0 |
Selects an interface that is connected to hosts on which IGMPv3 can be enabled. | ||
Step 10 |
ip
igmp
access-group
access-list
Example: Device(config-if)# ip igmp access-group mygroup |
Applies the specified access list to IGMP reports. | ||
Step 11 |
ip
pim
sparse-mode
Example: Device(config-if)# ip pim sparse-mode |
Enables PIM-SM on the interface.
| ||
Step 12 | Repeat Steps 1 through 11 on all interfaces that require access control of SSM channel membership. |
-- | ||
Step 13 |
ip
igmp
version
3
Example: Device(config-if)# ip igmp version 3 |
Enables IGMPv3 on this interface. The default version of IGMP is IGMP version 2. Version 3 is required by SSM. | ||
Step 14 | Repeat Step 13 on all host-facing interfaces. |
-- | ||
Step 15 |
end
Example: Device(config-if)# end |
Returns to privileged EXEC mode. |
How to Configure IGMP Snooping
Enabling IGMP Snooping
1.
enable
2.
configure terminal
3.
ip igmp snooping
4.
bridge-domain
bridge-id
5.
ip igmp snooping
6.
end
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 | configure terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 | ip igmp snooping
Example: Device(config)# ip igmp snooping |
Globally enables IGMP snooping after it has been disabled. |
Step 4 |
bridge-domain
bridge-id
Example: Device(config)# bridge-domain 100 |
(Optional) Enters bridge domain configuration mode. |
Step 5 |
ip igmp snooping
Example: Device(config-bdomain)# ip igmp snooping |
(Optional) Enables IGMP snooping on the bridge domain interface being configured. |
Step 6 |
end
Example: Device(config-bdomain)# end |
Returns to privileged EXEC mode. |
Enabling or Disabling IGMP Snooping on a VLAN Interface
Follow these steps to enable IGMP snooping on a VLAN interface:
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 | |||
Step 3 | ip igmp snooping
vlan
vlan-id
Example: Device(config)# ip igmp snooping vlan 7 |
Enables IGMP snooping on the VLAN interface. The VLAN ID range is 1 to 1001 and 1006 to 4094. IGMP snooping must be globally enabled before you can enable VLAN snooping.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Setting the Snooping Method
Multicast-capable router ports are added to the forwarding table for every Layer 2 multicast entry. The device learns of the ports through one of these methods:
-
Snooping on IGMP queries, Protocol-Independent Multicast (PIM) packets
-
Statically connecting to a multicast router port using the ip igmp snooping mrouter global configuration command
Beginning in privileged EXEC mode, follow these steps to alter the method in which a VLAN interface accesses a multicast router:
1.
enable
3.
ip igmp snooping vlan
vlan-id
mrouter
interface {GigabitEthernet |
Port-Channel |
TenGigabitEthernet}
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example:
Device> enable
|
Enables privileged EXEC mode. |
Step 2 | configure
terminal
Example: Device# configure terminal | |
Step 3 | ip igmp snooping vlan
vlan-id
mrouter
interface {GigabitEthernet |
Port-Channel |
TenGigabitEthernet}
Example:
Device(config)# ip igmp snooping
vlan 1 mrouter interface GigabitEthernet1/0/3
|
Enables IGMP snooping on a VLAN. The VLAN ID range is 1 to 1001 and 1006 to 4094. |
Step 4 | end
Example: Device(config)# end | |
Step 5 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |
Step 6 | copy
running-config startup-config
Example: Device# copy running-config startup-config |
Configuring a Multicast Router Port
Perform these steps to add a multicast router port (enable a static connection to a multicast router) on the device.
Note | Static connections to multicast routers are supported only on device ports. |
1.
enable
3.
ip igmp snooping
vlan
vlan-id
mrouter interface
interface-id
5.
show ip igmp snooping
mrouter [vlan
vlan-id]
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 | |||
Step 3 | ip igmp snooping
vlan
vlan-id
mrouter interface
interface-id
Example: Device(config)# ip igmp snooping vlan 5 mrouter interface gigabitethernet1/0/1 |
Specifies the multicast router VLAN ID and the interface to the multicast router.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp snooping
mrouter [vlan
vlan-id]
Example: Device# show ip igmp snooping mrouter vlan 5 |
Verifies that IGMP snooping is enabled on the VLAN interface. | ||
Step 6 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring a Host Statically to Join a Group
Hosts or Layer 2 ports normally join multicast groups dynamically, but you can also statically configure a host on an interface.
Follow these steps to add a Layer 2 port as a member of a multicast group:
1.
enable
3.
ip igmp snooping
vlan
vlan-id
static
ip_address
interface
interface-id
5.
show ip igmp
snooping groups
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 | |||
Step 3 | ip igmp snooping
vlan
vlan-id
static
ip_address
interface
interface-id
Example: Device(config)# ip igmp snooping vlan 105 static 230.0.0.1 interface gigabitethernet1/0/1 |
Statically configures a Layer 2 port as a member of a multicast group:
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp
snooping groups
Example: Device# show ip igmp snooping groups | |||
Step 6 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Enabling IGMP Immediate Leave
When you enable IGMP Immediate Leave, the device immediately removes a port when it detects an IGMP Version 2 leave message on that port. You should use the Immediate-Leave feature only when there is a single receiver present on every port in the VLAN.
Note | Immediate Leave is supported only on IGMP Version 2 hosts. IGMP Version 2 is the default version for the device. |
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 | |||
Step 3 | ip igmp snooping
vlan
vlan-id
immediate-leave
Example: Device(config)# ip igmp snooping vlan 21 immediate-leave |
Enables IGMP Immediate Leave on the VLAN interface.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp
snooping vlan
vlan-id
Example: Device# show ip igmp snooping vlan 21 |
Verifies that Immediate Leave is enabled on the VLAN interface. | ||
Step 6 | end
Example: Device(config)# end |
Configuring the IGMP Leave Timer
You can configure the leave time globally or on a per-VLAN basis. Follow these steps to enable the IGMP configurable-leave timer:
1.
enable
3.
ip igmp snooping
last-member-query-interval
time
4.
ip igmp snooping
vlan
vlan-id
last-member-query-interval
time
7.
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 | |||||
Step 3 | ip igmp snooping
last-member-query-interval
time
Example: Device(config)# ip igmp snooping last-member-query-interval 1000 |
Configures the IGMP leave timer globally. The range is 100 to 32767 milliseconds. The default leave time is 1000 milliseconds.
| ||||
Step 4 | ip igmp snooping
vlan
vlan-id
last-member-query-interval
time
Example: Device(config)# ip igmp snooping vlan 210 last-member-query-interval 1000 |
(Optional) Configures the IGMP leave time on the VLAN interface. The range is 100 to 32767 milliseconds.
| ||||
Step 5 | end
Example: Device(config)# end | |||||
Step 6 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |||||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring the IGMP Robustness-Variable
Use the following procedure to configure the IGMP robustness variable on the device.
The robustness variable is the integer used by IGMP snooping during calculations for IGMP messages. The robustness variable provides fine tuning to allow for expected packet loss.
1.
enable
3.
ip igmp snooping
robustness-variable
count
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable
Example:
Device> enable
|
Enables privileged EXEC mode. | ||
Step 2 | configure
terminal
Example: Device# configure terminal | |||
Step 3 | ip igmp snooping
robustness-variable
count
Example: Device(config)# ip igmp snooping robustness-variable 3 |
Configures the IGMP robustness variable. The range is 1 to 3 times. The recommended value for the robustness variable is 2. Use this command to change the value of the robustness variable for IGMP snooping from the default (2) to a specified value. | ||
Step 4 | ip igmp snooping
vlan
vlan-id
robustness-variable
count
Example: Device(config)#ip igmp snooping vlan 100 robustness-variable 3 |
(Optional) Configures the IGMP robustness variable on the VLAN interface. The range is 1 to 3 times. The recommended value for the robustness variable is 2.
| ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show ip igmp
snooping
Example: Device# show ip igmp snooping |
(Optional) Displays the configured IGMP robustness variable count. | ||
Step 7 | copy
running-config startup-config
Example: Device# copy running-config startup-config |
Configuring the IGMP Last Member Query Count
To configure the number of times the device sends IGMP group-specific or group-source-specific (with IGMP version 3) query messages in response to receiving a group-specific or group-source-specific leave message, use this command.
1.
enable
3.
ip igmp snooping
last-member-query-count
count
4.
ip igmp snooping
vlan
vlan-id
last-member-query-count
count
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable
Example:
Device> enable
|
Enables privileged EXEC mode. | ||
Step 2 | configure
terminal
Example: Device# configure terminal | |||
Step 3 | ip igmp snooping
last-member-query-count
count
Example: Device(config)# ip igmp snooping last-member-query-count 3 |
Configures the IGMP last member query count. The range is 1 to 7 messages. The default is 2 messages. | ||
Step 4 | ip igmp snooping
vlan
vlan-id
last-member-query-count
count
Example: Device(config)#ip igmp snooping vlan 100 last-member-query-count 3 |
(Optional) Configures the IGMP last member query count on the VLAN interface. The range is 1 to 7 messages.
| ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show ip igmp
snooping
Example: Device# show ip igmp snooping |
(Optional) Displays the configured IGMP last member query count. | ||
Step 7 | copy
running-config startup-config
Example: Device# copy running-config startup-config |
Configuring TCN-Related Commands
Controlling the Multicast Flooding Time After a TCN Event
You can configure the number of general queries by which multicast data traffic is flooded after a topology change notification (TCN) event. If you set the TCN flood query count to 1 the flooding stops after receiving 1 general query. If you set the count to 7, the flooding continues until 7 general queries are received. Groups are relearned based on the general queries received during the TCN event.
Some examples of TCN events are when the client location is changed and the receiver is on same port that was blocked but is now forwarding, and when a port goes down without sending a leave message.
Follow these steps to configure the TCN flood query count:
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 | |||
Step 3 | ip igmp snooping
tcn flood query count
count
Example: Device(config)# ip igmp snooping tcn flood query count 3 |
Specifies the number of IGMP general queries for which the multicast traffic is flooded. The range is 1 to 10. The default, the flooding query count is 2.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |||
Step 6 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Recovering from Flood Mode
When a topology change occurs, the spanning-tree root sends a special IGMP leave message (also known as global leave) with the group multicast address 0.0.0.0. However, you can enable the device to send the global leave message whether it is the spanning-tree root or not. When the router receives this special leave, it immediately sends general queries, which expedite the process of recovering from the flood mode during the TCN event. Leaves are always sent if the device is the spanning-tree root regardless of this configuration.
Follow these steps to enable sending of leave messages:
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 | |||
Step 3 | ip igmp snooping
tcn query solicit
Example: Device(config)# ip igmp snooping tcn query solicit |
Sends an IGMP leave message (global leave) to speed the process of recovering from the flood mode caused during a TCN event. By default, query solicitation is disabled.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |||
Step 6 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Disabling Multicast Flooding During a TCN Event
When the device receives a TCN, multicast traffic is flooded to all the ports until 2 general queries are received. If the device has many ports with attached hosts that are subscribed to different multicast groups, this flooding might exceed the capacity of the link and cause packet loss. Follow these steps to control TCN flooding:
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 | |||
Step 3 | interface
interface-id
Example: Device(config)# interface gigabitethernet 1/0/1 |
Specifies the interface to be configured, and enters interface configuration mode. | ||
Step 4 | no ip igmp
snooping tcn flood
Example: Device(config-if)# no ip igmp snooping tcn flood |
Disables the flooding of multicast traffic during a spanning-tree TCN event. By default, multicast flooding is enabled on an interface.
| ||
Step 5 | end
Example: Device(config)# end | |||
Step 6 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |||
Step 7 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Configuring the IGMP Snooping Querier
Follow these steps to enable the IGMP snooping querier feature in a VLAN:
1.
enable
4.
ip igmp snooping
querier address
ip_address
5.
ip igmp snooping
querier query-interval
interval-count
6.
ip igmp snooping querier tcn
query [count
count | interval
interval]
7.
ip igmp snooping
querier timer expiry
timeout
8.
ip igmp snooping
querier version
version
10.
show ip igmp
snooping vlan
vlan-id
11.
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 | |||
Step 3 | ip igmp snooping
querier
Example: Device(config)# ip igmp snooping querier | |||
Step 4 | ip igmp snooping
querier address
ip_address
Example: Device(config)# ip igmp snooping querier address 172.16.24.1 |
(Optional) Specifies an IP address for the IGMP snooping querier. If you do not specify an IP address, the querier tries to use the global IP address configured for the IGMP querier.
| ||
Step 5 | ip igmp snooping
querier query-interval
interval-count
Example: Device(config)# ip igmp snooping querier query-interval 30 |
(Optional) Sets the interval between IGMP queriers. The range is 1 to 18000 seconds. | ||
Step 6 | ip igmp snooping querier tcn
query [count
count | interval
interval]
Example: Device(config)# ip igmp snooping querier tcn query interval 20 |
(Optional) Sets the time between Topology Change Notification (TCN) queries. The count range is 1 to 10. The interval range is 1 to 255 seconds. | ||
Step 7 | ip igmp snooping
querier timer expiry
timeout
Example: Device(config)# ip igmp snooping querier timer expiry 180 |
(Optional) Sets the length of time until the IGMP querier expires. The range is 60 to 300 seconds. | ||
Step 8 | ip igmp snooping
querier version
version
Example: Device(config)# ip igmp snooping querier version 2 |
(Optional) Selects the IGMP version number that the querier feature uses. Select 1 or 2. | ||
Step 9 | end
Example: Device(config)# end | |||
Step 10 | show ip igmp
snooping vlan
vlan-id
Example: Device# show ip igmp snooping vlan 30 |
(Optional) Verifies that the IGMP snooping querier is enabled on the VLAN interface. The VLAN ID range is 1 to 1001 and 1006 to 4094. | ||
Step 11 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Disabling IGMP Report Suppression
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 | |||
Step 3 | no ip igmp
snooping report-suppression
Example: Device(config)# no ip igmp snooping report-suppression |
Disables IGMP report suppression. When report suppression is disabled, all IGMP reports are forwarded to the multicast routers. IGMP report suppression is enabled by default.
| ||
Step 4 | end
Example: Device(config)# end | |||
Step 5 | show ip igmp
snooping
Example: Device# show ip igmp snooping | |||
Step 6 | copy running-config
startup-config
Example:
Device# copy running-config startup-config
|
(Optional) Saves your entries in the configuration file. |
Monitoring IGMP
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.
Command |
Purpose |
---|---|
show ip igmp filter |
Displays IGMP filter information. |
Displays the multicast groups that are directly connected to the device and that were learned through IGMP. |
|
show ip igmp membership [ name/group address | all | tracked ] |
Displays IGMP membership information for forwarding. |
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 vrf |
Displays the selected VPN routing/forwarding instance by name. |
Monitoring IGMP Snooping Information
You can display IGMP snooping information for dynamically learned and statically configured router ports and VLAN interfaces. You can also display MAC address multicast entries for a VLAN configured for IGMP snooping.
Command |
Purpose |
||
---|---|---|---|
show ip igmp snooping detail |
Displays the operational state information. |
||
show ip igmp snooping groups [ count | [vlan vlan-id [A.B.C.D | count ] ] |
Displays multicast table information for the device or about a specific parameter: |
||
show ip igmp snooping igmpv2-tracking |
Displays the IGMP snooping tracking.
|
||
Displays information on dynamically learned and manually configured multicast router interfaces.
(Optional) Enter vlan vlan-id to display information for a single VLAN. |
|||
Displays information about the IP address and receiving port for the most-recently received IGMP query messages in the VLAN. (Optional) Enter detail to display the detailed IGMP querier information in a VLAN. (Optional) Enter vlan vlan-id to display information for a single VLAN. |
|||
Displays the snooping configuration information for all VLANs on the device or for a specified VLAN. (Optional) Enter vlan vlan-id to display information for a single VLAN. The VLAN ID range is 1 to 1001 and 1006 to 4094. |
|||
show ip igmp snooping wireless mgid |
Displays wireless-related events. |
Monitoring IGMP Filtering and Throttling Configuration
You can display IGMP profile characteristics, and you can display the IGMP profile and maximum group configuration for all interfaces on the device or for a specified interface. You can also display the IGMP throttling configuration for all interfaces on the device or for a specified interface.
Command |
Purpose |
---|---|
show ip igmp profile [profile number] |
Displays the specified IGMP profile or all the IGMP profiles defined on the device. |
Displays the configuration of the specified interface or the configuration of all interfaces on the device, including (if configured) the maximum number of IGMP groups to which an interface can belong and the IGMP profile applied to the interface. |
Configuration Examples for IGMP
Example: Configuring the Device as a Member of a Multicast Group
This example shows how to enable the device to join multicast group 255.2.2.2:
Device(config)# interface gigabitethernet1/0/1 Device(config-if)# ip igmp join-group 255.2.2.2 Device(config-if)#
Example: Controlling Access to Multicast Groups
To limit the number of joins on the interface, configure the port for filter which associates with the IGMP profile.
Device# configure terminal Device(config)# ip igmp profile 10 Device(config-igmp-profile)# ? IGMP profile configuration commands: deny matching addresses are denied exit Exit from igmp profile configuration mode no Negate a command or set its defaults permit matching addresses are permitted range add a range to the set Device(config-igmp-profile)# range 172.16.5.1 Device(config-igmp-profile)# exit Device(config)# Device(config)# interface gigabitEthernet 2/0/10 Device(config-if)# ip igmp filter 10
Examples: Configuring IGMP Snooping
This example shows how to enable a static connection to a multicast router:
Device# configure terminal Device(config)# ip igmp snooping vlan 200 mrouter interface gigabitethernet1/0/2 Device(config)# end
This example shows how to statically configure a host on a port:
Device# configure terminal Device(config)# ip igmp snooping vlan 105 static 224.2.4.12 interface gigabitethernet1/0/1 Device(config)# end
This example shows how to enable IGMP Immediate Leave on VLAN 130:
Device# configure terminal Device(config)# ip igmp snooping vlan 130 immediate-leave Device(config)# end
This example shows how to set the IGMP snooping querier source address to 10.0.0.64:
Device# configure terminal Device(config)# ip igmp snooping querier 10.0.0.64 Device(config)# end
This example shows how to set the IGMP snooping querier maximum response time to 25 seconds:
Device# configure terminal Device(config)# ip igmp snooping querier query-interval 25 Device(config)# end
This example shows how to set the IGMP snooping querier timeout to 60 seconds:
Device# configure terminal Device(config)# ip igmp snooping querier timer expiry 60 Device(config)# end
This example shows how to set the IGMP snooping querier feature to Version 2:
Device# configure terminal Device(config)# no ip igmp snooping querier version 2 Device(config)# end
Example: Configuring IGMP Profiles
Device(config)# ip igmp profile 4 Device(config-igmp-profile)# permit Device(config-igmp-profile)# range 229.9.9.0 Device(config-igmp-profile)# end Device# show ip igmp profile 4 IGMP Profile 4 permit range 229.9.9.0 229.9.9.0
Example: Applying IGMP Profile
Device(config)# interface gigabitethernet1/0/2 Device(config-if)# ip igmp filter 4 Device(config-if)# end
Example: Setting the Maximum Number of IGMP Groups
Device(config)# interface gigabitethernet1/0/2 Device(config-if)# ip igmp max-groups 25 Device(config-if)# end
Example: Interface Configuration as a Routed Port
This example shows how to configure an interface on the device as a routed port. This configuration is required on the interface for several IP multicast routing configuration procedures that require running the no switchport command.
Device configure terminal Device(config)# interface GigabitEthernet1/0/9 Device(config-if)# description interface to be use as routed port Device(config-if)# no switchport Device(config-if)# ip address 20.20.20.1 255.255.255.0 Device(config-if)# ip pim sparse-dense-mode Device(config-if)# ip igmp join-group 224.1.2.3 source 15.15.15.2 Device(config-if)# end Device# configure terminal Device# show run interface gigabitEthernet 1/0/9 Current configuration : 166 bytes ! interface GigabitEthernet1/0/9 no switchport ip address 20.20.20.1 255.255.255.0 ip pim sparse-dense-mode ip igmp static-group 224.1.2.3 source 15.15.15.2 end
Example: Interface Configuration as an SVI
This example shows how to configure an interface on the device as an SVI. This configuration is required on the interface for several IP multicast routing configuration procedures that require running the no switchport command.
Device(config)# interface vlan 150 Device(config-if)# ip address 20.20.20.1 255.255.255.0 Device(config-if)# ip pim sparse-dense-mode Device(config-if)# ip igmp join-group 224.1.2.3 source 15.15.15.2 Device(config-if)# end Device# configure terminal Device(config)# ip igmp snooping vlan 20 static 224.1.2.3 interface gigabitEthernet 1/0/9 Device# show run interface vlan 150 Current configuration : 137 bytes ! interface Vlan150 ip address 20.20.20.1 255.255.255.0 ip pim sparse-dense-mode ip igmp static-group 224.1.2.3 source 15.15.15.2 end
Example: Configuring the Device to Forward Multicast Traffic in the Absence of Directly Connected IGMP Hosts
The following example shows how to configure a device to forward multicast traffic in the absence of directly connected IGMP hosts using the ip igmp join-group command. With this method, the device accepts the multicast packets in addition to forwarding them. Accepting the multicast packets prevents the device from fast switching.
In this example, Fast Ethernet interface 0/0/0 on the device is configured to join the group 225.2.2.2:
interface FastEthernet0/0/0 ip igmp join-group 225.2.2.2
The following example shows how to configure a device to forward multicast traffic in the absence of directly connected IGMP hosts using the ip igmp static-group command. With this method, the device does not accept the packets itself, but only forwards them. Hence, this method allows fast switching. The outgoing interface appears in the IGMP cache, but the device itself is not a member, as evidenced by lack of an “L” (local) flag in the multicast route entry.
In this example, static group membership entries for group 225.2.2.2 are configured on Fast Ethernet interface 0/1/0:
interface FastEthernet0/1/0 ip igmp static-group 225.2.2.2
Controlling Access to an SSM Network Using IGMP Extended Access Lists
This section contains the following configuration examples for controlling access to an SSM network using IGMP extended access lists:
Note | Keep in mind that access lists are very flexible: there are many combinations of permit and deny statements one could use in an access list to filter multicast traffic. The examples in this section simply provide a few examples of how it can be done. |
- Example: Denying All States for a Group G
- Example: Denying All States for a Source S
- Example: Permitting All States for a Group G
- Example: Permitting All States for a Source S
- Example: Filtering a Source S for a Group G
Example: Denying All States for a Group G
The following example shows how to deny all states for a group G. In this example, Fast Ethernet interface 0/0/0 is configured to filter all sources for SSM group 232.2.2.2 in IGMPv3 reports, which effectively denies this group.
ip access-list extended test1 deny igmp any host 232.2.2.2 permit igmp any any ! interface FastEthernet0/0/0 ip igmp access-group test1
Example: Denying All States for a Source S
The following example shows how to deny all states for a source S. In this example, Gigabit Ethernet interface 1/1/0 is configured to filter all groups for source 10.2.1.32 in IGMPv3 reports, which effectively denies this source.
ip access-list extended test2 deny igmp host 10.2.1.32 any permit igmp any any ! interface GigabitEthernet1/1/0 ip igmp access-group test2
Example: Permitting All States for a Group G
The following example shows how to permit all states for a group G. In this example, Gigabit Ethernet interface 1/2/0 is configured to accept all sources for SSM group 232.1.1.10 in IGMPv3 reports, which effectively accepts this group altogether.
ip access-list extended test3 permit igmp any host 232.1.1.10 ! interface GigabitEthernet1/2/0 ip igmp access-group test3
Example: Permitting All States for a Source S
The following example shows how to permit all states for a source S. In this example, Gigabit Ethernet interface 1/2 is configured to accept all groups for source 10.6.23.32 in IGMPv3 reports, which effectively accepts this source altogether.
ip access-list extended test4 permit igmp host 10.6.23.32 any ! interface GigabitEthernet1/2/0 ip igmp access-group test4
Example: Filtering a Source S for a Group G
The following example shows how to filter a particular source S for a group G. In this example, Gigabit Ethernet interface 0/3/0 is configured to filter source 232.2.2.2 for SSM group 232.2.30.30 in IGMPv3 reports.
ip access-list extended test5 deny igmp host 10.4.4.4 host 232.2.30.30 permit igmp any any ! interface GigabitEthernet0/3/0 ip igmp access-group test5
Additional References
Related Documents
Related Topic | Document Title |
---|---|
For complete syntax and usage information for the commands used in this chapter. |
IP Multicast Routing Command Reference (Catalyst 3650 Switches) |
Cisco IOS commands |
|
Cisco IOS IP SLAs commands |
Error Message Decoder
Description | Link |
---|---|
To help you research and resolve system error messages in this release, use the Error Message Decoder tool. |
https://www.cisco.com/cgi-bin/Support/Errordecoder/index.cgi |
Standards and RFCs
Standard/RFC | Title |
---|---|
RFC 1112 |
Host Extensions for IP Multicasting |
RFC 2236 |
Internet Group Management Protocol, Version 2 |
RFC 3376 |
Internet Group Management Protocol, Version 3 |
MIBs
MIB | MIBs Link |
---|---|
All supported MIBs for this release. |
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: |
Technical Assistance
Description | Link |
---|---|
The Cisco Support website provides extensive online resources, including 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. |
Feature History and Information for IGMP
Release |
Modification |
---|---|
Cisco IOS XE 3.3SECisco IOS XE 3.3SE |
This feature was introduced. |