Version 10 (modified by tomek, 3 years ago) (diff)


Kea Hooks

Kea allows extending DHCP operation by loading third party libraries that can extract information or even change how the server behaves. This mechanism is called hooks. This page lists currently available hook libraries.

While currently this list is small, it seems to be growing steadily. We hope the trend to continue in the near future. If you have developed your own hooks, feel free to announce them on kea-dev, kea-users and extend this page with appropriate entry.

List of currently available hooks

Hook name License Author Link Description
user_chk MPL2.0 ISC User check is an example hook application that reads known users list from a file. If the user is not known, it will be assigned a lease from the last subnet defined in the configuration file, e.g. to redirect him into a captive portal. This showcases how externals source of information can be used to influence Kea allocation engine. This hook is part of the Kea sources and is available in src/hooks/dhcp/user_chk directory.
options_to_options ? Ola Thoresen This hook takes the value from different options in a DHCPREQUEST and inserts them into (other) options in a DHCPREPLY. Example usage is to take the value from an Option 82 string, and insert it in an Option 43 sub option, to direct the dhcp client to the correct config file in an auto provisioning scenario.
legal_logging EULA (support customers only) ISC This library provides hooks that record a detailed log of lease assignments and renewals into a set of log files. This can be very useful for forensic purposes and to meet legal obligations.
flex_id EULA (support customers only) ISC Kea software provides a way to handle host reservations that include addresses, prefixes, options, client classes and other features. The reservation can be based on hardware address, DUID, circuit-id or client-id in DHCPv4 and using hardware address or DUID in DHCPv6. However, there are sometimes scenario where the reservation is more complex, e.g. uses other options that mentioned above, uses part of specific options or perhaps even a combination of several options and fields to uniquely identify a client. Those scenarios are addressed by the Flexible Identifiers hook application.
host_cmds EULA (support customers only) ISC Extends remote management (REST API and control channel) to manage host reservations stored in a back end database. Provides commands for adding, retrieving and deleting host reservations.
pxe-replace4 BSD 3 clause Michael Gugino This module utilizes hooks api to replace pxe options (siaddr, option 66, 67) via web request.