mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-31 14:05:33 +00:00
124 lines
4.3 KiB
JSON
124 lines
4.3 KiB
JSON
// This is an example configuration file for the DHCPv6 server in Kea.
|
|
// It is a basic scenario with one IPv6 subnet configured. It demonstrates
|
|
// how to configure Kea to use various backends to store leases:
|
|
// - memfile
|
|
// - MySQL
|
|
// - PostgreSQL
|
|
|
|
{ "Dhcp6":
|
|
|
|
{
|
|
// 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 the "-D mysql" option to use this backend.
|
|
// "lease-database": {
|
|
// "type": "mysql",
|
|
// "name": "keatest",
|
|
// "host": "localhost",
|
|
// "port": 3306,
|
|
// "user": "keatest",
|
|
// "password": "1234",
|
|
// "reconnect-wait-time": 3000, // expressed in ms
|
|
// "max-reconnect-tries": 3,
|
|
// "on-fail": "stop-retry-exit",
|
|
// "retry-on-startup": false,
|
|
// "connect-timeout": 3
|
|
// },
|
|
// Since Kea.2.7.4, the libdhcp_mysql.so hook library must be loaded in order to
|
|
// store leases in the MySQL Lease Database Backend.
|
|
// Specify the lease backend hook library location.
|
|
// {
|
|
// // the MySQL lease backend hook library required for lease storage.
|
|
// "library": "/opt/lib/kea/hooks/libdhcp_mysql.so"
|
|
// },
|
|
|
|
// 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 the "-D postgresql" option to use this backend.
|
|
// "lease-database": {
|
|
// "type": "postgresql",
|
|
// "name": "keatest",
|
|
// "host": "localhost",
|
|
// "port": 5432,
|
|
// "user": "keatest",
|
|
// "password": "1234",
|
|
// "reconnect-wait-time": 3000, // expressed in ms
|
|
// "max-reconnect-tries": 3,
|
|
// "on-fail": "stop-retry-exit",
|
|
// "retry-on-startup": false,
|
|
// "connect-timeout": 3
|
|
// },
|
|
// Since Kea.2.7.4, the libdhcp_pgsql.so hook library must be loaded in order to
|
|
// store leases in the PostgreSQL Lease Database Backend.
|
|
// Specify the lease backend hook library location.
|
|
// {
|
|
// // the PostgreSQL lease backend hook library required for lease storage.
|
|
// "library": "/opt/lib/kea/hooks/libdhcp_pgsql.so"
|
|
// },
|
|
|
|
// 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" } ],
|
|
"id": 1,
|
|
"subnet": "2001:db8:1::/64",
|
|
"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-dhcp6",
|
|
"output-options": [
|
|
{
|
|
"output": "stdout"
|
|
}
|
|
],
|
|
"debuglevel": 0,
|
|
"severity": "INFO"
|
|
}
|
|
]
|
|
}
|
|
|
|
}
|