// This is an example configuration file for DHCPv6 server in Kea. // It demonstrates how to configure Kea to use DUID-LLT with some // values specified explicitly. { "Dhcp6": { // Configure server identifier (DUID-LLT). The hexadecimal value of the // identifier will be used as link layer address component of the DUID. // The link layer type will be ethernet. The value of time is set to 0 // which indicates that the server must generate this value, i.e. use // current time. Note that it is easy to move from this configuration // to DUID-EN or DUID-LL. It would require changing the "type" value // to "EN" or "LL" respectively. The "identifier" would hold a // DUID-EN variable length identifier or DUID-LL link layer address. // The values of "time" and "htype" would be ignored for DUID-EN. // If one wanted to use a non-default enterprise-id for DUID-EN, the // "enterprise-id" parameter would need to be added. Note that only // a "type" parameter is mandatory while specifying "server-id" map. "server-id": { "type": "LLT", "identifier": "12C4D5AF870C", "time": 0, "htype": 1 }, // Kea is told to listen on eth0 interface only. "interfaces-config": { "interfaces": [ "eth0" ] }, // We need to specify the database used to store leases. As of // June 2022, three database backends are supported: MySQL, // PostgreSQL and the in-memory database, Memfile. // We'll use memfile because it doesn't require any prior set up. "lease-database": { "type": "memfile", "lfc-interval": 3600 }, // Addresses will be assigned with preferred and valid lifetimes // being 3000 and 4000, respectively. 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). "preferred-lifetime": 3000, "valid-lifetime": 4000, "renew-timer": 1000, "rebind-timer": 2000, // The following list defines subnets. Each subnet consists of at // least subnet and pool entries. "subnet6": [ { "pools": [ { "pool": "2001:db8:1::/80" } ], "subnet": "2001:db8:1::/64", "interface": "eth0" } ], // The following configures logging. It assumes that messages with at least // informational level (info, warn, error) will will be logged to stdout. "loggers": [ { "name": "kea-dhcp6", "output_options": [ { "output": "stdout" } ], "debuglevel": 0, "severity": "INFO" } ] } }