Overview
IGMP was primarily designed for hosts on multi-access networks to inform locally attached routers of their group membership information. This is performed by hosts multicasting IGMP Host Membership Reports. Multicast routers listen for these messages and then can exchange group membership information with other multicast routers. This allows distribution trees to be formed to deliver multicast datagrams. The IGMP statement is used to configure IGMP.
The IGMP Statement
igmp ( yes | no | on | off ) { queryinterval sec ; maxresptime sec ; robustness number ; interface interface_list enable | disable version 1 | 2 queryinterval sec maxresptime sec robustness number ; traceoptions trace_options ; }In snapshots after 11/12, the syntax will be:igmp ( yes | no | on | off ) { queryinterval sec ; maxresptime sec ; robustness number ; interface interface_list { enable | disable ; version 1 | 2 ; queryinterval sec ; maxresptime sec ; robustness number ; }; traceoptions trace_options ; }The igmp statement enables or disables the IGMP protocol. If the igmp statement is not specified, the default is igmp off. If enabled, IGMP will default to enabling all interfaces that are multicast capable. These interfaces are identified by the IFF_MULTICAST interface flag.
The options are as follows:
queryinterval time Specifies the default interval at which to send IGMP Host-Membership-Queries. If unspecified, the default query interval is 125 seconds. maxresptime time Specifies the default maximum response time to include in Host-Membership-Queries. If unspecified, this is 10 seconds. robustness number Specifies the default robustness parameter (number of acceptable message losses). If unspecified, this is 2. interface interface_list Enables or disables IGMP on this interface or list of interfaces. Currently, the gated implementation of IGMP does not detect when there are multiple addresses configured on the same physical interface. It will send IGMP messages to each logical network. This should be fixed in a future release. The possible parameters are: disable Specifies that IGMP packets received via the specified interface will be ignored. The default is to listen to IGMP on all multicast-capable interfaces. enable This is the default. This argument may be necessary when disable is used on a wildcard interface descriptor. version (1|2) Sets the version of IGMP to run on the specified interface. Version 2 is the default. queryinterval sec Sets the period at which IGMP Host Membership Queries will be sent on the specified interface. The default is the default queryinterval as specified above. maxresptime sec Sets the maximum response time to include in IGMP Host Membership Queries. The default is the default maxresptime as specified above. robustness number Sets the robustness parameter, being the number of packet losses which IGMP will tolerate. Higher values cause longer convergence times. The default is the default robustness as specified above. traceoptions trace_options Specifies the tracing options for IGMP. (See Trace Statements and the IGMP specific tracing options below.) Packet tracing options (which may be modified with detail, send, or recv): packets All IGMP packets. query Host-Membership-Queries. report Host-Membership-Reports. leave Leaves. mtrace Multicast traceroute messages.