This is due to Dnsmasq's use of DHCP Option 43. Many (most?) UEFI
implementations do not seem to handle this the same as bios systems. While I
have not seen any definitive answers as to what has changed, there are many
complaints about this on various forums. Maybe changes were made to
accommodate pxe over ipv6? Just a guess.
Some examples:
"Some UEFI targets are not able to correctly process option 43. For those targets it
is necessary to set option 66 and 67." [1]
"UEFI devices are not correctly respecting the PXE Boot Menu options" [2]
"the above works if dnsmasq does not act as a DHCP proxy. For some reason the EFI
firmware does not handle that well" [3]
Since most large companies are presumably using a commercial solution or just
straight dhcp options for pxe boot, efi support for Proxy DHCP has not trickled
down to any open source projects that I am aware of. I would expect this to
become an issue in the near future, as many new systems are EFI only and do not
include a bios compatibility support module.
I would love to see this get fixed in Dnsmasq, but I would expect it would
require some significant changes to how it handles Proxy DHCP.
[1]
http://www-01.ibm.com/support/knowledgecenter/SS3HLM_7.1.1.14/com.ibm.tivoli.tpm.osd.doc/install/cosd_idhcp.htm
[2] https://community.landesk.com/support/message/90065#sthash.ctWAPCAS.dpuf
[3] http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2014q1/008182.html
Another interesting example: http://firmware.intel.com/messages/331
On Feb 14, 2015, at 06:04, Greg C <icypo...@outlook.com> wrote:
Has anybody been able to pxeboot an EFI system using Dnsmasq in proxyDHCP mode? Every machine I have tried fails to boot (mostly newer Dells with Intel cards).
The relevant lines from from my config file are here:
pxe-service=x86-64_EFI,"Loading...",snponly
dhcp-range=192.168.0.0,proxy,255.255.0.0
Watching the traffic with wireshark I can see the proxy response get sent
containing my 'menu' encapsulated in option 43 with the correct boot file name.
Still, the client never seems acknowledge the boot info, either by showing an
error or attempting to boot. It just times out after ~60 seconds and boots to
the next device. If I reboot using 'Legacy PXE', everything works perfectly (I
have a line for x86PC as well). If I switch from proxy to full DHCP I can boot
in EFI mode without issue.
I am running Dnsmasq version 2.71 on Ubuntu if that matters.
Am I doing something wrong, or does proxyDHCP not work with EFI systems yet?
These same machines can boot to Windows Deployment Services in proxyDHCP mode,
so I am sure EFI PXE is capable of booting this way.
Thanks.
_______________________________________________
Dnsmasq-discuss mailing list
Dnsmasq-discuss@lists.thekelleys.org.uk
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss