2.2.1.2.174 IGMP_MIB_IF_CONFIG

The IGMP_MIB_IF_CONFIG structure contains per-interface configuration. This structure is used in the following methods:

All IP address fields MUST be in network order.

 typedef struct _IGMP_MIB_IF_CONFIG {
   DWORD Version;
   DWORD IfIndex;
   DWORD IpAddr;
   DWORD IfType;
   DWORD Flags;
   DWORD IgmpProtocolType;
   DWORD RobustnessVariable;
   DWORD StartupQueryInterval;
   DWORD StartupQueryCount;
   DWORD GenQueryInterval;
   DWORD GenQueryMaxResponseTime;
   DWORD LastMemQueryInterval;
   DWORD LastMemQueryCount;
   DWORD OtherQuerierPresentInterval;
   DWORD GroupMembershipTimeout;
   DWORD NumStaticGroups;
 } IGMP_MIB_IF_CONFIG,
  *PIGMP_MIB_IF_CONFIG;

Version: It MUST be one of the following values.

Value

Meaning

IGMP_VERSION_1_2

0x00000201

IGMPv1 or IGMPv2

IGMP_VERSION_3

0x00000301

IGMPv3

IfIndex: The index of the interface, it is read-only.

IpAddr: The IP address of the interface, it is read-only.

IfType: The type of the interface, it is read-only. It MUST be one of the following values.

Value

Meaning

IGMP_IF_NOT_RAS

0x00000001

The interface is connected to a LAN.

IGMP_IF_RAS_ROUTER

0x00000002

The interface is connected to another router over RAS.

IGMP_IF_RAS_SERVER

0x00000003

The entry corresponds to a RAS server if it contains statistics, then it represents summarized statistics.

IGMP_IF_RAS_CLIENT

0x00000004

The entry corresponds to a RAS client.

IGMP_IF_PROXY

0x00000008

One of the first four flags will still be set to enable the switch from the proxy to an IGMP router.

Flags: It MUST be one of the following values.

Value

Meaning

IGMP_INTERFACE_ENABLED_IN_CONFIG

0x00000001

The interface is enabled in this configuration.

IGMP_ACCEPT_RTRALERT_PACKETS_ONLY

0x00000002

Can accept only router alerts.

IgmpProtocolType: Takes one of the following values.

Value

Meaning

IGMP_PROXY

0x00000000

The interface is an IGMPv2 proxy.

IGMP_ROUTER_V1

0x00000001

The interface is an IGMPv1 router.

IGMP_ROUTER_V2

0x00000002

The interface is an IGMPv2 router.

IGMP_ROUTER_V3

0x00000003

The interface is an IGMPv3 router.

IGMP_PROXY_V3

0x00000010

The interface is an IGMPv3 proxy.

RobustnessVariable: The robustness variable is a way of indicating the lossy nature of the subnet to which this interface is attached. The IGMP can recover from lost IGMP packets (robustness variable is set to 1). The robustness variable SHOULD be set to a value of 2 or greater.

StartupQueryInterval: The startup query interval is the amount of time in seconds between successive general query messages sent by a querier during startup.

StartupQueryCount: The startup query count is the number of general query messages sent at startup.

GenQueryInterval: The query interval is the amount of time, in seconds, between the IGMP general query messages sent by the router (if the router is the querier on this subnet).

GenQueryMaxResponseTime: The query response interval is the maximum amount of time, in seconds, that the IGMP router waits to receive a response to a general query message.

LastMemQueryInterval: The last member query interval is the amount of time, in milliseconds, that the IGMP router waits to receive a response to a group-specific query message. The last member query interval is also the amount of time, in seconds, between successive group-specific query messages.

LastMemQueryCount: The last member query count is the number of group-specific query messages sent before the router assumes there are no members of the host group being queried on this interface.

OtherQuerierPresentInterval: Displays the calculated other querier present interval. The other querier present interval is the number of seconds that MUST pass before a multicast router determines that there is no other multicast router that can be the querier. The other querier present interval is (robustness variable) * (query interval) + (query response interval)/2.

GroupMembershipTimeout: Displays the calculated group membership interval. The group membership interval is the number of seconds that MUST pass before a multicast router determines that there are no more members of a host group on a subnet. The group membership interval is (robustness variable) * (query interval) + (query response interval).

NumStaticGroups: The number of static groups. This value MUST be zero (0) when calling RRouterInterfaceTransportAdd and RRouterInterfaceTransportSetInfo.