Add to /etc/dnsmasq.conf:
dhcp-match=set:bios,option:client-arch,0
dhcp-match=set:efi32,option:client-arch,6
dhcp-match=set:efi64,option:client-arch,7
dhcp-boot=tag:bios,lpxelinux.0
dhcp-boot=tag:efi32,syslinux32.efi
dhcp-boot=tag:efi64,syslinux64.efi
Or with external TFTP server:
dhcp-boot=tag:bios,lpxelinux.0,external-tftp-server.lan,10.10.10.10
dhcp-boot=tag:efi32,syslinux32.efi,external-tftp-server.lan,10.10.10.10
dhcp-boot=tag:efi64,syslinux64.efi,external-tftp-server.lan,10.10.10.10
https://www.kernel.org/pub/linux/utils/ … .03.tar.gz
These files for BIOS PXE boot with boot menu:
bios/com32/elflink/ldlinux/ldlinux.c32
bios/com32/lib/libcom32.c32
bios/com32/libutil/libutil.c32
bios/com32/menu/menu.c32
bios/com32/menu/vesamenu.c32
bios/core/lpxelinux.0
bios/memdisk/memdisk
UEFI PXE IA32 files:
efi32/com32/elflink/ldlinux/ldlinux.e32
efi32/efi/syslinux.efi
UEFI PXE x64 files:
efi64/com32/elflink/ldlinux/ldlinux.e64
efi64/efi/syslinux.efi
Boot menu config file in TFTP root:
pxelinux.cfg/default
UI vesamenu.c32
TIMEOUT 80
TOTALTIMEOUT 9000
MENU WIDTH 64
MENU MARGIN 2
MENU ROWS 15
MENU TITLE PXE Boot MENU
#MENU BACKGROUND background.png
MENU AUTOBOOT Starting Local System in # seconds
MENU COLOR border 0 #ffffffff #ee000000 std
MENU COLOR title 0 #ffffffff #ee000000 std
MENU COLOR sel 5 #f0f0f00f #8500f000 std
MENU COLOR unsel 0 #ffffffff #ee000000 std
MENU COLOR pwdheader 0 #ff000000 #99ffffff rev
MENU COLOR pwdborder 0 #ff000000 #99ffffff rev
MENU COLOR pwdentry 0 #ff000000 #99ffffff rev
MENU COLOR hotkey 0 #ff00ff00 #ee000000 std
MENU COLOR hotsel 0 #f0f0f00f #85000000 std
LABEL local
MENU DEFAULT
MENU LABEL ^Boot from Local Hard Disk
LOCALBOOT 0
LABEL installdebian
MENU LABEL ^Install Debian amd64
KERNEL http://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/linux
APPEND vga=788 url=http://10.10.10.10/debian-preseed.cfg locale=en_US keymap=fi hostname=debian domain=lan --
INITRD http://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/initrd.gz
LABEL ubuntu
MENU LABEL Boot ^Ubuntu Server from NFS
KERNEL http://10.10.10.10/boot/ubuntu/vmlinuz
APPEND root=/dev/nfs nfsroot=10.10.10.10:/volume3/nfsroot/ubuntu ip=dhcp rw --
INITRD http://10.10.10.10/boot/ubuntu/initrd.img
LABEL systemrescuecd
MENU LABEL ^SystemRescueCd
KERNEL http://10.10.10.10/boot/systemrescue/rescue32
APPEND setkmap=fi rootpass=notsecure netboot=http://10.10.10.10/boot/systemrescue/sysrcd.dat ethx=10.10.10.99/24 dns=10.10.10.10 gateway=10.10.10.10
INITRD http://10.10.10.10/boot/systemrescue/initram.igz
LABEL dos
MENU LABEL Free^DOS
KERNEL memdisk
APPEND initrd=bootdisks/freedos.img # from default TFTP server
Couldn't test EFI boot successfully yet, but at least it loads syslinux64.efi file with Parallers virtual EFI boot.