UEFI HTTP chainloading

submited by
Style Pass
2024-07-02 14:30:09

Version 2.5 of the UEFI specification introduces the UEFI HTTP Boot feature. You can use the basic UEFI HTTP Boot client to chainload iPXE from an HTTP server, eliminating the need for a separate TFTP server in your boot infrastructure.

The simple UEFI HTTP Boot client will download and boot iPXE. You can then use any of iPXE's more advanced features such as HTTPS, Digest authentication, POST requests, scripts, menus, customisable code signing etc. to download and boot your operating system.

UEFI HTTP chainloading provides a way to load iPXE on systems which do not have iPXE present as part of the UEFI firmware. If your system already provides iPXE as part of the UEFI firmware, then you do not need to use UEFI HTTP chainloading.

You must configure your DHCP server to check for a UEFI HTTP Boot client, and to provide the string HTTPClient as the vendor class identifier, and an HTTP URI as the boot filename. If you are using ISC dhcpd then you need to edit /etc/dhcpd.conf to contain

Place your iPXE binary (e.g. ipxe.efi) on your web server, along with an iPXE script containing the commands needed to boot your operating system. For example, to boot a system comprising a Linux kernel and initial ramdisk, your script could contain

Leave a Comment