// 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 ethX interface.

{ "Dhcp6":

{
// Kea is told to listen on ethX interface only.
  "interfaces-config": {
    "interfaces": [ "ethX" ]
  },

// We need to specify the the database used to store leases. As of
// September 2016, four database backends are supported: MySQL,
// PostgreSQL, Cassandra, 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": "ethX"
    }
  ],

// Enable 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",
        "always-include-fqdn" : true,
        "override-no-update" : true,
        "override-client-update" : true,
        "replace-client-name" : "when-present",
        "generated-prefix" : "test.prefix",
        "qualifying-suffix" : "test.suffix."
  }

},

// The following configures logging. It assumes that messages with at least
// informational level (info, warn, error and fatal) should be logged to stdout.
"Logging": {
    "loggers": [
        {
            "name": "kea-dhcp6",
            "output_options": [
                {
                    "output": "stdout"
                }
            ],
            "debuglevel": 0,
            "severity": "INFO"
        }
    ]
}

}

