# Kea 2.3.7 Release Notes, April 26th 2023 Welcome to Kea 2.3.7, the eighth monthly release of the 2.3 development series. As with any other development release, use this with caution: development releases are not recommended for production use. Kea is a DHCP implementation developed by Internet Systems Consortium (ISC) that features DHCPv4 and DHCPv6 servers with DNS updating and a REST API; optional database support (MySQL and PostgreSQL); optional RADIUS, Kerberos, and YANG/NETCONF support; and much more. Kea provides extensive management capabilities, including but not limited to: TLS support, run-time configuration monitoring and updates via a REST API, host reservations, client classification, and more. The text below references issue numbers. For more details, visit the Kea GitLab page at https://gitlab.isc.org/isc-projects/kea/issues. The following features and bug fixes have been implemented since the previous release, version 2.3.6: 1. **Free Leases Queue allocator**: The FLQ is a new allocation strategy. When selected, Kea generates a list of all possible leases on startup and keeps it in memory. This allocator is suitable when DHCP servers work with nearly depleted pools, and the time to find an available lease via other allocators becomes too long. This new allocator, however, slows down the server startup and reconfiguration, and it also uses more memory, so users may wish to experiment with it in their specific configuration. It can be used for address assignment in DHCPv4 and prefix delegation in DHCPv6. This feature has been only lightly tested, and thus is considered experimental [#2780]. 2. **Allocator configuration in CB**: With the introduction of FLQ, Kea now supports three allocation strategies: iterative, random, and FLQ. These can now be configured via the Configuration Backend [#2823]. 3. **New API command: reservation-update**: A new command has been added that allows an existing host reservation to be updated. It is implemented as part of the Host Commands premium hook [#549]. 4. **Bulk Leasequery (BLQ)**: It is now possible to query for an IPv6 prefix by specifying an IPv6 address that belongs to that prefix [#2715, #1275]. We have implemented BLQ methods for MySQL and PostgreSQL [#2753]. The database schema has been updated for new BLQ columns [#2752]. All these changes are featured in the Leasequery hook, which is available only to ISC support subscribers. 5. **Build improvements**: Hammer, our optional building tool, has updated pgsql package handling for RHEL9 [#2836]. Hammer now correctly handles ddeb packages when uploading to Cloudsmith [#2814]. 6. **Multi-threading**: Multi-threading is now enabled by default for High Availability (HA) mode [#2749]. 7. **Bug fixes**: The remote ID sub-option of the Relay Agent option is now parsed correctly if its value ends with one or more zeros [#2794]. We have fixed a bug in the HA hook library whereby the HA service could sometimes terminate even after the partner's clock was corrected. The last clock skew is now ignored when a communication failure occurs with the partner [#2754]. 8. **Documentation**: Editing and updates to the Kea Administrator Reference Manual (ARM) [#2804]. ## License This version of Kea is released under the Mozilla Public License, version 2.0. https://www.mozilla.org/en-US/MPL/2.0 The premium and subscriber-only hook libraries are provided under the terms of a Kea Hooks Basic Commercial End User License Agreement. ## Download Pre-built ISC packages for current versions of the most popular Linux operating systems are available at: https://cloudsmith.io/\~isc/repos/ The Kea source and PGP signature for this release may be downloaded from: https://www.isc.org/download as well as from the Cloudsmith repository. The signature was generated with the ISC code signing key, which is available at: https://www.isc.org/pgpkey ISC provides detailed documentation, including installation instructions and usage tutorials, in the Kea Administrator Reference Manual. Documentation is included with the installation or at https://kea.readthedocs.io/en/latest/index.html. Limitations and known issues with this release can be found at https://gitlab.isc.org/isc-projects/kea/wikis/known-issues-list. We ask users of this software to please let us know how it worked for you and what operating system you tested on. Feel free to share your feedback on the Kea Users mailing list (https://lists.isc.org/mailman/listinfo/kea-users. We would also like to hear whether the documentation is adequate and accurate. Please open tickets in the Kea GitLab project for bugs, documentation omissions and errors, and enhancement requests. We want to hear from you even if everything worked. ## Support Professional support for Kea is available from ISC. We encourage all professional users to consider this option; Kea maintenance is funded with support subscriptions. For more information on ISC's Kea and DHCP software support see https://www.isc.org/support/. Free best-effort support is provided by our user community via a mailing list. Information on all public email lists is available at https://www.isc.org/community/mailing-list. ## Changes The following summarizes changes and important upgrade notes for core Kea since the previous release, version 2.3.6: 2127. [build] razvan The library version numbers have been bumped up for the Kea 2.3.7 development release. (Gitlab #2837) 2126. [func] andrei A new command named reservation-update is now available in the host_cmds hook library. It updates an existing reservation. (Gitlab #549) 2125. [func] marcin Allocators can now be configured in the configuration backend. (Gitlab #2823) 2124. [perf] andrei When not explicitly configured, multi-threading mode and the HTTP dedicated listener are enabled by default for the high-availability hook library ("enable-multi-threading" and "http-dedicated-listener" set to true). (Gitlab #2749) 2123. [bug] razvan Fixed a bug which was truncating relay suboptions (circuit-id code 1 and remote-id code 2) if the data ended in 0x0. The option definitions have been updated from OPT_STRING_TYPE to OPT_BINARY_TYPE. (Gitlab #2794) 2122. [bug] marcin Fixed a bug in the HA hook library whereby the HA service could sometimes terminate even after the partner's clock has been corrected. The last clock skew is now ignored when a communication failure with the partner occurs. (Gitlab #2754) 2121. [func] marcin Implemented Free Lease Queue allocator. It can be used for address assignment in DHCPv4 and prefix delegation in DHCPv6. The allocator is suitable when the DHCP servers work with nearly depleted pools, and the time to find an available lease becomes long with other allocators. The new allocator, however, slows down the server startup and reconfiguration. It also uses more memory. (Gitlab #2780, #2764) And for Kea premium: 168. [bug] tmark The lease query hook library can now find a delegated prefix that contains an DHCPv6 IP address in response to a query by IP address. (Gitlab #1275) 167. [func] andrei A new command named reservation-update is now available in the host_cmds hook library. It updates an existing reservation. (Gitlab #549) 166. [func] marcin The subnet_cmds hook has been updated to support using the Free Lease Queue (FLQ) allocator. This allocator can be selected at the subnet or shared network level using the commands from this hook library. (Gitlab #2780) See https://gitlab.isc.org/isc-projects/kea/-/wikis/Release-Notes for a complete list of release notes. Thank you again to everyone who assisted us in making this release possible. We look forward to receiving your feedback.