ProxyDHCP not playing nice

  • I am trying to setup a Proxy DHCP server to integrate with my existing network. I’ve got a router that’s the DHCP server and I can’t set any options on it for PXE boot requests. I’d prefer to leave it as the DHCP server over my computer as this computer isn’t always on.

    Enter Proxy DHCP server. I followed [URL=‘’]this page on the wiki[/URL] as closely as I could. I’m running Fedora 16. I have fog installed after some edits to the install script. I setup FOG normally with DHCP off. I may have specified a router IP address when doing the setup, but I found and removed that from the FOG configuration pages. I have edited /etc/dnsmasq.conf with the settings mentioned in the wiki article. The same settings were in the example file, and if I create that file the dnsmasq service won’t restart/start.

    When I try and PXE boot a physical computer it just times out. When I try and PXE boot a virtual machine that’s network is bridged it get’s an IP address but comes back and says “No Filename” and then says no bootable devices (true).

    Network map:
    Cable Modem --> Router @ Subnet
    My computer/FOG server @
    DHCP - -


    Don’t function as a DNS server:


    Log lots of extra information about DHCP transactions.


    Dnsmasq can also function as a TFTP server. You may uninstall

    tftpd-hpa if you like, and uncomment the next line:


    Set the root directory for files available via FTP.


    The boot filename.


    rootpath option, for NFS


    kill multicast


    Disable re-use of the DHCP servername and filename fields as extra

    option space. That’s to avoid confusing some old or broken DHCP clients.


    PXE menu. The first part is the text displayed to the user. The second is the timeout, in seconds.

    pxe-prompt=“Press F8 for boot menu”, 3

    The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86,

    Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI

    This option is first and will be the default if there is no input from the user.

    pxe-service=X86PC, “Boot from network”, pxelinux

    This range(s) is for the public interface, where dnsmasq functions

    as a proxy DHCP server providing boot information but no IP leases.

    Any ip in the subnet will do, so you may just put your server NIC ip here.

    Since dnsmasq is not providing true DHCP services, you do not want it

    handing out IP addresses. Just put your servers IP address for the interface

    that is connected to the network on which the FOG clients exist.

    If this setting is incorrect, the dnsmasq may not start, rendering

    your proxyDHCP ineffective.


    If you don’t want dnsmasq to poll /etc/resolv.conf or other resolv

    files for changes and re-read them then uncomment this.


    Include a another lot of configuration options.


    All other lines are commented out and have been removed from this post

    dhcpd.conf file:

    DHCP Server Configuration file.

    see /usr/share/doc/dhcp*/dhcpd.conf.sample

    This file was created by FOG

    use-host-decl-names on;
    ddns-update-style interim;
    ignore client-updates;

    subnet netmask {
    option subnet-mask;
    range dynamic-bootp;
    default-lease-time 21600;
    max-lease-time 43200;
    filename “pxelinux.0”;

    What can I do to get this working? Thanks!

  • Moderator

    unless you are just tied to fedora for some reason, install ubuntu 10.04 Server LTS and you can follow the instructions in the wiki article. I do not use Fedora currently, and I have no idea how to customize dnsmasq to do what it needs to do without the Ubuntu LTSP stuff.

  • Sorry, Forgot to say. I tried creating that file by copy/pasting from the the wiki. With that file present I can not start / restart the dnsmasq service.

  • Moderator

    There is a difference between the /etc/dnsmasq.conf and /etc/dnsmasq.d/ltsp.conf