[kea-dev] Kea 1.1.0 is now available!

Wlodek Wencel wlodek at isc.org
Fri Sep 30 16:27:09 UTC 2016

On behalf of everyone working on Kea, I'm pleased to announce that a new
version is available for download!

Kea is an alternative DHCP implementation being developed by
Internet Systems Consortium, Inc. that features fully functional DHCPv4 and
DHCPv6 servers, a dynamic DNS update daemon, and a DHCP performance
measurement tool. Both DHCP servers fully support server discovery, address
assignment, renewal, rebinding, release, decline, information request, DNS
updates, client classification and host reservations. The DHCPv6 server also
supports prefix delegation. Lease information can be stored in a MySQL,
PostgreSQL or Cassandra database; it can also be stored in a CSV file. Host
reservations can be stored in the configuration file; they can also be
in a MySQL or PostgreSQL database.

Version 1.1.0 adds the following features to Kea:

* Additional Database Backend - Kea 1.1.0 has added preliminary support for
  Cassandra as a database backend.  In this release of Kea it can only
be used
  to store lease information, it is not able store host reservations.
  Cassandra support is currently considered experimental. Use with caution.

* Host Reservations - Kea 1.0 contained limited support for storing host
  reservations in the database backend.  Kea 1.1.0 has expanded that
  capability, allowing host reservations to be stored in a MySQL or
  PostgreSQL database. In particular, Kea 1.1.0:
  - Adds host reservation (DHCPv4 and DHCPv6) using the PostgreSQL backend.
  - Adds host reservation for DHCPv6 to the existing MySQL support.
  - Significantly extends the existing host reservation capabilities to
    include reservations of specific DHCP options, reservations of siaddr,
    sname, and file fields within DHCPv4 messages, and reservations of
    multiple IPv6 addresses/prefixes.
  - Allows the MySQL or PostgreSQL host reservation database to be
    read-only, in which case Kea will be able to retrieve reservations
from it,
    but not insert or update existing reservations. This feature is useful
    when a database (or database view) exists for the particular deployment
    and the administrator doesn't want to grant read-write access for

* Client Classification - In Kea 1.1 the client classification system
has been
  expanded. A class definition contains a name and a test expression of
  arbitrary complexity; if the test expression evaluates to "true" the
  is a member of that class.  A client may be a member of multiple
classes and
  can acquire options from different classes.   If the configuration
  multiple definitions for data for an option in two or more of the global,
  class, subnet or host entries, the server will choose the definition from
  the most specific entry.

  There are a number of objects and operators available for use in the test
  - Operators include: equal, not, and, or, substring, concat
  - Objects include:
   - literals: string, hexadecimal, IP address and integer
   - options: existence and content
   - relay options for DHCPv4 and DHCPv6: existence and content
   - subfields within vendor and vendor class options: existence,
     enterprise-id value and content
   - selected fields from DHCPv4 and DHCPv6 packets
  - Classes may be used to select subnets
  - Classes and class specific subnets may contain option data to serve to
    clients within that class

* Hook Library Parameters - It is now possible to specify parameters for
  libraries in the Kea configuration file. In earlier versions of Kea, hook
  library authors had to use a external mechanism (such as file of a known
  name) to pass information across.

