Friday, August 15, 2008

Windows Vista cannot obtain an IP address from certain routers/DHCP servers

A month ago I bought a Dell Inspiron 1525 which has Windows Vista Home. I was surfing internet using ethernet and every thing was fine... Today i tried to connect to a wlan network... I was able to see the wireless network and i am also connected to the network.

Then comes the surprise!! I am not able to ping my peer machines in the network... Then i starting troubleshooting... The IP address assigned to my machine is unusal and that is not the one assigned by my DHCP server!!.. Then started googling and found out that by default in Vista, the BROADCAST FLAG IN DHCP DISCOVERY PACKETS IS ENABLED... So it is not able to obtain ip from certain type of routers or dhcp servers..

To disable it, (as usual there is no check box or some thing in network options.....but) you have to add an entry in registry...
  • Open regedit (run > regedit)
  • Open HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
  • Select the GUID that corresponds to the device for WLAN (I found the guid in my machine with the wierd ip that vista assigned itself for wlan adapter)
  • add an entry with DWORD as DhcpConnEnableBcastFlagToggle and its value as 1.
  • or add an entry with REG_DWORD as DhcpConnForceBroadcastFlag and value 0.
  • Thats restart your machine and you are connected to your network!