Windows XP incorrectly forwards UDP broadcast packets (835979)



The information in this article applies to:

  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition

SYMPTOMS

A multi-homed Microsoft Windows XP-based computer may not correctly forward User Datagram Protocol (UDP) broadcast packets from one subnet to another. Additionally, the multi-homed Windows XP-based computer may not process the UDP packet if a program or Windows XP is listening for that particular broadcast packet.

CAUSE

This issue may occur if you use an IP address from one class and a subnet mask from another class, such as such as a Class A network IP address with a Class C subnet mask.

For example, suppose a Windows XP-based multi-homed computer has a Class A network IP address of 10.0.0.1 and a Class C subnet mask of 255.255.255.0. In this configuration, the computer performs a subnet broadcast to the IP address 10.0.0.255. The packet-forwarding mechanism that Windows XP uses incorrectly assumes that this packet must be sent to a valid host computer and not to a subnet broadcast. Windows XP makes this supposition because the subnet mask is not consistent with the class A address.

Therefore, the packet will be incorrectly forwarded, but the packet will not be sent to the TCP/IP stack of the computer that does the forwarding.

WORKAROUND

To work around this problem and to correctly forward and route UDP broadcast packets from one subnet to another, you must configure the multi-homed Windows XP-based computer as a dedicated UDP router.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Modification Type:MinorLast Reviewed:1/27/2005
Keywords:kbtshoot kbnofix kbbug KB835979 kbAudITPRO