So, I already have DHCP server in my local network. But I want to setup new VMs with network boot (PXE). I've setup dnsmasq in proxyDHCP
mode to provide PXE info to booting clients while using other DHCP Server for providing IP/MASK.
Problem: I was able to setup PXE legacy boot and it works fine, but not EFI boot.
It says "PXE-E18 Server response timeout". Tried that on Hyper-V VM Gen2 and physically connected PC. I see in logs that dnsmaq receives request, but nothing happens…
So the question is: is this a dnsmasq issue or what? if it is, then could you please advise some alternatives to this?
My config if it help:
tftp-root=/opt/pxeboot/tftpboot
enable-tftp
dhcp-vendorclass=BIOS,PXEClient:Arch:00000
dhcp-vendorclass=UEFI,PXEClient:Arch:00007
dhcp-boot=net:UEFI,uefi/bootx64.efi
dhcp-boot=net:BIOS,pxelinux.0
dhcp-no-override
pxe-prompt="Press F8 for boot menu", 1
pxe-service=X86PC, "Boot Legacy PXE", pxelinux
dhcp-range=192.168.1.99,proxy
edit
Feb 19 16:17:56 dnsmasq-dhcp[16026]: 2483890568 vendor class: PXEClient:Arch:00007:????:??????
Feb 19 16:17:56 dnsmasq-dhcp[16026]: 2483890568 PXE(eth0) 00:15:5d:21:94:0a proxy
Feb 19 16:17:56 dnsmasq-dhcp[16026]: 2483890568 tags: UEFI, eth0
Feb 19 16:17:56 dnsmasq-dhcp[16026]: 2483890568 bootfile name: uefi/bootx64.efi
So client arch is 7
All files is in place.
Thanks in advance.
Best Answer
Please check DHCP Option 93 at RFC 4578
you forgot to consider the type 9 at your dnsmasq config. If your x86_64 client announces type 9 within its DHCP option 93 the request will be ignored by the proxyDHCP.
To see what's really going on just run Wireshark capture.
Please see I have edited your question; a proxyDHCP provides only PXE info only to PXE clients.