0

UEFI-based laptops not displaying the iPXE boot menu

I'm testing iPXE to replace the old PXE solution. For my test environment, I'm using CentOS 8 with iPXE, Dnsmasq and Apache installed from the repository. Dnsmasq is configured as a dhcpProxy because of an existing server.

iPXE appears to be working as both UEFI and BIOS-based laptops are able to pxe boot with iPXE. However, I can only get BIOS-based laptops to load to the boot menu.

This my dnsmasq configuration:

#disable dns server
port=0

#enable tftp server
enable-tftp
tftp-root=/tftpboot

#dhcp proxy mode. do not act as the authoratitive dhcp server
dhcp-range=192.168.140.0,proxy,255.255.252.0

#send disable multicast and broadcast discovery, and to download the boot file immediately
dhcp-option=vendor:PXEClient,6,2b

#set tag ENH if request comes from iPXE (iPXE user class)
dhcp-userclass=set:ENH,iPXE

#if request comes from firmware, load iPXE via TFTP
pxe-service=tag:!ENH,X86-64_EFI, UEFI: Chainload Boot - iPXE, ipxe.efi
pxe-service=tag:!ENH,X86PC, PC-DOS: Chainload Boot - iPXE, undionly.kpxe

#if request comes from iPXE, direct it to boot from boot.ipxe
pxe-service=tag:ENH,X86-64_EFI, UEFI: ipxe.efi - iPXE, http://192.168.140.21/menu/boot.ipxe
pxe-service=tag:ENH,X86PC, PC-DOS: undionly.kpxe - iPXE, http://192.168.140.21/menu/boot.ipxe

#2nd boot file
dhcp-boot=tag:ENH,http://192.168.140.21/menu/boot.ipxe

#enable logging
log-queries
log-dhcp
NiKiZe
  • 1,246
  • 8
  • 20
Merl
  • 1
  • Do you get "iPXE initialising devices" in both pcbios and efi mode? If so what do you get after? If not what do you actually see happen in the non working case? – NiKiZe Aug 04 '21 at 11:28

1 Answers1

1

Please advise. Thank you.

drop iPXE; get it done with Syslinux or Grub

Pat
  • 3,519
  • 2
  • 17
  • 17
  • 1
    Why do you recommend this? – Michael Hampton Mar 11 '21 at 21:03
  • 1
    iPXE always departs from the standard; that's cool when "hacking" but no when working. I consider their benefit (PXE HTTP transfers) is marginal when only transferring a kernel and initrd while they refuse to implement RFC 7440 for faster standard TFTP transfer. Winboot another hack associated to them, breaking the loop another hack to support them, I think they were related somehow to HTTP BOOT, very low adoption. When windows wanted a boot manager they use a fully standardized one (bootmgr.efi) when Linux wanted a boot manager they did the same (Syslinux/Grub).then who's iPXE real target? – Pat Mar 11 '21 at 22:05