]> git.openstreetmap.org Git - chef.git/commitdiff
dhcpd: add time-offset + update netboot config
authorGrant Slater <github@firefishy.com>
Wed, 12 Oct 2022 08:17:01 +0000 (09:17 +0100)
committerGrant Slater <github@firefishy.com>
Wed, 12 Oct 2022 08:17:01 +0000 (09:17 +0100)
cookbooks/dhcpd/templates/default/dhcpd.conf.erb

index 6757be88eda173e8aa195d72891a4afe7521efa0..7d20b1b9eea5b2e0ef90df4af9dc5dd5ef057e08 100644 (file)
@@ -1,6 +1,6 @@
 # DO NOT EDIT - This file is being maintained by Chef
 
-option architecture-type code 93 = unsigned integer 16;
+option arch code 93 = unsigned integer 16;
 
 default-lease-time 600;
 max-lease-time 7200;
@@ -14,16 +14,18 @@ subnet <%= interface[:network] %> netmask <%= interface[:netmask] %> {
   option domain-name "<%= @domain %>";
   option domain-name-servers <%= interface[:gateway] %>;
   option ntp-servers <%= node[:ntp][:servers].first %>;
-
-  class "pxeclients" {
-    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
-    next-server <%= interface[:gateway] %>;
-
-    if option architecture-type = 00:07 {
-      filename "netboot.xyz.efi";
-    } else {
-      filename "netboot.xyz.kpxe";
-    }
+  option time-offset 0;
+
+  # See https://netboot.xyz/docs/docker/#dhcp-configurations
+  if exists user-class and ( option user-class = "iPXE" ) {
+    filename "http://boot.netboot.xyz/menu.ipxe";
+  } elsif option arch = encode-int ( 16, 16 ) {
+    filename "http://boot.netboot.xyz/ipxe/netboot.xyz.efi";
+    option vendor-class-identifier "HTTPClient";
+  } elsif option arch = 00:07 {
+    filename "netboot.xyz.efi";
+  } else {
+    filename "netboot.xyz.kpxe";
   }
 }
 <% end -%>