summaryrefslogtreecommitdiffstats
path: root/doc/examples/kea6/with-ddns.json
diff options
context:
space:
mode:
Diffstat (limited to 'doc/examples/kea6/with-ddns.json')
-rw-r--r--doc/examples/kea6/with-ddns.json87
1 files changed, 87 insertions, 0 deletions
diff --git a/doc/examples/kea6/with-ddns.json b/doc/examples/kea6/with-ddns.json
new file mode 100644
index 0000000..04efb7d
--- /dev/null
+++ b/doc/examples/kea6/with-ddns.json
@@ -0,0 +1,87 @@
+// This is an example configuration file for DHCPv6 server in Kea.
+// It's a basic scenario with one IPv6 subnet configured. It is
+// assumed that one subnet (2001:db8:1::/64 is available directly
+// over eth0 interface.
+
+{ "Dhcp6":
+
+{
+// 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"
+ }
+ ],
+
+// Enable connectivity with kea-dhcp-ddns
+// (Required for dynamic DNS updates)
+ "dhcp-ddns" : {
+ "enable-updates" : true,
+ "server-ip" : "3001::1",
+ "server-port" : 3432,
+ "sender-ip" : "3001::2",
+ "sender-port" : 3433,
+ "max-queue-size" : 2048,
+ "ncr-protocol" : "UDP",
+ "ncr-format" : "JSON"
+ },
+
+
+// Enable DDNS updates and configure DDNS update behavior
+ "ddns-send-updates" : true,
+ "ddns-override-no-update" : true,
+ "ddns-override-client-update" : true,
+ "ddns-replace-client-name" : "when-present",
+ "ddns-generated-prefix" : "test.prefix",
+ "ddns-qualifying-suffix" : "test.suffix.",
+ "ddns-update-on-renew" : false,
+ "ddns-use-conflict-resolution" : true,
+ "hostname-char-set": "[^A-Za-z0-9.-]",
+ "hostname-char-replacement": "x",
+
+// 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"
+ }
+ ]
+}
+
+}