BUG: Windows 2000 Multicast Groups Are Not Rejoined When Interface Is Enabled (258875)



The information in this article applies to:

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional

This article was previously published under Q258875

SYMPTOMS

When an interface is disabled and then re-enabled in Windows 2000 either by the user interface or through MediaSense, if the adapter was joined to multicast groups, the interface may not be able to receive multicasts from those groups once it is re-enabled. Internet Group Membership Protocol (IGMP) should be sending a join message for each group that the computer is a member of when the interface is re-enabled.

CAUSE

This problem occurs when the multicast sockets are bound to INADDR_ANY. Mulicast groups are rejoined as expected if the socket is bound to a specific interface.

RESOLUTION

Workaround

A well written application should generally monitor for address changes and should unjoin and then rejoin the multicast group when there is an address change (especially when obtaining a different IP address). You can use the SIO_ADDRESS_LIST_CHANGE option of the WSAIoctl function to receive notification of an address list change.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

REFERENCES

For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

131978 HOWTO: Receive/Send Multicasts Under WinNT/Win95 Using WinSock

See the "Windows Sockets 2 API Programmer's Reference in the Platform SDK" at the following Web site:

Modification Type:MajorLast Reviewed:11/20/2003
Keywords:kbAPI kbBug kbnetwork kbpending kbWinsock KB258875