PXE boot and DHCP server configuration Failing Auto Installation

dhcppreseedpxe-boot

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

My dhcpd.conf looks like this

{
    ddns-update-style none;
    option domain-name "hadoop-myorg.org";
    option domain-name-servers 192.168.3.5;
    default-lease-time 600;
    max-lease-time 7200;

    group {
        filename "pxelinux.0";
        next-server 192.168.13.184;
        host hadoop1 { hardware ethernet 90:e6:ba:d5:53:f8; }
    }

    subnet 192.168.13.0 netmask 255.255.255.0 {
        option routers 10.0.0.254;

        pool {
            option domain-name-servers 192.168.3.5;
            max-lease-time 3000;
            range 192.168.13.55 192.168.13.65;
            deny unknown-clients;
        }
    }
}

Best Answer

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