Support UEFI PXE boot with DHCPv4
[grml-terminalserver.git] / templates / dhcpd_config
index 824b42e..5bf9ded 100644 (file)
@@ -45,21 +45,27 @@ cat >"$DHCPD_CONFIG_FILE_" <<EOT
 # global settings
 allow booting;
 allow bootp;
-#option option-150 code 150 = text ;
-#option T150 code 150 = string;
 default-lease-time 600;
 max-lease-time 7200;
 
+# UEFI boot with DHCPv4
+option architecture-type code 93 = unsigned integer 16;
+
 subnet $NETWORK_ netmask $NETMASK_ {
   next-server $IP_;
-  if substring (option vendor-class-identifier, 0, 9) = "Etherboot" { filename "etherboot.nbi"; }
-  else { filename "pxelinux.0"; }
 #  option subnet-mask $NETMASK_;
   range $IPRANGE_FROM_ $IPRANGE_TO_;
   $ROUTERS_LINE_
   $DNS_LINE_
-#  option T150 "/menu.lst";
-#  option option-150 "(nd)/menu.lst";
+
+  class "pxeclients" {
+    match if substring (option vendor-class-identifier, 0 ,9) = "PXEClient";
+    if option architecture-type = 00:07 {
+      filename "shim.efi";
+    } else {
+      filename "pxelinux.0";
+    }
+  }
 }
 
 EOT