Vista keeps name server options from previous lease

Bruce Hudson Bruce.Hudson at Dal.Ca
Mon Sep 17 14:39:15 UTC 2007


    How sure are you that the connection to the wireless network is the
cause of the problem? We've seen the same issue but it is caused by
Vista's use of the DHCPINFORM packet. We have the exact same setup as
you described.

    In my opinion at least, this is a DHCP issue. The server does not
deal with the INFORM packets correctly. It uses the relay address to
determine what subnet should be used to respond to the request rather
than the IP address of the client. This causes it to send out a reply
with the wrong DNS servers. 

    The fix I proposed to the dhcp-hackers list was to remove the if
statement in the dhcpinform function:

          /* Find the subnet that the client is on. */
        < if (gip.len) {
        <      /* XXX - do subnet selection relay agent suboption here */
        <      find_subnet(&subnet, gip, MDL);
        < } else {
        <      /* XXX - do subnet selection (not relay agent) option here */
        <      find_subnet(&subnet, cip, MDL);
        < }

	> find_subnet(&subnet, cip, MDL);

As far as I can see, this change will do no harm. The only time results
will differ is when the server is doing the wrong thing. It is not a
complete fix since it does not solve the issue of a separate registration
pool within a subnet but it should do the job for us.

    I intend to make this change here in any case as soon as I have time
to test it. 
--
Bruce A. Hudson				| Bruce.Hudson at Dal.CA
UCIS, Networks and Systems		|
Dalhousie University			|
Halifax, Nova Scotia, Canada		| (902) 494-3405


More information about the dhcp-users mailing list