Thursday, May 7, 2009

Windows Vista fails to obtain IP Address from DHCP Server

Sometimes your Windows Vista will fail to obtain an IP Address from a DHCP server like your Broadband or Wireless router. This is due to a design change in Windows Vista. Unlike in Windows XP (and in the later Windows 7 Beta), Windows Vista DHCP Discovery packets have Broadcast flag enabed by default. This means some of the routers or devices acting as a DHCP server which doesn’t support Broadcast flag set in incoming DHCP discovery packetsmay fail to serve the Windows Vista machine with an IP Address.

To resolve the problem, you can either get Windows Vista to toggle with Broadcast flag set and unset in the DHCP discovery packet to obtain an IP Address or if you know for sure that your DHCP server doesn’t support Broadcast flag can then you can unset the Broadcast flag permanently. Both these can be achieved from modifiying Windows Registry keys.

Toggle Broadcast Flag in DHCP Discovery

NOTE: This should work for Windows 7 Beta as well if you need to enable toggle.

To make Windows Vista try to obtain IP Address from a DHCP server with a DHCP discovery packet set with the broadcast flag and on its failure unset the broadcast flag and try again to obtain an IP Address, try the following:

1. From Start - Search, type regedit and press Enter.

2. Navigate to the following Registry key in the leftpane:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\]

HKEY_LOCAL_MACHINE\SYSTEM

\CurrentControlSet

\Services

\Tcpip

\Parameters

\Interfaces

From the many GUIDs, choose the one that is for your Network Card and in the rightpane add a new DWORD as “DhcpConnEnableBcastFlagToggle” and set its value to “1″. This will enable the toggle. If you choose to revert to defaults then you can simply delete key.

Unset Broadcast Flag in DHCP Discover Packets

If you for sure know that your DHCP server doesn’t support broadcast flag set in incoming DHCP Discovery packets then you can simply unset it permanently by the adding a new “DhcpConnForceBroadcastFlag” DWORD and its value to “0″ [default in Windows 7 beta and Windows XP]. If you choose to revert to defaults at a later time then simply delete the key.

No comments:

Post a Comment