2 IP addresses when PXE booting, ping check doesn't spot same MAC address

Stephen Borrill dhcp-users at borrill.org.uk
Tue Oct 21 15:02:12 UTC 2014


On 21/10/2014 14:12, Patrick Trapp wrote:
>> I'm using a diskless system to boot Windows (Citrix Provisioning 
>> Services). This does a BIOS PXE boot, loads a bootstrap file from 
>> TFTP which connects to a virtual hard disk and then continues with 
>> the Windows boot as though it were a local disk. This means that the 
>> IP address acquired from the BIOS is inherited by Windows and
>> remains in use. The interface within Windows is still set up to use
>> DHCP and so it goes through its usual DHCP phase.
>> 
>> It is common to end up with 2 IP addresses on the network when doing
>>  this. Initially the problem was that the BIOS does not send a UID 
>> with the request, but Windows does, so that dhcpd was treating them 
>> as two separate leases. I upgraded to v4.3.0 and used 
>> "ignore-client-uids true" to stop this. However, this then triggered 
>> another problem. At the time that Windows requests its IP address, 
>> the IP address from the PXE phase is still active as it cannot be 
>> released by the client. Therefore, the dhcpd ping check triggers,
>> the original IP address is abandoned and a new IP address is picked:
>> 
[snip]
>> To test this theory, setting "ping-check false" allows the machine to
>> keep its single initial address.
>> 
>> It seems to me that there should be an option to only abandon an IP 
>> address after a ping check if the MAC address that responds does not
>>  match the requester. Any other suggestions?
>
> Perhaps I miss the point of the request, but I think we have a system
> that does something similar (as far as a two-stage boot). The first
> stage gets a very short lease (I'm not sure how) - is there a client
> option that would override (underride?) the server's default minimum
> lease time that you could utilize?

Problem is that the first stage boot is not just a transitory bootstrap,
it is effectively providing a permanent link to the virtual disk, so the
IP address cannot be released. The usual PXEClient class to modify the
lease time therefore would not help.

-- 
Stephen


More information about the dhcp-users mailing list