I have a ISC DHCP Server installed on Ubuntu 9.10 . I have managed to successfully boot a PXE client , obtain a DHCP address and load the initrd.gz file. But I am facing a vague problem when the debian installer starts up and tries to get a DHCP server

The client send a DHCP request and I verified that is the same MAC Address. But I get a DHCP DECLINE (The client declines the address ). It offers all the address in the pool and then there is a DHCP NAK (no more free leases )

I tried using the Option no-ping, and also option one-client-one-lease but it does not help .

If I set the client to use a fixed-address then the above problem is not there and the installation proceeds smoothly

Can you give me any clues on what should be the DHCP server configuration

(Just a guess) Sounds like something wrong with the PXE implementation on the NIC as the installer should just pull the IP from the PXE Table, not request another from the DHCP server.
–
Chris S♦Jun 30 '10 at 15:54

I've had this problem, but i cant for the life of me remember what i did to fix it ...grrrrr :-). Try using a different dhcp server and see what results you get. If things get desperate you could always set a static ip address for you debian installer.
–
The Unix JanitorOct 14 '10 at 8:51

5 Answers
5

What version of syslinux are you using (syslinux provides your pxelinux.0 file)? If it's not recent, try upgrading.

Are you using IPAPPEND 1 in your pxelinux.cfg file? This tells pxelinux to explicitly pass the IP address and gateway to the installer.

One issue I see with your configuration is your router value is outside the DHCP subnet. That's probably not going to work like you want it to, and may very well be why the installer is rejecting it. The value for 'options routers' should be your gateway. For the most common network setup, that would be 192.168.13.1

I have had this same problem with isc-dhcpd on Ubuntu 9.10. Ultimately I upgraded the operating system and a new isc-dhcpd-server package shipped with it.

A little more information might be helpful here, but it looks like a client side issue to me. A similar thing sometimes occurs with poorly implemented tftp clients in pxe boots, but I don't think you've gotten to the pxe part yet, right?

If you have access to it- try running gpxe on the client. It is installed in many BIOS systems now. Also, dhclient and wireshark can be used to troubleshoot the dns. The old fashioned way would be to try it on a different subnet with a different dhcp implementation such as Junipers or even MS Windows. Also, make sure there really is only a single dhcp server running on your subnet at once, or this can cause confusion.