1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
{
"Dhcp6": {
"interfaces-config": {
{% if listen_interface is vyos_defined %}
"interfaces": {{ listen_interface | tojson }},
{% else %}
"interfaces": [ "*" ],
{% endif %}
"service-sockets-max-retries": 60,
"service-sockets-retry-wait-time": 5000
},
"control-socket": {
"socket-type": "unix",
"socket-name": "/run/kea/dhcp6-ctrl-socket"
},
"lease-database": {
"type": "memfile",
"persist": true,
"name": "{{ lease_file }}"
},
"hooks-libraries": [
{% if disable_route_autoinstall is not vyos_defined %}
{
"library": "/usr/lib/{{ machine }}-linux-gnu/kea/hooks/libdhcp_run_script.so",
"parameters": {
"name": "/usr/libexec/vyos/system/on-dhcpv6-event.sh",
"sync": false
}
},
{% endif %}
{
"library": "/usr/lib/{{ machine }}-linux-gnu/kea/hooks/libdhcp_lease_cmds.so",
"parameters": {}
}
],
"option-data": [
{% if global_parameters.name_server is vyos_defined %}
{
"name": "dns-servers",
"code": 23,
"space": "dhcp6",
"csv-format": true,
"data": "{{ global_parameters.name_server | join(", ") }}"
}{{ ',' if preference is vyos_defined else '' }}
{% endif %}
{% if preference is vyos_defined %}
{
"name": "preference",
"code": 7,
"space": "dhcp6",
"csv-format": true,
"data": "{{ preference }}"
}
{% endif %}
],
{% if shared_network_name is vyos_defined %}
"shared-networks": {{ shared_network_name | kea6_shared_network_json }}
{% endif %}
}
}
|