Commit 24c8c366 authored by Tomek Mrugalski's avatar Tomek Mrugalski 🛰
Browse files

[5017] missing advanced.json example added

parent 9f25ce59
// This is an example configuration file for DHCPv4 server in Kea.
// It covers some of the more advanced features. This file may not be coherent
// as its main purpose is to demonstrate the features. They don't necessarily
// have to make sense used together.
// The new parser supports 3 comment styles:
// This is C++ style.
# This is a bash style.
/* This is a C style comment. */
/* C style comment
can span
multiple lines */
{ "Dhcp4":
// Kea is told to listen on ethX interface only.
"interfaces-config": {
"interfaces": [ "ethX" ],
// This specifies what type of socket Kea uses. Currently supported
// are 'raw' (which is the default) and 'udp'. Raw has the benefit
// of receiving all traffic every time and a downside of bypassing
// all firewall rules and having marginally bigger performance impact.
// 'udp' is generally better if you have only relayed traffic. Kea
// than opens up normal UDP socket and Linux kernel does all the
// Ethernet/IP stack processing.
"dhcp-socket-type": "udp"
// We need to specify the the database used to store leases. As of
// September 2016, four database backends are supported: MySQL,
// PostgreSQL, Cassandra, and the in-memory database, Memfile.
// We'll use memfile because it doesn't require any prior set up.
// For memfile, it's important to always specify lfc-interval, so
// the lease file would not grow without bounds and be sanitized
// once per hour.
"lease-database": {
"type": "memfile",
"lfc-interval": 3600
// Addresses will be assigned with a lifetime of 4000 seconds.
// The client is told to start renewing after 1000 seconds. If the server
// does not respond within 2000 seconds of the lease being granted, client
// is supposed to start REBIND procedure (emergency renewal that allows
// switching to a different server).
"valid-lifetime": 4000,
"renew-timer": 1000,
"rebind-timer": 2000,
// RFC6842 says that the server is supposed to echo back client-id option.
// However, some older clients do not support this and are getting confused
// when they get their own client-id. Kea can disable RFC6842 support.
"echo-client-id": false,
// Some clients don't use stable client identifier, but rather generate them
// during each boot. This may cause a client that reboots frequently to get
// multiple leases, which may not be desirable. As such, sometimes admins
// prefer to tell their DHCPv4 server to ignore client-id value altogether
// and rely exclusively on MAC address. This is a parameter that is defined
// globally, but can be overridden on a subnet level.
"match-client-id": true,
// The following list defines subnets. Each subnet consists of at
// least subnet and pool entries.
"subnet4": [
"pools": [ { "pool": " -" } ],
"subnet": ""
// This particular subnet has match-client-id value changed.
// This causes Kea to ignore client-id values in this subnet
// and rely exclusively on MAC addresses.
"pools": [ { "pool": " -" } ],
"subnet": "",
"match-client-id": false
"pools": [ { "pool": " -" } ],
"subnet": ""
// The following configures logging. It assumes that messages with at least
// informational level (info, warn, error and fatal) should be logged to stdout.
"Logging": {
"loggers": [
"name": "kea-dhcp4",
"output_options": [
"output": "stdout"
"severity": "INFO"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment