Parcourir la source

[trac5356] Example for kea6 iPXE

Wlodek Wencel il y a 7 ans
Parent
commit
32c848f7d1
1 fichiers modifiés avec 60 ajouts et 0 suppressions
  1. 60 0
      doc/examples/kea6/iPXE.json

+ 60 - 0
doc/examples/kea6/iPXE.json

@@ -0,0 +1,60 @@
+// This is and example configuration for iPXE boot in Kea6.
+
+{
+   "Dhcp6":{
+// mandatory part of the config that list interfaces on which kea will listen to incoming traffic
+      "interfaces-config":{
+         "interfaces":[
+            "ethX"
+         ]
+      },
+
+// Two classes are migrated form ISC-DHCP example:
+// if exists dhcp6.client-arch-type and
+//    option dhcp6.client-arch-type = 00:07 {
+//    option dhcp6.bootfile-url "http://[2001:db8::1]/ipxe.efi";
+// } else if exists dhcp6.user-class and
+//          substring(option dhcp6.user-class, 2, 4) = "iPXE" {
+//    option dhcp6.bootfile-url "http://[2001:db8::1]/ubuntu.cfg";
+// }
+//
+// In example shown below incoming packet will receive value http://[2001:db8::1]/ubuntu.cfg
+// if incoming packet will include user class option with "iPXE" in it and 
+// value http://[2001:db8::1]/ipxe.efi if option client architecture type will be 7.
+// If incoming packet will include both of those options with matching values it will be assigned 
+// to class "a-ipxe" because it was first matching class. If you want to change that order names 
+// of the classes have to have different alphabetical order. In Kea 1.3.0 (and previous versions)
+// alphabetical order is used in classification. 
+      "client-classes":[
+         {
+            "name":"a-ipxe",
+            "test":"substring(option[15].hex,2,4) == 'iPXE'",
+            "option-data":[
+               {
+                  "space":"dhcp6",
+                  "name":"bootfile-url",
+                  "code":59,
+                  "data":"http://[2001:db8::1]/ubuntu.cfg"
+               }
+            ]
+         },
+         {
+            "name":"b-efi",
+            "test":"option[61].hex == 0x00000007",
+            "option-data":[
+               {
+                  "space":"dhcp6",
+                  "name":"bootfile-url",
+                  "code":59,
+                  "data":"http://[2001:db8::1]/ipxe.efi"
+               }
+            ]
+         }
+      ],
+      "subnet6":[
+         {
+            "subnet":"2001:db8::/64"
+         }
+      ]
+   }
+}