Dnsmasq config for Tomato that supports UEFI PXE boot?



  • Wiki says to add dhcp-boot=pxelinux.0,X.X.X.X but this does not support UEFI. On the wiki articles about adding UEFI support from my understanding this is for a standalone install just to perform this function since it wants you to add port=0 so it does not function as a DNS server. I have tried to figure out what to change to get it to work in Tomato but I’m having some trouble. Could someone post what should go in the custom configuration field?

    Yes my Tomato install has Dnsmasq version 2.76

    Maybe update the Wiki as well? Or add a blurb about how this can’t work on DD-WRT/Tomato
    https://wiki.fogproject.org/wiki/index.php?title=FOG_with_DD-WRT_firmware


  • Moderator

    Please use my ltsp.conf file here exactly.

    # Don't function as a DNS server:
    port=0
    
    # Log lots of extra information about DHCP transactions.
    log-dhcp
    
    # Set the root directory for files available via FTP.
    tftp-root=/tftpboot
    
    # The boot filename, Server name, Server Ip Address
    dhcp-boot=undionly.kpxe,,<fog_server_IP>
    
    # 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.
    dhcp-no-override
    
    # inspect the vendor class string and match the text to set the tag
    dhcp-vendorclass=BIOS,PXEClient:Arch:00000
    dhcp-vendorclass=UEFI32,PXEClient:Arch:00006
    dhcp-vendorclass=UEFI,PXEClient:Arch:00007
    dhcp-vendorclass=UEFI64,PXEClient:Arch:00009
    
    # Set the boot file name based on the matching tag from the vendor class (above)
    dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,<fog_server_IP>
    dhcp-boot=net:UEFI,ipxe.efi,,<fog_server_IP>
    dhcp-boot=net:UEFI64,ipxe.efi,,<fog_server_IP>
    
    # PXE menu.  The first part is the text displayed to the user.  The second is the timeout, in seconds.
    pxe-prompt="Booting FOG Client", 1
    
    # 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 to FOG", undionly.kpxe
    pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi
    pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi
    
    dhcp-range=<fog_server_ip>,proxy
    

    As long as you have at least dnsmasq 2.76 or newer it will work correctly. Don’t forget to replace <fog_server_ip> with the IP address of your fog server.

    ref: https://forums.fogproject.org/topic/8725/compiling-dnsmasq-2-76-if-you-need-uefi-support/5



  • @chaosblades Those wiki instructions are older, and we do not use pxelinux anymore, and we do not add a .0 to the files in 2.76 anymore. Available files are in /tftpboot try each one.


 

387
Online

41.2k
Users

11.6k
Topics

110.7k
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.