// This is a basic configuration for the Kea DHCPv4 server. See section // 8.2. DHCPv4 Server Configuration for detailed informations. // // This configuration file contains only DHCPv4 server's configuration. // If configurations for other Kea services are also included in this file they // are ignored by the DHCPv4 server. { // DHCPv4 configuration starts here. This section will be read by DHCPv4 server // and will be ignored by other components. "Dhcp4": { // See section 8.2.4 Interface Configuration for more details. "interfaces-config": { "interfaces": [ "net0", "net1" ], "dhcp-socket-type": "raw" }, // See section 8.9. Management API for the DHCPv4 Server for more details. "control-socket": { "socket-type": "unix", "socket-name": "/var/lib/kea/kea4-ctrl-socket" }, // See Section 8.2.2.1. Memfile - Basic Storage for Leases" for details. "lease-database": { "type": "memfile", "persist": true, "name": "/var/lib/kea/kea-leases4.csv", "lfc-interval": 3240, "max-row-errors": 100 }, // Setup reclamation of the expired leases and leases affinity. // See section 11. Lease Expiration for more and detailed informations. "expired-leases-processing": { "reclaim-timer-wait-time": 10, "flush-reclaimed-timer-wait-time": 25, "hold-reclaimed-time": 3600, "max-reclaim-leases": 100, "max-reclaim-time": 250, "unwarned-reclaim-cycles": 5 }, // Global timers specified here apply to all subnets, unless there are // subnet specific values defined in particular subnets. See section // 8.2.1. Introduction ans section 8.2.9. Sending T1 (Option 58) and T2 // (Option 59) for details. "renew-timer": 1800, "rebind-timer": 3200, "valid-lifetime": 3600, // Many additional parameters can be specified here. Alle datails will be // found in following sections: // - 8.2.10. Standard DHCPv4 Options // - 8.2.11. Custom DHCPv4 Options // - 8.2.12. DHCPv4 Private Options // - 8.2.13. DHCPv4 Vendor-Specific Options // - 8.2.14. Nested DHCPv4 Options (Custom Option Spaces) // - 8.2.15. Unspecified Parameters for DHCPv4 Option Configuration // - 8.2.16. Support for Long Options "option-data": [ // Domain-Name-Server: //{ // "name": "domain-name-servers", // "data": "10.0.10.27" //}, // Domain-Name: { "name": "domain-name", "data": "nausch.org" }, // Time-Server: //{ // "name": "ntp-servers", // "data": "10.0.0.17" //}, // Time-Offset ( Eastern Standard Time): { "name": "time-offset", "data": "-18000" } ], // Finally, we list the subnets from which we will be leasing addresses. // See section 8.2.6. IPv4 Subnet Identifier and the following sections // for more details. "subnet4": [ { // This defines the whole subnet. Kea will use this information to // determine where the clients are connected. This is the whole // subnet in your network. // Subnet identifier should be unique for each subnet. "id": 1, // This is mandatory parameter for each subnet. "subnet": "10.0.10.0/24", // Pools define the actual part of your subnet that is governed // by Kea. "pools": [ { "pool": "10.0.10.230 - 10.0.10.250" } ], // These are options that are subnet specific. "option-data": [ { // Router for the IPv4 subnet. "name": "routers", "data": "10.0.10.110" }, { // Time-Server: "name": "ntp-servers", "data": "10.0.10.110" }, { // Domain-Name-Server: "name": "domain-name-servers", "data": "10.0.10.27" } ], // Kea offers host reservations mechanism. Kea supports reservations // by several different types of identifiers: hw-address // (hardware/MAC address of the client), duid (DUID inserted by the // client), client-id (client identifier inserted by the client) and // circuit-id (circuit identifier inserted by the relay agent). "reservations": [ // This are the reservations for a specific hardware/MAC addresses. // MNSS (c7) { "hw-address": "ac:1f:6b:00:d3:9a", "ip-address": "10.0.10.2", "hostname": "pml010002.intra.nausch.org" }, // MNSS-IPMI (C7) { "hw-address": "00:25:90:13:ba:a2", "ip-address": "10.0.10.3", "hostname": "pnc010003.intra.nausch.org" } ], "reservations": [ // This are the reservations for a specific hardware/MAC addresses. // vml000200 { "hw-address": "52:54:00:41:20:01", "ip-address": "10.0.0.200", "hostname": "vml000200.dmz.nausch.org" }, // vml000201 { "hw-address": "52:54:00:41:20:11", "ip-address": "10.0.0.201", "hostname": "vml000201.dmz.nausch.org" }, // vml000202 { "hw-address": "52:54:00:41:20:21", "ip-address": "10.0.0.202", "hostname": "vml000202.dmz.nausch.org" }, // vml000203 { "hw-address": "52:54:00:41:20:31", "ip-address": "10.0.0.203", "hostname": "vml000203.dmz.nausch.org" }, // vml000204 { "hw-address": "52:54:00:41:20:41", "ip-address": "10.0.0.204", "hostname": "vml000204.dmz.nausch.org" } ] } ], // Logging configuration starts here. Kea uses different loggers to log various // activities. For details (e.g. names of loggers), see Chapter 18. "loggers": [ { // This section affects kea-dhcp4, which is the base logger for DHCPv4 // component. It tells DHCPv4 server to write all log messages (on // severity INFO or more) to a file. "name": "kea-dhcp4", "output_options": [ { // Specifies the output file. There are several special values // supported: // - stdout (prints on standard output) // - stderr (prints on standard error) // - syslog (logs to syslog) // - syslog:name (logs to syslog using specified name) // Any other value is considered a name of the file "output": "syslog" } ], // This specifies the severity of log messages to keep. Supported values // are: FATAL, ERROR, WARN, INFO, DEBUG "severity": "INFO", // If DEBUG level is specified, this value is used. 0 is least verbose, // 99 is most verbose. Be cautious, Kea can generate lots and lots // of logs if told to do so. "debuglevel": 0 } ] } }