- Table of Contents
-
- 05-Network Connectivity
- 00-Preface
- 01-About the network connectivity configuration guide
- 02-MAC address table configuration
- 03-Ethernet link aggregation configuration
- 04-VLAN configuration
- 05-Loop detection configuration
- 06-Spanning tree configuration
- 07-LLDP configuration
- 08-Layer 2 forwarding configuration
- 09-L2TP configuration
- 10-ARP configuration
- 11-IP addressing configuration
- 12-DHCP configuration
- 13-DHCP snooping configuration
- 14-DHCPv6 configuration
- 15-DHCPv6 snooping configuration
- 16-DNS configuration
- 17-HTTP configuration
- 18-IP forwarding basics configuration
- 19-Fast forwarding configuration
- 20-Adjacency table configuration
- 21-IP performance optimization configuration
- 22-IPv6 basics configuration
- 23-IPv6 neighbor discovery configuration
- 24-IPv6 fast forwarding configuration
- 25-NAT configuration
- 26-Basic IP routing configuration
- 27-Static routing configuration
- 28-RIP configuration
- 29-OSPF configuration
- 30-Policy-based routing configuration
- 31-IPv6 policy-based routing configuration
- 32-IPv6 static routing configuration
- 33-RIPng configuration
- 34-GRE configuration
- 35-IPv6 transition technologies configuration
- 36-Multicast overview
- 37-IGMP snooping configuration
- 38-MLD snooping configuration
- Related Documents
-
Title | Size | Download |
---|---|---|
37-IGMP snooping configuration | 374.16 KB |
Restrictions and guidelines: IGMP snooping configuration
VLAN-based IGMP snooping tasks at a glance
Enabling the IGMP snooping feature
Enabling IGMP snooping globally
Enabling IGMP snooping for VLANs
Configuring basic IGMP snooping features
Specifying an IGMP snooping version
Setting the maximum number of IGMP snooping forwarding entries
Setting the IGMP last member query interval
Configuring IGMP snooping port features
Setting aging timers for dynamic ports
Configuring a static member port
Configuring a static router port
Configuring a port as a simulated member host
Enabling fast-leave processing
Disabling a port from becoming a dynamic router port
Enabling inner VLAN ID-based forwarding
Configuring the IGMP snooping querier
Enabling the IGMP snooping querier
Enabling IGMP snooping querier election
Configuring parameters for IGMP general queries and responses
Enabling the device to send IGMP general queries upon a path change
Enabling IGMP snooping proxying
Configuring parameters for IGMP messages
Configuring source IP addresses for IGMP messages
Setting the 802.1p priority for IGMP messages
Configuring IGMP snooping policies
Configuring a multicast group policy
Enabling multicast source port filtering
Enabling dropping unknown multicast data
Enabling IGMP report suppression
Setting the maximum number of multicast groups on a port
Enabling multicast group replacement
Setting the DSCP value for outgoing IGMP protocol packets
Verifying and maintaining IGMP snooping
Verifying IGMP snooping configuration and running status
Displaying host tracking information
Displaying and clearing IGMP snooping statistics
Clearing dynamic IGMP snooping configuration
IGMP snooping configuration examples
Example: Configuring IGMP snooping on a wireless network
Layer 2 multicast forwarding cannot function
Multicast group policy does not work
Configuring IGMP snooping
About IGMP snooping
IGMP snooping runs on a Layer 2 device as a multicast constraining mechanism to improve multicast forwarding efficiency. It creates Layer 2 multicast forwarding entries from IGMP packets that are exchanged between the hosts and the Layer 3 device.
Fundamentals of IGMP snooping
As shown in Figure 1, when IGMP snooping is not enabled, the Layer 2 switch floods multicast packets to all hosts in a VLAN. When IGMP snooping is enabled, the Layer 2 switch forwards multicast packets of known multicast groups to only the receivers.
Figure 1 Multicast packet transmission without and with IGMP snooping
IGMP snooping ports
As shown in Figure 2, IGMP snooping runs on Switch A and Switch B, and Host A and Host C are receivers in a multicast group. IGMP snooping ports are divided into member ports and router ports.
Router ports
On an IGMP snooping Layer 2 device, the ports toward Layer 3 multicast devices are called router ports. In Figure 2, Port A1 of Switch A and Port B1 of Switch B are router ports.
Router ports contain the following types:
· Dynamic router port—When a port receives an IGMP general query whose source address is not 0.0.0.0, the port is added into the dynamic router port list. At the same time, an aging timer is started for the port. If the port receives an IGMP general query before the timer expires, the timer is reset. Otherwise, the port is removed from the dynamic router port list.
· Static router port—When a port is statically configured as a router port, it is added into the static router port list. The static router port does not age out, and it can be deleted only manually.
Do not confuse the "router port" in IGMP snooping with the "routed interface" commonly known as the "Layer 3 interface." The router port in IGMP snooping is a Layer 2 interface.
Member ports
On an IGMP snooping Layer 2 device, the ports toward receiver hosts are called member ports. In Figure 2, Port A2 and Port A3 of Switch A and Port B2 of Switch B are member ports.
Member ports contain the following types:
· Dynamic member port—When a port receives an IGMP report, it is added to the associated dynamic IGMP snooping forwarding entry as an outgoing interface. At the same time, an aging timer is started for the port. If the port receives an IGMP report before the timer expires, the timer is reset. If the port does not receive an IGMP report when the timer expires, the port is removed from the associated dynamic forwarding entry.
· Static member port—When a port is statically configured as a member port, it is added to the associated static IGMP snooping forwarding entry as an outgoing interface. The static member port does not age out, and it can be deleted only manually.
Unless otherwise specified, router ports and member ports in this document include both static and dynamic router ports and member ports.
How IGMP snooping works
The ports in this section are dynamic ports. For information about how to configure and remove static ports, see "Configuring a static member port" and "Configuring a static router port."
IGMP messages types include general query, IGMP report, and leave message. An IGMP snooping-enabled Layer 2 device performs differently depending on the message types.
General query
The IGMP querier periodically sends IGMP general queries to all hosts and devices on the local subnet to check for the existence of multicast group members.
After receiving an IGMP general query, the Layer 2 device forwards the query to all ports in the VLAN except the receiving port. The Layer 2 device also performs one of the following actions:
· If the receiving port is a dynamic router port in the dynamic router port list, the Layer 2 device restarts the aging timer for the port.
· If the receiving port does not exist in the dynamic router port list, the Layer 2 device adds the port to the dynamic router port list. It also starts an aging timer for the port.
IGMP report
A host sends an IGMP report to the IGMP querier for the following purposes:
· Responds to queries if the host is a multicast group member.
· Applies for a multicast group membership.
After receiving an IGMP report from a host, the Layer 2 device forwards the report through all the router ports in the VLAN. It also resolves the address of the reported multicast group, and looks up the forwarding table for a matching entry as follows:
· If no match is found, the Layer 2 device creates a forwarding entry with the receiving port as an outgoing interface. It also marks the receiving port as a dynamic member port and starts an aging timer for the port.
· If a match is found but the matching forwarding entry does not contain the receiving port, the Layer 2 device adds the receiving port to the outgoing interface list. It also marks the receiving port as a dynamic member port and starts an aging timer for the port.
· If a match is found and the matching forwarding entry contains the receiving port, the Layer 2 device restarts the aging timer for the port.
|
NOTE: A Layer 2 device does not forward an IGMP report through a non-router port because of the host IGMP report suppression mechanism. If a non-router port has member host attached, the member hosts suppress their IGMP reports upon receiving IGMP reports forwarded by the non-router port. The Layer 2 device cannot know the existence of the member hosts attached to the non-router port. |
Leave message
An IGMPv1 receiver host does not send any leave messages when it leaves a multicast group. The Layer 2 device cannot immediately update the status of the port that connects to the receiver host. The Layer 2 device does not remove the port from the outgoing interface list in the associated forwarding entry until the aging time for the group expires.
An IGMPv2 or IGMPv3 host sends an IGMP leave message when it leaves a multicast group.
When the Layer 2 device receives an IGMP leave message on a dynamic member port, the Layer 2 device first examines whether a forwarding entry matches the group address in the message.
· If no match is found, the Layer 2 device discards the IGMP leave message.
· If a match is found but the receiving port is not an outgoing interface in the forwarding entry, the Layer 2 device discards the IGMP leave message.
· If a match is found and the receiving port is not the only outgoing interface in the forwarding entry, the Layer 2 device performs the following actions:
¡ Discards the IGMP leave message.
¡ Sends an IGMP group-specific query to identify whether the group has active receivers attached to the receiving port.
¡ Sets the aging timer for the receiving port to twice the IGMP last member query interval.
· If a match is found and the receiving port is the only outgoing interface in the forwarding entry, the Layer 2 device performs the following actions:
¡ Forwards the IGMP leave message to all router ports in the VLAN.
¡ Sends an IGMP group-specific query to identify whether the group has active receivers attached to the receiving port.
¡ Sets the aging timer for the receiving port to twice the IGMP last member query interval.
After receiving the IGMP leave message on a port, the IGMP querier resolves the multicast group address in the message. Then, it sends an IGMP group-specific query to the multicast group through the receiving port.
After receiving the IGMP group-specific query, the Layer 2 device forwards the query through all router ports and member ports of the group in the VLAN. Then, it waits for the responding IGMP report from the directly connected hosts. For the dynamic member port that received the leave message, the Layer 2 device also performs one of the following actions:
· If the port receives an IGMP report before the aging timer expires, the Layer 2 device resets the aging timer.
· If the port does not receive an IGMP report when the aging timer expires, the Layer 2 device removes the port from the forwarding entry for the multicast group.
IGMP snooping proxying
As shown in Figure 3, to reduce the number of IGMP report and leave messages received by the upstream device, you can enable IGMP snooping proxying on the edge device. With IGMP snooping proxying enabled, the edge device acts as a host for the upstream IGMP snooping querier to send IGMP report and leave messages to Device A. The host IGMP report suppression mechanism on the edge device does not take effect.
Figure 3 IGMP snooping proxying
The IGMP snooping proxy device processes different IGMP messages as follows:
· General query.
After receiving an IGMP general query, the device forwards the query to all ports in the VLAN except the receiving port. The device also generates an IGMP report based on the local membership information and sends the report to all router ports.
· Group-specific query or group-and-source-specific query.
After receiving an IGMP group-specific query or group-and-source-specific query, the device forwards the query to all ports in the VLAN except the receiving port. If the forwarding entry has a member port, the device sends a report to all router ports in the VLAN.
· Report.
After receiving an IGMP report from a host, the device looks up the forwarding table for a matching entry as follows:
¡ If a match is found and the matching forwarding entry contains the receiving port, the device resets the aging timer for the port.
¡ If a match is found but the matching forwarding entry does not contain the receiving port, the device adds the receiving port to the outgoing interface list. It also marks the receiving port as a dynamic member port and starts an aging timer for the port.
¡ If no match is found, the device creates a forwarding entry with the receiving port as an outgoing interface. It also marks the receiving port as a dynamic member port and starts an aging timer for the port. Then it sends the report to all router ports.
· Leave message.
After receiving the IGMP leave message on a port, the device sends an IGMP group-specific query through the receiving port. The device sends the IGMP leave message to all router ports only when the last member port is removed from the forwarding entry.
Protocols and standards
RFC 4541, Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches
Restrictions and guidelines: IGMP snooping configuration
The IGMP snooping configurations made on Layer 2 aggregate interfaces do not interfere with the configurations made on member ports. In addition, the configurations made on Layer 2 aggregate interfaces do not take part in aggregation calculations. The configuration made on a member port of the aggregate group takes effect after the port leaves the aggregate group.
Some features can be configured for a VLAN in VLAN view or for multiple VLANs in IGMP-snooping view. The configuration made in VLAN view and the configuration made in IGMP-snooping view have the same priority, and the most recent configuration takes effect.
Some features can be configured for a VLAN in VLAN view or globally for all VLANs in IGMP-snooping view. The VLAN-specific configuration takes priority over the global configuration.
Some features can be configured for an interface in interface view or for all interfaces of the specified VLANs in IGMP-snooping view. The interface-specific configuration takes priority over the configuration made in IGMP-snooping view.
VLAN-based IGMP snooping tasks at a glance
To configure IGMP snooping for VLANs, perform the following tasks:
1. Enabling the IGMP snooping feature
Choose the following tasks as needed:
¡ Enabling IGMP snooping globally
¡ Enabling IGMP snooping for VLANs
3. (Optional.) Configuring basic IGMP snooping features
¡ Specifying an IGMP snooping version
¡ Setting the maximum number of IGMP snooping forwarding entries
¡ Setting the IGMP last member query interval
4. (Optional.) Configuring IGMP snooping port features
¡ Setting aging timers for dynamic ports
¡ Configuring a static member port
¡ Configuring a static router port
¡ Configuring a port as a simulated member host
¡ Enabling fast-leave processing
¡ Disabling a port from becoming a dynamic router port
¡ Enabling inner VLAN ID-based forwarding
5. (Optional.) Configuring the IGMP snooping querier
¡ Enabling the IGMP snooping querier
¡ Enabling IGMP snooping querier election
¡ Configuring parameters for IGMP general queries and responses
¡ Enabling the device to send IGMP general queries upon a path change
6. (Optional.) Enabling IGMP snooping proxying
7. (Optional.) Configuring parameters for IGMP messages
¡ Configuring source IP addresses for IGMP messages
¡ Setting the 802.1p priority for IGMP messages
8. (Optional.) Configuring IGMP snooping policies
¡ Configuring a multicast group policy
¡ Enabling multicast source port filtering
¡ Enabling dropping unknown multicast data
¡ Enabling IGMP report suppression
¡ Setting the maximum number of multicast groups on a port
¡ Enabling multicast group replacement
9. (Optional.) Setting the DSCP value for outgoing IGMP protocol packets
Enabling the IGMP snooping feature
About this task
You must enable the IGMP snooping feature before you configure other IGMP snooping features.
Procedure
1. Enter system view.
system-view
2. Enable the IGMP snooping feature and enter IGMP-snooping view.
igmp-snooping
By default, the IGMP snooping feature is disabled.
Enabling IGMP snooping
Enabling IGMP snooping globally
About this task
After you enable IGMP snooping globally, IGMP snooping is enabled for all VLANs. You can disable IGMP snooping for a VLAN when IGMP snooping is globally enabled.
Restrictions and guidelines
To configure other IGMP snooping features for VLANs, you must enable IGMP snooping for the specific VLANs even though IGMP snooping is enabled globally.
The VLAN-specific IGMP snooping configuration takes priority over the global IGMP snooping configuration. For example, if you enable IGMP snooping globally and then use the igmp-snooping disable command to disable IGMP snooping for a VLAN, IGMP snooping is disabled in the VLAN.
Procedure
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable IGMP snooping globally.
global-enable
By default, IGMP snooping is disabled globally.
4. (Optional.) Disable IGMP snooping for a VLAN.
a. Return to system view.
quit
a. Enter VLAN view.
vlan vlan-id
b. Disable IGMP snooping for the VLAN.
igmp-snooping disable
By default, the IGMP snooping status in a VLAN is consistent with the global IGMP snooping status.
Enabling IGMP snooping for VLANs
Restrictions and guidelines
You can enable IGMP snooping for multiple VLANs by using the enable vlan command in IGMP-snooping view or for a VLAN by using the igmp-snooping enable command in VLAN view. The configuration in VLAN view has the same priority as the configuration in IGMP-snooping view.
IGMP snooping configuration in a VLAN takes effect only on the member ports in the VLAN.
Enabling IGMP snooping for multiple VLANs
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable IGMP snooping for the specified VLANs.
enable vlan vlan-list
By default, the IGMP snooping status in a VLAN is consistent with the global IGMP snooping status.
Enabling IGMP snooping for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable IGMP snooping for the VLAN.
igmp-snooping enable
By default, the IGMP snooping status in a VLAN is consistent with the global IGMP snooping status.
Configuring basic IGMP snooping features
Specifying an IGMP snooping version
About this task
Different IGMP snooping versions process different versions of IGMP messages.
· IGMPv2 snooping processes IGMPv1 messages, IGMPv2 messages, and IGMPv3 queries, but it floods IGMPv3 reports in the VLAN instead of processing them.
· IGMPv3 snooping processes IGMPv1, IGMPv2, and IGMPv3 messages.
Restrictions and guidelines
If you change the IGMP snooping version from 2 to 3, the device performs the following actions:
· Clears all IGMP snooping forwarding entries that are dynamically created.
· Keeps static IGMPv3 snooping forwarding entries (*, G).
· Clears static IGMPv3 snooping forwarding entries (S, G), which will be restored when the IGMP snooping version is switched back to 3.
For more information about static IGMP snooping forwarding entries, see "Configuring a static member port."
Specifying an IGMP snooping version for multiple VLANs
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Specify an IGMP snooping version for multiple VLANs.
version version-number vlan vlan-list
By default, the IGMP snooping version for a VLAN is 2.
Specifying an IGMP snooping version for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Specify an IGMP snooping version for the VLAN.
igmp-snooping version version-number
By default, the IGMP snooping version for a VLAN is 2.
Setting the maximum number of IGMP snooping forwarding entries
About this task
You can modify the maximum number of IGMP snooping forwarding entries, including dynamic entries and static entries. When the number of forwarding entries on the device reaches the upper limit, the device does not automatically remove any existing entries. To allow new entries to be created, remove some entries manually.
Procedure
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Set the maximum number of IGMP snooping forwarding entries.
entry-limit limit
By default, the maximum number of IGMP snooping forwarding entries is 4294967295.
Setting the IGMP last member query interval
About this task
A receiver host starts a report delay timer for a multicast group when it receives an IGMP group-specific query for the group. This timer is set to a random value in the range of 0 to the maximum response time advertised in the query. When the timer value decreases to 0, the host sends an IGMP report to the group.
The IGMP last member query interval defines the maximum response time advertised in IGMP group-specific queries. Set an appropriate value for the IGMP last member query interval to speed up hosts' responses to IGMP group-specific queries and avoid IGMP report traffic bursts.
Setting the IGMP last member query interval globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Set the IGMP last member query interval globally.
last-member-query-interval interval
By default, the global IGMP last member query interval is 1 second.
Setting the IGMP last member query interval for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Set the IGMP last member query interval for the VLAN.
igmp-snooping last-member-query-interval interval
By default, the IGMP last member query interval is 1 second for a VLAN.
Configuring IGMP snooping port features
Setting aging timers for dynamic ports
About this task
A dynamic router port is removed from the dynamic router port list if it does not receive an IGMP general query when its aging timer expires.
A dynamic member port is removed from the dynamic member port if it does not receive an IGMP report when its aging timer expires.
Restrictions and guidelines
Set an appropriate value for the aging timers of dynamic ports. For example, if the memberships of multicast groups frequently change, set a relatively small value for the aging timer of the dynamic member ports. If the memberships of multicast groups rarely change, set a relatively large value.
IGMP group-specific queries originated by the Layer 2 device trigger the adjustment of aging timers for dynamic member ports. If a dynamic member port receives such a query, its aging timer is set to twice the IGMP last member query interval. For more information about setting the IGMP last member query interval on the Layer 2 device, see "Setting the IGMP last member query interval."
Setting the aging timers for dynamic ports globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Set the aging timer for dynamic router ports globally.
router-aging-time seconds
By default, the aging timer for dynamic router ports is 260 seconds.
4. Set the global aging timer for dynamic member ports globally.
host-aging-time seconds
By default, the aging timer for dynamic member ports is 260 seconds.
Setting the aging timers for dynamic ports in a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Set the aging timer for dynamic router ports in the VLAN.
igmp-snooping router-aging-time seconds
By default, the aging timer for dynamic router ports is 260 seconds.
4. Set the aging timer for dynamic member ports in the VLAN.
igmp-snooping host-aging-time seconds
By default, the aging timer for dynamic member ports is 260 seconds.
Configuring a static member port
About this task
You can configure a port as a static member port for a multicast group so that hosts attached to the port can always receive multicast for the group. The static member port does not respond to IGMP queries. When you complete or cancel this configuration on a port, the port does not send an unsolicited IGMP report or leave message.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Configure the port as a static member port.
igmp-snooping static-group group-address [ source-ip source-address ] vlan vlan-id
By default, a port is not a static member port.
Configuring a static router port
About this task
You can configure a port as a static router port for a multicast group so that all multicast data for the group received on the port will be forwarded.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Configure the port as a static router port.
igmp-snooping static-router-port vlan vlan-id
By default, a port is not a static router port.
Configuring a port as a simulated member host
About this task
When a port is configured as a simulated member host, it is equivalent to an independent host in the following ways:
· It sends an unsolicited IGMP report when you complete the configuration.
· It responds to IGMP general queries with IGMP reports.
· It sends an IGMP leave message when you cancel the configuration.
The version of IGMP running on the simulated member host is the same as the version of IGMP snooping running on the port. The port ages out in the same way as a dynamic member port.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Configure the port as a simulated member host.
igmp-snooping host-join group-address [ source-ip source-address ] vlan vlan-id
By default, the port is not a simulated member host.
Enabling fast-leave processing
About this task
This feature enables the Layer 2 device to immediately remove a port from the forwarding entry for a multicast group when the port receives a leave massage. The Layer 2 device no longer sends or forwards IGMP group-specific queries for the group to the port.
Restrictions and guidelines
Do not enable fast-leave processing on a port that has multiple receiver hosts in a VLAN. If you do so, the remaining receivers cannot receive multicast data for a group after a receiver leaves the group.
Enabling fast-leave processing globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable fast-leave processing globally.
fast-leave [ vlan vlan-list ]
By default, fast-leave processing is disabled globally.
Enabling fast-leave processing on a port
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Enable fast-leave processing on the port.
igmp-snooping fast-leave [ vlan vlan-list ]
By default, fast-leave processing is disabled on a port.
Disabling a port from becoming a dynamic router port
About this task
A receiver host might send IGMP general queries for testing purposes. On the Layer 2 device, the port that receives an IGMP general query becomes a dynamic router port. Before the aging timer for the port expires, the following problems might occur:
· All multicast data for the VLAN to which the port belongs flows to the port. Then, the port forwards the data to attached receiver hosts. The receiver hosts will receive multicast data that it does not want to receive.
· The port forwards the IGMP general queries to its upstream Layer 3 devices. These messages might affect the multicast routing protocol state (such as the IGMP querier or DR election) on the Layer 3 devices. This might further cause network interruption.
To solve these problems, you can disable a port from becoming a dynamic router port. This also improves network security and the control over receiver hosts.
Restrictions and guidelines
This configuration and the static router port configuration do not interfere with each other.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Disable the port from becoming a dynamic router port.
igmp-snooping router-port-deny [ vlan vlan-list ]
By default, a port is allowed to become a dynamic router port.
Enabling inner VLAN ID-based forwarding
About this task
Use this feature to enable a port to create and maintain IGMP snooping entries based on the inner VLAN IDs of the received double-tagged IGMP packets.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Enable inner VLAN ID-based forwarding.
igmp-snooping cvid-forward
By default, inner VLAN ID-based forwarding is disabled on a port. The port performs outer VLAN ID-based forwarding.
Configuring the IGMP snooping querier
Enabling the IGMP snooping querier
About this task
This feature enables the Layer 2 device to periodically send IGMP general queries to establish and maintain multicast forwarding entries at the data link Layer. You can configure an IGMP snooping querier on a network without Layer 3 multicast devices.
Restrictions and guidelines
Do not enable the IGMP snooping querier on a multicast network that runs IGMP. An IGMP snooping querier does not take part in IGMP querier elections. However, it might affect IGMP querier elections if it sends IGMP general queries with a low source IP address.
Enabling the IGMP snooping querier for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable the IGMP snooping querier for the VLAN.
igmp-snooping querier
By default, the IGMP snooping querier is disabled for a VLAN.
Enabling IGMP snooping querier election
About this task
To avoid traffic interruption caused by the failure of a single querier in a VLAN, configure multiple queriers in the VLAN and enable querier election. When the elected querier fails, the device starts a new querier election to ensure multicast forwarding. The mechanism for IGMP snooping querier election is the same as that for IGMP querier election.
Prerequisites for enabling IGMP snooping querier election
Before you enable IGMP snooping querier election, you must complete the following tasks:
· Enable the IGMP snooping querier for a VLAN. For more information about enabling the IGMP snooping querier, see "Enabling the IGMP snooping querier."
· Configure the source IP address for IGMP general queries as an IP address different from 0.0.0.0 and the local querier IP address. An IGMP snooping querier performs querier election only if the source IP address of a received IGMP general query is not 0.0.0.0 or its own IP address.
· Make sure the candidate IGMP snooping queriers run the same IGMP snooping version. To specify the IGMP snooping version, use the igmp-snooping version command.
Enabling IGMP snooping querier election for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable IGMP snooping querier election for the VLAN.
igmp-snooping querier-election
By default, IGMP snooping querier election is disabled for a VLAN.
Configuring parameters for IGMP general queries and responses
About this task
You can modify the IGMP general query interval based on the actual condition of the network.
A receiver host starts a report delay timer for each multicast group that it has joined when it receives an IGMP general query. This timer is set to a random value in the range of 0 to the maximum response time advertised in the query. When the timer value decreases to 0, the host sends an IGMP report to the corresponding multicast group.
Set an appropriate value for the maximum response time for IGMP general queries to speed up hosts' responses to IGMP general queries and avoid IGMP report traffic bursts.
Restrictions and guidelines
To avoid mistakenly deleting multicast group members, make sure the IGMP general query interval is greater than the maximum response time for IGMP general queries.
Configuring parameters for IGMP general queries and responses globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Set the maximum response time for IGMP general queries.
max-response-time seconds
By default, the maximum response time for IGMP general queries is 10 seconds.
Configuring parameters for IGMP general queries and responses in a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Set the IGMP general query interval in the VLAN.
igmp-snooping query-interval interval
By default, the IGMP general query interval is 125 seconds for a VLAN.
4. Set the maximum response time for IGMP general queries in the VLAN.
igmp-snooping max-response-time seconds
By default, the maximum response time for IGMP general queries is 10 seconds for a VLAN.
Enabling the device to send IGMP general queries upon a path change
About this task
Perform this task to enable the device to immediately send an IGMP general query to all ports in the affected VLAN when a path changes. This feature ensures that the device can update the member port information in multicast forwarding entries and switch multicast traffic to the new path promptly.
Restrictions and guidelines
Perform this task on the IGMP snooping querier in a network of which the topology frequently changes.
Procedure
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable the device to send IGMP general queries upon a path change.
send-query enable
By default, the device does not send IGMP general queries upon a path change.
Enabling IGMP snooping proxying
Enabling IGMP snooping proxying for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable IGMP snooping proxying for the VLAN.
igmp-snooping proxy enable
By default, IGMP snooping proxying is disabled for a VLAN.
Configuring parameters for IGMP messages
Configuring source IP addresses for IGMP messages
About this task
The IGMP snooping querier might send IGMP general queries with the source IP address 0.0.0.0. The port that receives such queries will not be maintained as a dynamic router port. This might prevent the associated dynamic IGMP snooping forwarding entry from being correctly created at the data link layer and eventually cause multicast traffic forwarding failures. To avoid this problem, you can configure a non-all-zero IP address as the source IP address of the IGMP queries on the IGMP snooping querier. This configuration might affect the IGMP querier election within the subnet.
You can also change the source IP address of IGMP reports or leave messages sent by a simulated member host or an IGMP snooping proxy.
Configuring the source IP addresses for IGMP messages in a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Configure the source IP address for IGMP general queries.
igmp-snooping general-query source-ip ip-address
By default, the source IP address of IGMP general queries is the IP address of the current VLAN interface. If the current VLAN interface does not have an IP address, the source IP address is 0.0.0.0.
4. Configure the source IP address for IGMP group-specific queries.
igmp-snooping special-query source-ip ip-address
By default, the source IP address of IGMP group-specific queries is one of the following:
¡ The source address of IGMP group-specific queries if the IGMP snooping querier of the VLAN has received IGMP general queries.
¡ The IP address of the current VLAN interface if the IGMP snooping querier does not receive an IGMP general query.
¡ 0.0.0.0 if the IGMP snooping querier does not receive an IGMP general query and the current VLAN interface does not have an IP address.
5. Configure the source IP address for IGMP reports.
igmp-snooping report source-ip ip-address
By default, the source IP address of IGMP reports is the IP address of the current VLAN interface. If the current VLAN interface does not have an IP address, the source IP address is 0.0.0.0.
6. Configure the source IP address for IGMP leave messages.
igmp-snooping leave source-ip ip-address
By default, the source IP address of IGMP leave messages is the IP address of the current VLAN interface. If the current VLAN interface does not have an IP address, the source IP address is 0.0.0.0.
Setting the 802.1p priority for IGMP messages
About this task
When congestion occurs on outgoing ports of the Layer 2 device, it forwards IGMP messages in their 802.1p priority order, from highest to lowest. You can assign a higher 802.1p priority to IGMP messages that are created or forwarded by the device.
Setting the 802.1p priority for IGMP messages globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Set the 802.1p priority for IGMP messages.
dot1p-priority priority
By default, the global 802.1p priority is 6 for IGMP messages.
Setting the 802.1p priority for IGMP messages in a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Set the 802.1p priority for IGMP messages in the VLAN.
igmp-snooping dot1p-priority priority
By default, the 802.1p priority is 6 for IGMP messages in a VLAN.
Configuring IGMP snooping policies
Configuring a multicast group policy
About this task
This feature enables the Layer 2 device to filter IGMP reports by using an ACL that specifies the multicast groups and the optional sources. It is used to control the multicast groups that hosts can join. This configuration takes effect only on the multicast groups that ports join dynamically.
In a multicast application, a host sends an unsolicited IGMP report when a user requests a multicast program. The Layer 2 device uses the multicast group policy to filter the IGMP report. The host can join the multicast group only if the IGMP report is permitted by the multicast group policy.
Configuring a multicast group policy globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Configure a multicast group policy globally.
group-policy ipv4-acl-number [ vlan vlan-list ]
By default, no multicast group policies are configured, and hosts can join any multicast groups.
Configuring a multicast group policy on a port
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Configure a multicast group policy on the port.
igmp-snooping group-policy ipv4-acl-number [ vlan vlan-list ]
By default, no multicast group policies are configured on a port, and hosts attached to the port can join any multicast groups.
Enabling multicast source port filtering
About this task
This feature enables the Layer 2 device to discard all multicast data packets and to accept multicast protocol packets. You can enable this feature on ports that connect only to multicast receivers.
Restrictions and guidelines
When multicast source port filtering is enabled, the system automatically enables multicast source port filtering.
The configuration made for multiple interfaces in IGMP-snooping view has the same priority as the interface-specific configuration, and the most recent configuration takes effect.
Enabling multicast source port filtering in IGMP-snooping view
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable multicast source port filtering.
source-deny port interface-list
By default, multicast source port filtering is disabled.
Enabling multicast source port filtering in interface view
1. Enter system view.
system-view
2. Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
3. Enable multicast source port filtering.
igmp-snooping source-deny
By default, multicast source port filtering is disabled.
Enabling dropping unknown multicast data
About this task
Unknown multicast data refers to multicast data for which no forwarding entries exist in the IGMP snooping forwarding table. This feature enables the device to forward unknown multicast data only to the router port. If the device does not have a router port, unknown multicast data will be dropped.
If you do not enable this feature, the unknown multicast data is flooded in the VLAN to which the data belongs.
Restrictions and guidelines
The drop-unknown command in IGMP-snooping view and the igmp-snooping drop-unknown command in VLAN view are mutually exclusive. You cannot configure them on the same device.
When dropping unknown IPv4 multicast data is enabled, the device also drops unknown IPv6 multicast data.
When dropping unknown multicast data is enabled, the device still forwards unknown multicast data out of router ports except the receiving router port.
Enabling dropping unknown multicast data globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable dropping unknown multicast data globally.
drop-unknown
By default, dropping unknown multicast data is disabled globally. Unknown multicast data is flooded.
Enabling dropping unknown multicast data for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable dropping unknown multicast data for the VLAN.
igmp-snooping drop-unknown
By default, dropping unknown multicast data is disabled for a VLAN. Unknown multicast data is flooded in the VLAN.
Enabling IGMP report suppression
About this task
This feature enables the Layer 2 device to forward only the first IGMP report for a multicast group to its directly connected Layer 3 device. Other reports for the same group in the same query interval are discarded. Use this feature to reduce multicast traffic.
Procedure
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable IGMP report suppression.
report-aggregation
By default, IGMP report suppression is enabled.
Setting the maximum number of multicast groups on a port
About this task
You can set the maximum number of multicast groups on a port to regulate the port traffic. This feature takes effect only on the multicast groups that a port joins dynamically.
If the number of multicast groups on a port exceeds the limit, the system removes all the forwarding entries associated with the port. The receiver hosts attached to that port can join multicast groups again before the number of multicast groups on the port reaches the limit. When the number of multicast groups on the port reaches the limit, the port automatically drops IGMP reports for new groups.
Procedure
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Set the maximum number of multicast groups on the port.
igmp-snooping group-limit limit [ vlan vlan-list ]
By default, no limit is placed on the maximum number of multicast groups on a port.
Enabling multicast group replacement
About this task
When multicast group replacement is enabled, the port does not drop IGMP reports for new groups if the number of multicast groups on the port reaches the upper limit. Instead, the port leaves the multicast group that has the lowest IP address and joins the new group contained in the IGMP report. The multicast group replacement feature is typically used in the channel switching application.
Restrictions and guidelines
This feature takes effect only on the multicast groups that a port joins dynamically.
This feature does not take effect if the following conditions exist:
· The number of the IGMP snooping forwarding entries on the device reaches the upper limit.
· The multicast group that the port newly joins is not included in the multicast group list maintained by the device.
Enabling multicast group replacement globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable multicast group replacement globally.
overflow-replace [ vlan vlan-list ]
By default, multicast group replacement is disabled globally.
Enabling multicast group replacement on a port
1. Enter system view.
system-view
2. Enter Layer 2 interface view.
¡ Enter Layer 2 Ethernet interface view.
interface interface-type interface-number
¡ Enter Layer 2 aggregate interface view.
interface bridge-aggregation interface-number
3. Enable multicast group replacement on the port.
igmp-snooping overflow-replace [ vlan vlan-list ]
By default, multicast group replacement is disabled on a port.
Enabling host tracking
About this task
This feature enables the Layer 2 device to record information about member hosts that are receiving multicast data. The information includes IP addresses of the hosts, length of time elapsed since the hosts joined multicast groups, and remaining timeout time for the hosts. This feature facilitates monitoring and managing member hosts.
Enabling host tracking globally
1. Enter system view.
system-view
2. Enter IGMP-snooping view.
igmp-snooping
3. Enable host tracking globally.
host-tracking
By default, host tracking is disabled globally.
Enabling host tracking for a VLAN
1. Enter system view.
system-view
2. Enter VLAN view.
vlan vlan-id
3. Enable host tracking for the VLAN.
igmp-snooping host-tracking
By default, host tracking is disabled for a VLAN.
Setting the DSCP value for outgoing IGMP protocol packets
About this task
The DSCP value determines the packet transmission priority. A greater DSCP value represents a higher priority.
Procedure
1. Enter system view.
system-view
2. Enter IGMP snooping view.
igmp-snooping
3. Set the DSCP value for outgoing IGMP protocol packets.
dscp dscp-value
By default, the DSCP value is 48 for outgoing IGMP protocol packets.
Verifying and maintaining IGMP snooping
Verifying IGMP snooping configuration and running status
Verifying IGMP snooping running status
To verify IGMP snooping running status, execute the following command in any view:
display igmp-snooping [ global | vlan vlan-id ]
Verifying dynamic IGMP snooping configuration and running status
Perform display tasks in any view.
· Display dynamic IGMP snooping group entries.
display igmp-snooping group [ group-address | source-address ] * [ vlan vlan-id ] [ interface interface-type interface-number | verbose ]
· Display dynamic router port information.
display igmp-snooping router-port [ vlan vlan-id ] [ verbose ]
Verifying static IGMP snooping configuration and running status
Perform display tasks in any view.
· Display static IGMP snooping group entries.
display igmp-snooping static-group [ group-address | source-address ] * [ vlan vlan-id ] [ verbose ]
· Display static router port information.
display igmp-snooping static-router-port [ vlan vlan-id ]
Verifying Layer 2 multicast configuration and running status
Perform display tasks in any view.
· Display Layer 2 multicast fast forwarding entries.
display l2-multicast fast-forwarding cache [ vlan vlan-id ] [ source-address | group-address ] *
· Display information about Layer 2 IP multicast groups.
display l2-multicast ip [ group group-address | source source-address ] * [ vlan vlan-id ]
· Display Layer 2 IP multicast group entries.
display l2-multicast ip forwarding [ group group-address | source source-address ] * [ vlan vlan-id ]
· Display information about Layer 2 MAC multicast groups.
display l2-multicast mac [ mac-address ] [ vlan vlan-id ]
· Display Layer 2 multicast MAC forwarding entries.
display l2-multicast mac forwarding [ mac-address ] [ vlan vlan-id ]
Displaying host tracking information
To display host tracking information, execute the following command in any view:
display igmp-snooping host-tracking vlan vlan-id group group-address [ source source-address ]
Displaying and clearing IGMP snooping statistics
To display statistics for the IGMP messages learned by IGMP snooping, execute the following command in any view:
display igmp-snooping statistics
To clear statistics for IGMP messages learned through IGMP snooping, execute the following command in user view:
reset igmp-snooping statistics
Clearing dynamic IGMP snooping configuration
Perform clear tasks in user view.
· Clear Layer 2 multicast fast forwarding entries.
reset l2-multicast fast-forwarding cache [ vlan vlan-id ] { { source-address | group-address } * | all }
· Clear dynamic IGMP snooping group entries.
reset igmp-snooping group { group-address [ source-address ] | all } [ vlan vlan-id ]
· Clear dynamic router port information.
reset igmp-snooping router-port { all | vlan vlan-id }
IGMP snooping configuration examples
Example: Configuring IGMP snooping on a wireless network
Network configuration
As shown in Figure 4:
· The source sends multicast traffic to multicast group 224.1.1.1.
· The client is a receiver host of the multicast group.
· The route between the source and the client is reachable.
Configure the AC so that the client can receive the multicast traffic from the source.
Procedure
1. Assign an IP address and subnet mask to each interface, as shown in Figure 4. (Details not shown.)
2. Configure Router A:
# Enable IP multicast routing.
<RouterA> system-view
[RouterA] multicast routing
[RouterA-mrib] quit
# Enable PIM-DM on GigabitEthernet 1/0/1.
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] pim dm
[RouterA-GigabitEthernet1/0/1] quit
# Enable IGMP on GigabitEthernet 1/0/2.
[RouterA] interface gigabitethernet 1/0/2
[RouterA-GigabitEthernet1/0/2] igmp enable
[RouterA-GigabitEthernet1/0/2] quit
3. Configure WLAN services:
# Create VLAN 100.
<AC> system-view
[AC] vlan 100
[AC-vlan100] quit
# Create service template 1, and set the SSID to Multicast for the service template.
[AC] wlan service-template 1
[AC-wlan-st-1] ssid Multicast
# Bind VLAN 100 to service template 1, and enable the service template.
[AC-wlan-st-1] vlan 100
[AC-wlan-st-1] service-template enable
[AC-wlan-st-1] quit
# Create an AP named ap with model WA6320, and set the serial ID of the AP to 219801A0CNC138011454.
[AC] wlan ap ap model WA6320
[AC-wlan-ap-ap] serial-id 219801A0CNC138011454
# Bind service template 1 to radio 1, and enable radio 1 for AP ap.
[AC-wlan-ap-ap] radio 1
[AC-wlan-ap-ap-radio-1] service-template 1
[AC-wlan-ap-ap-radio-1] radio enable
[AC-wlan-ap-ap-radio-1] quit
[AC-wlan-ap-ap]quit
4. Configure IGMP snooping:
# Enable the IGMP snooping feature.
[AC] igmp-snooping
[AC-igmp-snooping] quit
# In VLAN 100, enable IGMP snooping, and specify IGMP snooping version 3.
[AC] vlan 100
[AC-vlan100] igmp-snooping enable
[AC-vlan100] igmp-snooping version 3
[AC-vlan100] quit
5. Configure GigabitEthernet 1/0/2 on the access controller as a trunk port, and assign the port to VLAN 100. (The Ethernet interface configuration on the AC varies by AC model.)
[AC] interface GigabitEthernet 1/0/2
[AC-GigabitEthernet1/0/2] port link-type trunk
[AC-GigabitEthernet1/0/2] port trunk permit vlan 100
[AC-GigabitEthernet1/0/2] quit
6. Configure the client to access the WLAN service with the SSID Multicast and request multicast traffic for multicast group 224.1.1.1. (Details not shown.)
Verifying the configuration
# Display detailed information about dynamic IGMP snooping group entries for VLAN 100 on the AC.
[AC] display igmp-snooping group vlan 100 verbose
Total 1 entries.
VLAN 100: Total 1 entries.
(0.0.0.0, 224.1.1.1)
Attribute: local port
FSM information: normal
Host slots (0 in total):
Host ports (1 in total):
WLAN-BSS1/0/20 (00:03:23)
The output shows that WLAN-BSS 1/0/20 on the AC has joined multicast group 224.1.1.1.
Troubleshooting IGMP snooping
Layer 2 multicast forwarding cannot function
Symptom
Layer 2 multicast forwarding cannot function on the Layer 2 device.
Solution
To resolve the problem:
1. Use the display igmp-snooping command to display IGMP snooping status.
2. If IGMP snooping is not enabled, use the igmp-snooping command in system view to enable the IGMP snooping feature. Then, use the igmp-snooping enable command in VLAN view to enable IGMP snooping for the VLAN.
3. If IGMP snooping is enabled globally but not enabled for the VLAN, use the igmp-snooping enable command in VLAN view to enable IGMP snooping for the VLAN.
4. If the problem persists, contact H3C Support.
Multicast group policy does not work
Symptom
Hosts can receive multicast data for multicast groups that are not permitted by the multicast group policy.
Solution
To resolve the problem:
1. Use the display acl command to verify that the configured ACL meets the multicast group policy requirements.
2. Use the display this command in IGMP-snooping view or in a corresponding interface view to verify that the correct multicast group policy has been applied. If the applied policy is not correct, use the group-policy or igmp-snooping group-policy command to apply the correct multicast group policy.
3. Use the display igmp-snooping command to verify that dropping unknown multicast data is enabled. If it is not, use the drop-unknown or igmp-snooping drop-unknown command to enable dropping unknown multicast data.
4. If the problem persists, contact H3C Support.