Hi Darren, I am using the latest dev Kea 2.7.7 version with RHEL9, the package for dhcp6 is isc-kea-dhcp6-2.7.7-isc20250326114722.el9.x86_64.rpm. Here’re my definition on the “device” class. I only have this client class defined, don’t have the “device_class2” client class in definition. And I am using client-classes so that part is expected.
{ "Dhcp6": { "allocator": "iterative", "calculate-tee-times": true, "client-classes": [ { "name": “device", "option-data": [ { "always-send": true, "code": 34, "csv-format": true, "data": “xxxxxxxx", "name": "syslog-servers", "never-send": false, "space": "vendor-4491" }, { "always-send": true, "code": 37, "csv-format": true, "data": “xxxxxxxxx", "name": "time-servers", "never-send": false, "space": "vendor-4491" }, { "always-send": true, "code": 38, "csv-format": true, "data": "0", "name": "time-offset", "never-send": false, "space": "vendor-4491" }, { "always-send": true, "code": 61, "csv-format": true, "data": “xxxxx", "name": "ccap-cores", "never-send": false, "space": "vendor-4491" }, { "always-send": true, "code": 17, "csv-format": false, "data": "", "name": "vendor-opts", "never-send": false, "space": "vendor-4491" } ], "test": "substring(option[17].option[2].hex,0,3) == ‘device'" } ], On Apr 19, 2025, at 6:19 AM, Darren Ankney <darren.ank...@gmail.com> wrote: Hi, Please share what version of Kea you are using. Not only did the class name change, but the statement became a list (client-class vs client-classes). Suspect you might be using a dev version as that feature has not been released in stable. There could be some bug there, though I am unsure why an _class2 would be added in this case. Do you have a "device" or "device_class2" defined in client-classes (not in the subnet but an actual class definition)? Thank you, Darren Ankney On Thu, Apr 17, 2025 at 5:23 PM tachibanash...@outlook.com <tachibanash...@outlook.com> wrote: Greetings, I have a subnet definition in my kea-dhcp6.conf, it inherited its configuration from a client class called “device”, then I gave it some customization configuration in the option-data section. After I used the config-write command to get the config from memory, I noticed the client class of this subbed is no longer “device” but “device_class2”, even I never defined this client class. My guess is because of the customization data in option-data section, so kea realized its configuration is different from the original client class “device”, and it gives a new name. Is this behavior expected? I think this could bring some troubles when we try to do automatization. Now after we use the subnet hook, we have to use the config-write command Darren mentioned to save the config changes from memory to harddisk. And now in the new config file, we will have those “device_class2” client class which previously didn’t exist. Original config in kea-dhcp6.conf: { "id": 2, "subnet": "2100:100:10:10::1/64", "option-data": [ { "space": "vendor-4491", "name": "cores", "code": 61, "data": "2100:100:10:10::10-2100:100:10:10::100", "always-send": true } ], "pools": [ { "pool": "2100:100:10:10::10-2100:100:10:10::100" } ], "relay": { "ip-addresses": [ "2100:100:10:10::1" ] }, "interface": "ens2", "client-class": “device", "allocator": "iterative" }, After using config-write: { "allocator": "iterative", "calculate-tee-times": true, "client-classes": [ “device_class2" ], "id": 2, "interface": "ens2", "max-preferred-lifetime": 907200, "max-valid-lifetime": 1209600, "min-preferred-lifetime": 907200, "min-valid-lifetime": 1209600, "option-data": [ { "always-send": true, "code": 61, "csv-format": true, "data": “2100:100:0:30:0:0:0:22", "name": "cores", "never-send": false, "space": "vendor-4491" } ], "pd-allocator": "iterative", "pd-pools": [ ], "pools": [ { "option-data": [ ], "pool": “2100:100:10:10::10-2100:100:10:10::100" } ], "preferred-lifetime": 907200, "rapid-commit": false, "rebind-timer": 1058400, "relay": { "ip-addresses": [ "2100:100:10:10::1" ] }, "renew-timer": 604800, "reservations": [ ], "store-extended-info": false, "subnet": "2100:100:10:10::1/64", "t1-percent": 0.5, "t2-percent": 0.8, "valid-lifetime": 1209600 }, -- ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information. To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users. Kea-users mailing list Kea-users@lists.isc.org https://lists.isc.org/mailman/listinfo/kea-users -- ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information. To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users. Kea-users mailing list Kea-users@lists.isc.org https://lists.isc.org/mailman/listinfo/kea-users
-- ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information. To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users. Kea-users mailing list Kea-users@lists.isc.org https://lists.isc.org/mailman/listinfo/kea-users