From: Francis Dupont Date: Sat, 20 Oct 2018 23:52:54 +0000 (+0200) Subject: [130-all-keys-sample] Added DHCPv6 all keys X-Git-Tag: 65-libyang-clean-keatext_base~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1426b09a47abe2e58b0b525e58ff4374f08fdbd2;p=thirdparty%2Fkea.git [130-all-keys-sample] Added DHCPv6 all keys --- diff --git a/doc/Makefile.am b/doc/Makefile.am index 93f7ce7689..76d7d62bb3 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -63,6 +63,7 @@ nobase_dist_doc_DATA += examples/netconf/simple-dhcp4.json if HAVE_GTEST nobase_dist_doc_DATA += examples/kea4/all-keys.json +nobase_dist_doc_DATA += examples/kea6/all-keys.json endif devel: diff --git a/doc/examples/kea6/all-keys.json b/doc/examples/kea6/all-keys.json new file mode 100644 index 0000000000..6df23038f1 --- /dev/null +++ b/doc/examples/kea6/all-keys.json @@ -0,0 +1,327 @@ +// This is not an example configuratiion but a test sample for configuration +// management tools. This in no way reflect a real configuration. +// If you need to load this file you have to update the interface name (eth1) +// and the hook library path (/opt/lib/hooks). +{ + "Dhcp6": { + "client-classes": [ + { + "name": "phones_server1", + "option-data": [], + "test": "member('HA_server1')" + }, + { + "name": "phones_server2", + "option-data": [], + "test": "member('HA_server2')" + }, + { + "name": "laptops_server1", + "option-data": [], + "test": "member('HA_server1')" + }, + { + "name": "laptops_server2", + "option-data": [], + "test": "member('HA_server2')" + }, + { + "only-if-required": true, + "name": "late", + "test": "member('ALL')" + } + ], + "control-socket": { + "socket-name": "/tmp/kea-dhcp6-ctrl.sock", + "socket-type": "unix" + }, + "decline-probation-period": 86400, + "dhcp-ddns": { + "always-include-fqdn": false, + "enable-updates": false, + "generated-prefix": "myhost", + "hostname-char-replacement": "", + "hostname-char-set": "", + "max-queue-size": 1024, + "ncr-format": "JSON", + "ncr-protocol": "UDP", + "override-client-update": false, + "override-no-update": false, + "qualifying-suffix": "", + "replace-client-name": "never", + "sender-ip": "0.0.0.0", + "sender-port": 0, + "server-ip": "127.0.0.1", + "server-port": 53001 + }, + "dhcp4o6-port": 0, + "expired-leases-processing": { + "flush-reclaimed-timer-wait-time": 25, + "hold-reclaimed-time": 3600, + "max-reclaim-leases": 100, + "max-reclaim-time": 250, + "reclaim-timer-wait-time": 10, + "unwarned-reclaim-cycles": 5 + }, + "hooks-libraries": [ + { + "library": "/opt/lib/hooks/libdhcp_lease_cmds.so", + "parameters": {} + }, + { + "library": "/opt/lib/hooks/libdhcp_ha.so", + "parameters": { + "high-availability": [ + { + "heartbeat-delay": 10000, + "max-ack-delay": 5000, + "max-response-delay": 10000, + "max-unacked-clients": 0, + "mode": "load-balancing", + "peers": [ + { + "auto-failover": true, + "name": "server1", + "role": "primary", + "url": "http://[2001:db8:8001::1]:8080/" + }, + { + "auto-failover": true, + "name": "server2", + "role": "secondary", + "url": "http://[2001:db8:8001::2]:8080/" + } + ], + "send-lease-updates": true, + "state-machine": { + "states": [ + { + "pause": "always", + "state": "waiting" + }, + { + "pause": "once", + "state": "partner-down" + } + ] + }, + "sync-leases": true, + "sync-timeout": 60000, + "this-server-name": "server1" + } + ] + } + } + ], + "hosts-databases": [ + { + "name": "kea", + "host": "localhost", + "password": "kea", + "port": 3306, + "type": "mysql", + "user": "kea" + } + ], + "host-reservation-identifiers": [ + "hw-address", + "duid", + "flex-id" + ], + "interfaces-config": { + "interfaces": [ + "eth1" + ], + "re-detect": true + }, + "lease-database": { + "lfc-interval": 3600, + "name": "/tmp/kea-dhcp6.csv", + "persist": true, + "type": "memfile" + }, + "mac-sources": [ "duid" ], + "option-data": [ + { + "always-send": false, + "code": 23, + "csv-format": true, + "data": "2001:db8:2::45, 2001:db8:2::100", + "name": "dns-servers", + "space": "dhcp6" + } + ], + "option-def": [ + { + "array": false, + "code": 6, + "encapsulate": "", + "name": "my-option", + "record-types": "uint8, uint8", + "space": "my-space", + "type": "record" + } + ], + "preferred-lifetime": 2000, + "rebind-timer": 40, + "relay-supplied-options": [], + "renew-timer": 30, + "sanity-checks": { + "lease-checks": "warn" + }, + "server-id": { + "type": "EN", + "enterprise-id": 2495, + "identifier": "0123456789", + "persist": false + }, + "shared-networks": [ + { + "client-class": "", + "interface": "eth1", + "interface-id": "", + "name": "my-secret-network", + "option-data": [], + "preferred-lifetime": 2000, + "rapid-commit": false, + "relay": { + "ip-addresses": [] + }, + "rebind-timer": 41, + "renew-timer": 31, + "reservation-mode": "all", + "require-client-classes": [ "late" ], + "subnet6": [ + { + "client-class": "", + "id": 1, + "interface": "eth1", + "interface-id": "", + "option-data": [ + { + "always-send": false, + "code": 7, + "csv-format": true, + "data": "0xf0", + "name": "preference", + "space": "dhcp6" + } + ], + "pd-pools": [ + { + "client-class": "phones_server1", + "delegated-len": 64, + "excluded-prefix": "2001:db8::", + "excluded-prefix-len": 48, + "option-data": [], + "prefix": "2001:db8::", + "prefix-len": 40, + "require-client-classes": [] + } + ], + "pools": [ + { + "client-class": "phones_server1", + "option-data": [], + "pool": "2001:db8:0:1::/64", + "require-client-classes": [ "late" ] + }, + { + "client-class": "laptops_server1", + "option-data": [], + "pool": "2001:db8:0:2::/64", + "require-client-classes": [ "late" ] + }, + { + "client-class": "phones_server2", + "option-data": [], + "pool": "2001:db8:0:3::/64", + "require-client-classes": [] + }, + { + "client-class": "laptops_server2", + "option-data": [], + "pool": "2001:db8:0:4::/64", + "require-client-classes": [] + } + ], + "preferred-lifetime": 2000, + "rapid-commit": false, + "rebind-timer": 40, + "relay": { + "ip-addresses": [ + "2001:db8:0:f::1" + ] + }, + "rebind-timer": 40, + "renew-timer": 30, + "reservation-mode": "all", + "reservations": [], + "require-client-classes": [ "late" ], + "subnet": "2001:db8::/32", + "valid-lifetime": 6000 + } + ], + "valid-lifetime": 6001 + } + ], + "subnet6": [], + "valid-lifetime": 6000 + }, + "Logging": { + "loggers": [ + { + "debuglevel": 99, + "name": "kea-dhcp6", + "output_options": [ + { + "flush": true, + "maxsize": 10240000, + "maxver": 1, + "output": "stdout" + } + ], + "severity": "INFO" + }, + { + "debuglevel": 99, + "name": "kea-dhcp6.ha_hooks", + "output_options": [ + { + "flush": true, + "maxsize": 10240000, + "maxver": 1, + "output": "stdout" + } + ], + "severity": "INFO" + }, + { + "debuglevel": 99, + "name": "kea-dhcp6.commands", + "output_options": [ + { + "flush": true, + "maxsize": 10240000, + "maxver": 1, + "output": "stdout" + } + ], + "severity": "INFO" + }, + { + "debuglevel": 99, + "name": "kea-dhcp6.http", + "output_options": [ + { + "flush": true, + "maxsize": 10240000, + "maxver": 1, + "output": "stdout" + } + ], + "severity": "INFO" + } + ] + } +}