Kea currently supports 198 commands in kea-ctrl-agent, kea-dhcp-ddns, kea-dhcp4, kea-dhcp6 daemons and cb_cmds, class_cmds, gss_tsig, high_availability, host_cache, host_cmds, lease_cmds, lease_query, perfmon, stat_cmds, subnet_cmds hook libraries.


Kea Features
- Separate DHCPv4, DHCPv6 and Dynamic DNS servers (run only the applications you are using)
- Leases and host reservations can be stored in a local file (default) or optionally in a MySQL, Postgres or Cassandra database
- IPv6 prefix delegation
- Most popular options supported, including PXE boot
- Shared networks
- Applications API, with multiple application extensions available from ISC
- On-line configuration. It is possible to update the configuration file and tell the servers to reload configuration without restarting the system.
- Ample, documented statistics
- REST api for remote management
- High performance, with up to ~5000 leases per second (default), ~500 leases per second (with optional database backend)
- Supported on Linux, BSD and Mac OS X operating systems


Kea is the next generation of DHCP software, developed by Internet Systems Consortium (ISC). It supports both the DHCPv4 and DHCPv6 protocols along with their extensions, e.g. prefix delegation and dynamic updates to DNS.
This guide covers Kea version 2.7.1-git.


Kea is open source, shared under MPL2.0 licensing. Kea is developed in the open on ISC’s GitLab; we welcome you to open issues and submit patches there. Kea runs on most Linux and Unix platforms, as well as MacOS. If you don’t want to build from our source distribution, we also provide a repository of pre-built packages for most popular operating systems.
ISC distributes and maintains TWO open source, standards-based DHCP server distributions: Kea DHCP and ISC DHCP. Kea includes all the most-requested features, is far newer, and is designed for a more modern network environment.
How is the Kea DHCP server different from the older ISC DHCP?
-
Modular Component Design, Extensible with Hooks Modules. The Kea distribution includes separate daemons for a DHCPv4 server, a DHCPv6 server, and a dynamic DNS (DDNS) module. Many optional features are enabled with dynamically-loaded “Hooks Modules,” which you need run only if you are using them. You can write your own hooks modules (in C++) or try some of the hooks we offer.
-
On-line Re-configuration with REST API Kea uses a JSON configuration file that can be modified remotely via set commands and reloaded without stopping and restarting the server, an operation that could take quite a while with ISC DHCP.
-
Designed to Integrate with Your Existing Systems. Kea allows you to separate the data from the execution environment, enabling new deployment options. Your network data - leases, host reservation definitions, and most configuration data - can be located separately from the DHCP server itself, using a Kea “backend.”
-
Web-based graphical dashboard Kea now has a graphical dashboard for monitoring multiple Kea servers. This system, called Stork, uses agents deployed on the Kea servers to relay information to a centralized management platform, providing the administrator with an easy-to-use quick view of system status and activity.
Kea supports two database backends; MySQL and PostgreSQL. Choose to store leases, host reservations, or shared configuration data in a separate database backend. Benefits of this include:
-
Integrate it more easily with your other systems - provisioning systems, IPAMS and so on - by storing critical data in a separate database.
-
Use the same hosts reservations backend for multiple DHCP servers.
-
Administer global options from a centralized configuration backend.
-
Manage large address pools in a database rather than a text file.


Broad, standards-compliant support for both DHCPv4 and DHCPv6
-
Free-open source, shared under MPL 2.0 licensing
-
Direct address assignment (DHCPv4 and DHCPv6) or DHCPv6 prefix delegation
-
Dynamic IP addressing and static host reservations
-
Dynamic DNS for updating DNS records as leases are renewed or expired
-
Tracking of MAC addresses, even in DHCPv6
-
Extend and customize Kea through Hooks
-
Add and change subnets and pools without restarting Kea
-
Store leases and host reservations in a MySQL, PostgreSQL or Cassandra database rather than a text file
-
Replace the entire Kea configuration, or separately manage leases, subnets and host reservations through a REST API
-
Comprehensive Developer and Administrator documentation.
-
ISC offers commercial 7 x 24 support for Kea, as well as consulting and contract development to assist in implementing Kea, including migration from ISC DHCP.
Kea runs on Linux, BSD, and MacOS, like ISC DHCP. The Kea distribution does not yet include a DHCP client or relay, but because both are standards-based, the ISC DHCP client works fine with the Kea DHCP server. Kea is under active development.
The Internet Systems Consortium (ISC) offers a free version of its DHCP and DHCPv6 reference implementation. The following configuration settings are available with the ISC DHCP server, which are configured in the server's dhcpd.conf file.
How to set up the ISC DHCP daemon with load sharing and failover capabilities.
Setting Up DHCP Failover: A Basic Overview
Many of the syntax options presented here are explained in more detain in the dhcpd.conf man page distributed with dhcp. It is recommended that you consult that document for specifics once you have grasped the basic steps involved.
KEA is a new open source DHCPv4/DHCPv6 server being developed by Internet Systems Consortium. The objective of this project is to provide a very high-performance, extensible DHCP server engine for use by enterprises and service providers, either as is or with extensions and modifications.
DHCP Standardization efforts: The lead developer on KEA is co-chair of the Dynamic Host Configuration working group in the IETF. We are committed to providing a standards-compliant implementation and are closely tracking developments in this working group and evaluating them for inclusion in KEA.