* DHCPv4-over-DHCPv6 - RFC7341 (https://tools.ietf.org/html/rfc7341) defines
  an architecture that allows dual-stack clients to communicate with DHCPv4
  server in IPv6-only networks. Kea 1.1 introduces support for this mode of
  operation. It requires running both DHCPv4 and DHCPv6 servers in special
  mode, where DHCPv6 component does not allocate anything, but decapsulates
  incoming DHCPv4 messages, sends the to the DHCPv4 server and then relay
  back the responses.

== License ==

Kea 1.1.0 has been released under the Mozilla Public License, version 2.0.

== Download ==

The Kea 1.1.0 source and PGP signatures may be downloaded from:


The signature was generated with the ISC code signing key which is
available at


ISC provides detailed documentation, including installation instructions and
usage tutorials in the Kea Administrator Reference Manual. Documentation is
included with the installation or via http://kea.isc.org/docs in HTML, plain
text, or PDF formats.  ISC maintains a public open source code tree at
https://github.com/isc-projects/kea and wiki pages with roadmap and issue
tracking at


Limitations and known issues with this release can be found at


We'd like 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
or use case. Also we would like to hear whether the documentation is
and accurate (please open tickets for documentation omissions and errors).
We want to hear from you even if everything worked.

== Support ==

Professional support for Kea is available from ISC. Free best-effort support
is provided by our user community via a mailing list. Information on all
email lists is available at


If you have any comments or questions about working with Kea, please
share them
to the Kea Users List https://lists.isc.org/mailman/listinfo/kea-users.
and feature requests may be submitted via the ticket tracking system at


== Changes ==

The following summarizes changes and important upgrade notes since the
previous release (1.1.0-beta). (See the git history for more details and
additional development.)i

1180.   [doc]       stephen
        Editing pass through the Kea guide.
        (Trac #4484, git 63456fab1b978bd515198b9b9e604f293efd8217)
        (Trac #5008, git f09cd12d5b1abc60ccef98df2abc6c41b482a404)

1179.   [doc]           tomek
        Manual pages updated.
        (Trac #3515, git 4cf0395e11e724786c4d2a1d48805f1c770f4c99)

1178.   [doc]           tomek
        user_chk hook library is now documented in the User's Guide.
        (Trac #3209, git 4a8534d968a21cff3851619fb22d0032a1202c87)

1177.   [build] marcin
        Updated Kea libraries version numbers for 1.1-final release.
        (Trac #5012, git 6e9a224b46def357141a31386fcc912b29dfe16d)

1176.   [doc]           tomek
        Developer's Guide has been updated.
        (trac #4299, git ed38076c183394feaef60e7123d0c488c9f6447d)

1175.   [bug]           marcin
        Corrected a bug whereby a client, for which there was no
        host reservation specified, did not obtain an IPv6 lease
        from a server when PostgreSQL or MySQL host database backend
        was in use. In addition, PostgreSQL host database backend
        allows for specifying NULL values in certain columns within
        host reservation tables.
        (Trac #5009, git d3109bb27786867fdc99954ba55367f0ad129e7a)

1174.   [bug]           tmark
        Modified kea-dhcp6 to avoid requesting DNS updates when
        existing leases are renewed without changes to the FQDN.
        (Trac #5007, git 05ea3a5eb75c06cf9814c63a1a54261bf58a954b)

1173.   [bug]           xxwolfsrainxx, marcin
        MySQL database creation scripts use single quotes for
        strings to avoid issues with creation of the database
        when MySQL server operates in ANSI_QUOTES mode.
        (github #30, git e40a54a8e24b5f6427edd4afcd5cdc15012b8866)

1172.   [bug]           andir
        Kea build fixes for gcc 6, which uses C++14 by default.
        (github #29, git ad68c3942839618c26d7ff017fbac7df139b5d01)

1171.   [doc]           marcin
        Updated supported operating systems and the prerequisites for
        installing and building Kea in the Kea Administrator
        Reference Manual.
        (Trac #4502, git af847837590ce5b37a300ebe15652fb172585b38)

1170.   [doc]           marcin
        Updated Kea Administrator's Reference Manual sections
        regarding host reservations. Added configuration examples
        for using host reservations with MySQL and PostgreSQL
        (Trac #3684, git 71d21eac51d20ff5d368b17c437abc45c955a04c)

1169.   [doc]           marcin
        Updated Kea Administrator Reference Manual to explain the
        implications of using "kea_verbose" parameter in the keactrl
        (Trac #3950, git c5f4920fd1994882e1fae398ae29b455401296bd)

1168.   [doc]           marcin
        Corrected location of the Kea repository in the Kea Administrator
        Reference Manual.
        (Trac #4258, git f081000b892287316e54848ca1f62ca3512d4263)

1167.   [func]          marcin
        DHCP servers utilize client classes defined in host reservations.
        (Trac #4765, git 242fbc47b31da404e57be458ac065f811084cca9)

1166.   [bug]           marcin
        Corrected error message produced by the host database access
        parser when the database type was not specified.
        (Trac #4261, git 028dd49f4fa4843e68e23d11c237e9f4683470ba)

1165.   [func]          marcin
        Hostname option is returned to the client when requested using
        Parameter Request List option. Previously this option was only
        returned when a client has sent Hostname option to the server.
        (Trac #5005, git 96ab8ecaa3d5b2d6cd88d0b16406f433d2cdf841)

1164.   [bug]           marcin
        Corrected an issue whereby DHCPv4 server did not correctly set a
        server identifier in response message sent to a client on BSD
        (Trac #5003, git 110c67325072a781d55cf0634f8f5f3385611f97)

1163.   [bug]           marcin
        Corrected swapped DHCPSRV_MEMFILE_GET_EXPIRED{4,6} messages
        in the Memfile lease manager.
        (Trac #4717, git ce5919d97879c3fda0858894b24418af135ef8f3)

1162.   [func]          pallotron
        Added two enhancements to perfdhcp: optionally using MAC
        addresses from a file in new DHCP transactions, and
        generation of DHCPv6 relayed messages.
        (github #22, git c5b4a5981cf642ebb9aecb8acc07b87abdccbd91)

1161.   [bug]           fdupont
        Fixed interface manager receive methods which raise a bug on
        Fedora 24 / gcc 6.1?
        (Trac #4551, git 8d590e434062535e850a60a7892481df845ff390)

Thank you again to everyone who assisted us in making this release
possible. If you would like to contribute to ISC to assist us in
continuing to make quality open source software, please visit our
donations page at http://www.isc.org/donate-to-isc/.

We look forward to receiving your feedback.

More information about the kea-dev mailing list