Juan García-Pardo
2016-10-27 06:46:28 UTC
Hi dnsmasq community,
I’ve been configuring a system to serve as the configuration point in the network for net booting a number of UEFI machines, using dnsmasq as the primary tool for assigning files to the PXE. It works fine when dnsmasq in configured to serve as DHCP server assigning IP addresses, but it does not when in proxy mode.
Several network traffic captures show of course differences between both modes (in particular the use of port 4011 when proxy), but nothing out of the ordinary.
This is what I’m trying to do: If the client is a UEFI architecture id 7, boot from grubx64.efi file.
- When in “non proxy mode”, the image is transferred via TFTP to the client, and the client starts requesting more files via TFTP (grub.cfg, and so on).
- When in proxy mode, the image is transferred via TFTP to the client, and nothing else happens. Grub runs, but it’s stuck in its prompt. No other TFTP requests are made. In particular, grub doesn’t have the root or cmdpath variables set (as if the way to run grubx64.efi is different in this mode).
I don’t know how to proceed further, and thus the reason to ask the experts for some light in this regard.
The configuration file is very simple, and it has this part in common for both scenarios:
port=0
interface=eth1
enable-tftp
tftp-root=/imaging/netboot/
log-dhcp
For the “non proxy mode”, this is appended:
dhcp-range=192.168.8.10,192.168.8.200
dhcp-match=x86PC, option:client-arch, 0
dhcp-match=BC_EFI, option:client-arch, 7
dhcp-boot=tag:x86PC,pxelinux.0
dhcp-boot=tag:BC_EFI,from-ubuntu/grubx64.efi
For the proxy mode, this instead:
dhcp-range=192.168.8.3,proxy
pxe-service=x86-64_EFI, "Boot UEFI PXE-64", from-ubuntu/grubx64.efi
I would appreciate any help. Many thanks in advance,
Juan
I’ve been configuring a system to serve as the configuration point in the network for net booting a number of UEFI machines, using dnsmasq as the primary tool for assigning files to the PXE. It works fine when dnsmasq in configured to serve as DHCP server assigning IP addresses, but it does not when in proxy mode.
Several network traffic captures show of course differences between both modes (in particular the use of port 4011 when proxy), but nothing out of the ordinary.
This is what I’m trying to do: If the client is a UEFI architecture id 7, boot from grubx64.efi file.
- When in “non proxy mode”, the image is transferred via TFTP to the client, and the client starts requesting more files via TFTP (grub.cfg, and so on).
- When in proxy mode, the image is transferred via TFTP to the client, and nothing else happens. Grub runs, but it’s stuck in its prompt. No other TFTP requests are made. In particular, grub doesn’t have the root or cmdpath variables set (as if the way to run grubx64.efi is different in this mode).
I don’t know how to proceed further, and thus the reason to ask the experts for some light in this regard.
The configuration file is very simple, and it has this part in common for both scenarios:
port=0
interface=eth1
enable-tftp
tftp-root=/imaging/netboot/
log-dhcp
For the “non proxy mode”, this is appended:
dhcp-range=192.168.8.10,192.168.8.200
dhcp-match=x86PC, option:client-arch, 0
dhcp-match=BC_EFI, option:client-arch, 7
dhcp-boot=tag:x86PC,pxelinux.0
dhcp-boot=tag:BC_EFI,from-ubuntu/grubx64.efi
For the proxy mode, this instead:
dhcp-range=192.168.8.3,proxy
pxe-service=x86-64_EFI, "Boot UEFI PXE-64", from-ubuntu/grubx64.efi
I would appreciate any help. Many thanks in advance,
Juan