UEFI - initial registration
Running Version 69
SVN Revision: 6079
Last night I followed this guide https://forums.fogproject.org/topic/8726/advanced-dnsmasq-techniques to updating dnsmasq to support UEFI. Great guide!!!
I have run into a little quirk with this set up and I am wondering if there is already a fix in place or am i missing something.
On a new machine, its a Dell Optiplex 7050. I booted with UEFI IPv4 to try and register the machine. It timed out as no boot device available. In wireshark, Fog sent out the DHCP offer but that was the only communication. Going further, I used legacy boot PXE and was able to register the machine. Next, I selected deploy on my image and booted the machine with UEFI IPv4. This time it booted successfully and imaged.
So I am trying to figure out why it would not register initially but once the client was already registered UEFI IPv4 would work fine.
Any help with this would be greatly appreciated and thanks for all your work!
@george1421 I am on dnsmasq 2.76 and my ltsp.conf file is identical to what you posted.
All of my Dell’s are working 100% now. I am not sure why they did not initially, but they seem to be fine now. I will capture the pcap today with the Posiflex. Thanks!
@fallingwax If you can get the target computers and the fog server on the same subnet we can capture a pcap of the pxe booting process using this procedure: https://forums.fogproject.org/topic/9673/when-dhcp-pxe-booting-process-goes-bad-and-you-have-no-clue
Ideally I would like to capture the pcap from the FOG server perspective so we get both broadcast and unicast communications. Also ideally we would like to capture a failed pxe boot on the dells as well as your Posiflex systems.
While I didn’t compare the dnsmasq files between the link you provided and my post about dnsmasq 2.76, please use this config file.
Assuming you have dnsmasq 2.76 or newer installed this config file works. To find out what version of dnsmasq you have, key in
# 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
Be sure to update <fog_server_ip> to match your fog server IP address.
So I have been testing this all morning with different machines. Its seems to be working on my Dell’s just fine but inconsistently on my Posiflex units. I have only been able to successfully image one using UEFI.
I have another machine, this is a Posiflex XT3815 (its all in one Point of Sale computer). It attempted to register using the UEFI stack but once we hit enter to register its going into a menu loop where it will countdown 3 seconds on host registration but wont except any input until it times out.