In the rfc4578 there are following type requested:
Type Architecture Name ---- ----------------- 0 Intel x86PC 1 NEC/PC98 2 EFI Itanium 3 DEC Alpha 4 Arc x86 5 Intel Lean Client 6 EFI IA32 7 EFI BC 8 EFI Xscale 9 EFI x86-64
use-host-decl-names on; ddns-update-style interim; ignore client-updates; next-server 192.168.1.1; authoritative; subnet 192.168.1.0 netmask 255.255.255.0 { option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.1.10 192.168.1.254; default-lease-time 21600; max-lease-time 43200; option domain-name-servers 192.168.1.1; #option routers x.x.x.x; class "UEFI-32-1" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00006"; filename "i386-efi/ipxe.efi"; } class "UEFI-32-2" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00002"; filename "i386-efi/ipxe.efi"; } class "UEFI-64-1" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00007"; filename "ipxe.efi"; } class "UEFI-64-2" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00008"; filename "ipxe.efi"; } class "UEFI-64-3" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00009"; filename "ipxe.efi"; } class "Legacy" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00000"; filename "undionly.kkpxe"; } }
ddns-update-style interim; allow booting; allow bootp; authoritative; log-facility local6; ignore client-updates; set vendorclass = option vendor-class-identifier; ## Allowing EFI Clients option pxe-system-type code 93 = unsigned integer 16; option rfc3442-classless-static-routes code 121 = array of integer 8; option ms-classless-static-routes code 249 = array of integer 8; option space pxelinux; option pxelinux.magic code 208 = string; option pxelinux.configfile code 209 = text; option pxelinux.pathprefix code 210 = text; option pxelinux.reboottime code 211 = unsigned integer 32; option architecture-type code 93 = unsigned integer 16; option pxelinux.mtftp-ip code 1 = ip-address; option pxelinux.mtftp-cport code 2 = unsigned integer 16; option pxelinux.mtftp-sport code 3 = unsigned integer 16; option pxelinux.mtftp-tmout code 4 = unsigned integer 8; option pxelinux.mtftp-delay code 5 = unsigned integer 8; subnet 10.100.0.0 netmask 255.255.255.0 { interface br1000; option routers 10.100.0.1; option domain-name-servers 10.100.0.1, 10.100.0.231; option domain-name "angelsofclockwork.net"; option subnet-mask 255.255.255.0; range 10.100.0.110 10.100.0.199; ## EFI Client Catch class "pxeclients" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; if option pxe-system-type = 00:07 { filename "boot/grub2/x86_64-efi/core.efi"; } else if option pxe-system-type = 00:08 { filename "boot/grub2/x86_64-efi/core.efi"; } else if option pxe-system-type = 00:09 { filename "boot/grub2/x86_64-efi/core.efi"; } else if option pxe-system-type = 00:0a { filename "boot/grub2/armv7a-efi/core.efi"; } else if option pxe-system-type = 00:0b { filename "boot/grub2/aarch64-efi/core.efi"; } else { filename "boot/grub2/i386-pc/core.0"; } } default-lease-time 21600; max-lease-time 43200; next-server 10.100.0.1; }