Hi!

One specific thing that has me confused in all this is I keep seeing references 
to a boot-file-name setting with various different *.efi files, but can't find 
any of those files anywhere.  There doesn't seem to be an rpm that will install 
them in rocky linux 8.x, 9.x or CentOS 7.
Well, those efi files are coming from iPXE (https://ipxe.org/). You can 
download the binaries (http://boot.ipxe.org) or bake them according to your 
needs (https://ipxe.org/download#uefi).

All the configuration examples about the chain loading 
(https://ipxe.org/howto/chainloading) are for the ISC DHCP server, so here is a 
snippet about chain loading + breaking the loop (we must support both BIOS and 
UEFI clients) for Kea:

[…]
    "client-classes":
    [
      { "name": "XClient_iPXE", "test": "substring(option[77].hex,0,4) == 
'iPXE'", "boot-file-name": "http://192.168.10.4/ipxe/boot.ipxe"; },
      { "name": "UEFI-32-2",    "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00002'", "boot-file-name": "ipxe/i386/ipxe.efi",   
"next-server": "192.168.10.4" },
      { "name": "UEFI-32-6",    "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00006'", "boot-file-name": "ipxe/i386/ipxe.efi",   
"next-server": "192.168.10.4" },
      { "name": "UEFI-64-7",    "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00007'", "boot-file-name": "ipxe/x86_64/ipxe.efi", 
"next-server": "192.168.10.4" },
      { "name": "UEFI-64-8",    "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00008'", "boot-file-name": "ipxe/x86_64/ipxe.efi", 
"next-server": "192.168.10.4" },
      { "name": "UEFI-64-9",    "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00009'", "boot-file-name": "ipxe/x86_64/ipxe.efi", 
"next-server": "192.168.10.4" },
      { "name": "Legacy",       "test": "substring(option[60].hex,0,20) == 
'PXEClient:Arch:00000'", "boot-file-name": "ipxe/undionly.kipxe",  
"next-server": "192.168.10.4" }
    ],
[…]

You will obviously need an HTTP server, serving the ipxe script (e.g. 
http://boot.ipxe.org/demo/), as well as TFTP server (e.g. tftpd-hpa) serving 
the efi’s. In the example above both services run on the very same machine.
If IPv6 is a topic for you, you might want to take a look into the Kea DHCPv6 
iPXE configuration, 
https://github.com/isc-projects/kea/blob/master/doc/examples/kea6/iPXE.json.


Hope this helps.

Best,
   Damyan


Damyan Yordanov

BTP Core FP R&C Gardener (SE)

SAP SE, Dietmar-Hopp-Allee 16, 69190 Walldorf, Germany

T +49 6227 7-65764, M +49 160 90 842 652, 
[email protected]<mailto:[email protected]>
-- 
ISC funds the development of this software with paid support subscriptions. 
Contact us at https://www.isc.org/contact/ for more information.

To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users.

Kea-users mailing list
[email protected]
https://lists.isc.org/mailman/listinfo/kea-users

Reply via email to