{ # subclass declaration config # options "Dhcp6": { "option-def": [ { "space": "dhcp6", "name": "hardware", "code": 1250, "type": "string" }, { "space": "dhcp6", "name": "myversion", "code": 1251, "type": "uint16" } ], "client-classes": [ # superclass declaration /// match: option dhcp6.hardware { "name": "foobar", "option-data": [ # no harware in DHCPv6 { "space": "dhcp6", "name": "myversion", "code": 1251, "data": "1" } ] }, # simple subclass declaration /// subclass selector 0x0x0100070e364819 { "name": "sub#foobar#0", "option-data": [ # no harware in DHCPv6 { "space": "dhcp6", "name": "myversion", "code": 1251, "data": "1" } ], /// from: match option dhcp6.hardware /// data: 0x0100070e364819 "test": "option[1250].hex == 0x0100070e364819" }, # option setting subclass declaration /// subclass selector 0x0x01000bfd32e6fa { "name": "sub#foobar#1", "option-data": [ { "space": "dhcp6", "name": "myversion", "code": 1251, "data": "2" } ], /// from: match option dhcp6.hardware /// data: 0x01000bfd32e6fa "test": "option[1250].hex == 0x01000bfd32e6fa" }, # complex subclass declaration /// subclass selector 0x0x010002b388c527 { "name": "sub#foobar#2", "option-data": [ { "space": "dhcp6", "name": "myversion", "code": 1251, "data": "3" } ], // /// Per-class limit is not supported by Kea // /// Reference Kea #237 // "lease-limit": 20, /// from: match option dhcp6.hardware /// data: 0x010002b388c527 "test": "option[1250].hex == 0x010002b388c527" } ] } }