# This is an example configuration file for the DHCPv4 server in Kea. # It demonstrates simple configuration of the options for a subnet. { "Dhcp4": { # Kea is told to listen on ethX interface only. "interfaces-config": { "interfaces": [ "ethX" ] }, # We need to specify lease type. As of May 2014, three backends are supported: # memfile, mysql and pgsql. We'll just use memfile, because it doesn't require # any prior set up. "lease-database": { "type": "memfile" }, # Addresses will be assigned with valid lifetimes being 4000. Client # is told to start renewing after 1000 seconds. If the server does not respond # after 2000 seconds since the lease was granted, client is supposed # to start REBIND procedure (emergency renewal that allows switching # to a different server). "valid-lifetime": 4000, # Renew and rebind timers are commented out. This implies that options # 58 and 59 will not be sent to the client. In this case it is up to # the client to pick the timer values according to RFC2131. Uncomment the # timers to send these options to the client. # "renew-timer": 1000, # "rebind-timer": 2000, # Defining a subnet. There are 3 DHCP options returned to the # clients connected to this subnet. The first two options are # identified by the name. The third option is identified by the # option code. "subnet4": [ { "pools": [ { "pool": "192.0.2.10 - 192.0.2.200" } ], "subnet": "192.0.2.0/24", "interface": "ethX", "option-data": [ { "name": "domain-name-servers", "data": "192.0.2.1, 192.0.2.2" }, { "name": "routers", "data": "192.0.2.1" }, { "code": 15, "data": "example.org" } ] } ] }, # The following configures logging. It assumes that messages with at least # informational level (info, warn, error) will will be logged to stdout. "Logging": { "loggers": [ { "name": "kea-dhcp4", "output_options": [ { "output": "stdout" } ], "severity": "INFO" } ] } }