Public bug reported: In Ubuntu 12.04.3 the isc-dhcp-server (v4.1) does not work properly with diskless boot and ddns.
During diskless boot the server issues an IP. The machine boots and the OS loads, during loading and to keep ddns happy the isc-dhcp-client (dhclient) needs to be loaded even though the machine already has an address. Because the machine has just booted it has no /var/lib/dhcp/dhclient.leases file so dhclient does a DISCOVER with the current ip for that interface. The server has already issued an address (it issued it during boot) so it does a ping which succeeds as the address is correct. However dhcpd does not check the MAC so it assumes the address is already allocated (which it is, correctly) so it issues another new address and does a DDNS update. It has now created a DDNS entry to the wrong address. This cycle continues until all the addresses for a range are exhausted. Correct operation: It should check the MAC resolution after the ping-check and if the MAC matches the UID and/or MAC of a previous lease it should change it's usual behaviour. It should re-issue the address that was requested and previously allocated and behave as though the client did a REQUEST instead of a DISCOVER. Work round, add ping-check false; to the /etc/dhcpd.conf Though this is not ideal as a ping-check is a good sanity check. ** Affects: isc-dhcp (Ubuntu) Importance: Undecided Status: New ** Tags: dhcp diskless nfs-root -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1269113 Title: isc-dhcpd does not play niceley with diskless boot To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1269113/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs