--- /dev/null
+# for Linux
+
+# 0 tunoff NetworkManager on the target interface
+
+# 1 change interface name from ens38 (put your here) to eth1
+sudo ip link set down dev ens38
+sudo ip link set name eth1 dev ens38
+sudo ip link set up dev eth1
+
+# 2 add IPv6 address
+sudo ip -6 addr add 2001:db8::1/64 dev eth1
+
+# 3 launch DHCPv6 server
+sudo kea-dhcp6 -d -c boot.json
+
+# 4 verify its configuration
+echo '{ "command": "config-get" }' | socat UNIX:/tmp/kea6-sock '-,ignoreeof'
+
+# 5 load the startup config to the startup datastore
+sudo sysrepocfg -l 4 -d startup -f xml -i startup.xml kea-dhcp6-server
+
+# 6 launch Netconf agent
+sudo kea-netconf -d -c netconf.json
+
+# 7 play changing configuration
+sudo sysrepocfg -l 4 -d running -f xml -i bad-schema.xml kea-dhcp6-server
+
+sudo sysrepocfg -l 4 -d running -f xml -i twopools.xml kea-dhcp6-server
--- /dev/null
+<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp6-server">
+ <subnet6>
+ <subnet6>
+ <id>1</id>
+ <pools>
+ <pool>
+ <start-address>2001:db8:1::</start-address>
+ <end-address>2001:db8:1::ffff</end-address>
+ <prefix>2001:db8:1::/112</prefix>
+ </pool>
+ </pools>
+ <subnet>2001:db8::/64</subnet>
+ </subnet6>
+ </subnet6>
+ <interfaces-config>
+ <interfaces>eth1</interfaces>
+ </interfaces-config>
+ <control-socket>
+ <socket-name>/tmp/kea6-sock</socket-name>
+ <socket-type>unix</socket-type>
+ </control-socket>
+</config>
--- /dev/null
+<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp6-server">
+ <subnet4>
+ <subnet6>
+ <id>1</id>
+ <pools>
+ <pool>
+ <start-address>2001:db8::1:0</start-address>
+ <end-address>2001:db8::1:ffff</end-address>
+ <prefix>2001:db8::1:0/112</prefix>
+ </pool>
+ </pools>
+ <subnet>2001:db8::/64</subnet>
+ </subnet6>
+ </subnet4>
+ <interfaces-config>
+ <interfaces>eth1</interfaces>
+ </interfaces-config>
+ <control-socket>
+ <socket-name>/tmp/kea6-sock</socket-name>
+ <socket-type>unix</socket-type>
+ </control-socket>
+</config>
--- /dev/null
+<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp6-server">
+ <subnet6>
+ <subnet6>
+ <id>1</id>
+ <pools>
+ <pool>
+ <start-address>2001:db8::1:0</start-address>
+ <end-address>2001:db8::1:ffff</end-address>
+ <prefix>2001:db8::1:0/112</prefix>
+ </pool>
+ </pools>
+ <subnet>2001:db8::/64</subnet>
+ </subnet6>
+ </subnet6>
+ <interfaces-config>
+ <interfaces>eth1</interfaces>
+ </interfaces-config>
+ <control-socket>
+ <socket-name>/tmp/kea6-sock</socket-name>
+ <socket-type>unix</socket-type>
+ </control-socket>
+ <user-context>bad</user-context>
+</config>
--- /dev/null
+{
+ "Dhcp6": {
+ "control-socket": {
+ "socket-type": "unix",
+ "socket-name": "/tmp/kea6-sock"
+ }
+ }
+}
--- /dev/null
+{
+ "Netconf":
+ {
+ "managed-servers":
+ {
+ "dhcp6":
+ {
+ "control-socket":
+ {
+ "socket-type": "unix",
+ "socket-name": "/tmp/kea6-sock"
+ }
+ }
+ }
+ }
+}
--- /dev/null
+<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp6-server">
+ <subnet6>
+ <subnet6>
+ <id>1</id>
+ <pools>
+ <pool>
+ <start-address>2001:db8::1:0</start-address>
+ <end-address>2001:db8::1:ffff</end-address>
+ <prefix>2001:db8::1:0/112</prefix>
+ </pool>
+ </pools>
+ <subnet>2001:db8::/64</subnet>
+ </subnet6>
+ </subnet6>
+ <interfaces-config>
+ <interfaces>eth1</interfaces>
+ </interfaces-config>
+ <control-socket>
+ <socket-name>/tmp/kea6-sock</socket-name>
+ <socket-type>unix</socket-type>
+ </control-socket>
+</config>
--- /dev/null
+<config xmlns="urn:ietf:params:xml:ns:yang:kea-dhcp6-server">
+ <subnet6>
+ <subnet6>
+ <id>1</id>
+ <pools>
+ <pool>
+ <start-address>2001:db8::1:0</start-address>
+ <end-address>2001:db8::1:ffff</end-address>
+ <prefix>2001:db8::1:0/112</prefix>
+ </pool>
+ <pool>
+ <start-address>2001:db8::2:0</start-address>
+ <end-address>2001:db8::2:ffff</end-address>
+ <prefix>2001:db8::2:0/112</prefix>
+ </pool>
+ </pools>
+ <subnet>2001:db8::/64</subnet>
+ </subnet6>
+ </subnet6>
+ <interfaces-config>
+ <interfaces>eth1</interfaces>
+ </interfaces-config>
+ <control-socket>
+ <socket-name>/tmp/kea6-sock</socket-name>
+ <socket-type>unix</socket-type>
+ </control-socket>
+</config>