// This is an example configuration file for the DHCPv4 server in Kea. // It is a basic scenario with one IPv4 subnet configured. It demonstrates // how to configure Kea to use various backends to store leases: // - memfile // - MySQL // - PostgreSQL { "Dhcp4": { // Kea is told to listen on eth0 interface only. "interfaces-config": { "interfaces": [ "eth0" ] }, // We need to specify lease type. Exactly one lease-database section // should be present. Make sure you uncomment only one. // 1. memfile backend. Leases information will be stored in flat CSV file. // This is the easiest backend to use as it does not require any extra // dependencies or services running. // "lease-database": { // "type": "memfile", // "persist": true, // "lfc-interval": 3600 // }, // 2. MySQL backend. Leases will be stored in MySQL database. Make sure it // is up, running and properly initialized. See kea-admin documentation // for details on how to initialize the database. The only strictly required // parameters are type and name. If other parameters are not specified, // Kea will assume the database is available on localhost, that user and // password is not necessary to connect and that timeout is 5 seconds. // Kea must be compiled with --with-mysql option to use this backend. // "lease-database": { // "type": "mysql", // "name": "keatest", // "host": "localhost", // "port": 3306, // "user": "keatest", // "password": "secret1", // "reconnect-wait-time": 3000, // expressed in ms // "max-reconnect-tries": 3, // "on-fail": "stop-retry-exit", // "connect-timeout": 3 // }, // 3. PostgreSQL backend. Leases will be stored in PostgreSQL database. Make // sure it is up, running and properly initialized. See kea-admin documentation // for details on how to initialize the database. The only strictly required // parameters are type and name. If other parameters are not specified, // Kea will assume the database is available on localhost, that user and // password is not necessary to connect and that timeout is 5 seconds. // Kea must be compiled with --with-pgsql option to use this backend. // "lease-database": { // "type": "postgresql", // "name": "keatest", // "host": "localhost", // "port": 5432, // "user": "keatest", // "password": "secret1", // "reconnect-wait-time": 3000, // expressed in ms // "max-reconnect-tries": 3, // "on-fail": "stop-retry-exit", // "connect-timeout": 3 // }, // Addresses will be assigned with a lifetime of 4000 seconds. "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, // The following list defines subnets. We have only one subnet // here. We tell Kea that it is directly available over local interface. "subnet4": [ { "pools": [ { "pool": "192.0.2.1 - 192.0.2.200" } ], "subnet": "192.0.2.0/24", "interface": "eth0" } ], // The following configures logging. It assumes that messages with at // least informational level (info, warn, error and fatal) should be // logged to stdout. "loggers": [ { "name": "kea-dhcp4", "output_options": [ { "output": "stdout" } ], "severity": "INFO" } ] } }