1# Server configuration file example for DHCPv6
2# From the file used for TAHI tests.
3
4# IPv6 address valid lifetime
5#  (at the end the address is no longer usable by the client)
6#  (set to 30 days, the usual IPv6 default)
7default-lease-time 2592000;
8
9# IPv6 address preferred lifetime
10#  (at the end the address is deprecated, i.e., the client should use
11#   other addresses for new connections)
12#  (set to 7 days, the	usual IPv6 default)
13preferred-lifetime 604800;
14
15# T1, the delay before Renew
16#  (default is 1/2 preferred lifetime)
17#  (set to 1 hour)
18option dhcp-renewal-time 3600;
19
20# T2, the delay before Rebind (if Renews failed)
21#  (default is 3/4 preferred lifetime)
22#  (set to 2 hours)
23option dhcp-rebinding-time 7200;
24
25# Enable RFC 5007 support (same than for DHCPv4)
26allow leasequery;
27
28# Global definitions for name server address(es) and domain search list
29option dhcp6.name-servers 3ffe:501:ffff:100:200:ff:fe00:3f3e;
30option dhcp6.domain-search "test.example.com","example.com";
31
32# Set preference to 255 (maximum) in order to avoid waiting for
33# additional servers when there is only one
34##option dhcp6.preference 255;
35
36# Server side command to enable rapid-commit (2 packet exchange)
37##option dhcp6.rapid-commit;
38
39# The delay before information-request refresh
40#  (minimum is 10 minutes, maximum one day, default is to not refresh)
41#  (set to 6 hours)
42option dhcp6.info-refresh-time 21600;
43
44# The path of the lease file
45dhcpv6-lease-file-name "/usr/local/var/db/dhcpd6.leases";
46
47# Static definition (must be global)
48host myclient {
49	# The entry is looked up by this
50	host-identifier option
51		dhcp6.client-id 00:01:00:01:00:04:93:e0:00:00:00:00:a2:a2;
52
53	# A fixed address
54	fixed-address6 3ffe:501:ffff:100::1234;
55
56	# A fixed prefix
57	fixed-prefix6 3ffe:501:ffff:101::/64;
58
59	# Override of the global definitions,
60	# works only when a resource (address or prefix) is assigned
61	option dhcp6.name-servers 3ffe:501:ffff:100:200:ff:fe00:4f4e;
62
63	# For debug (to see when the entry statements are executed)
64	#  (log "sol" when a matching Solicitation is received)
65	##if packet(0,1) = 1 { log(debug,"sol"); }
66}
67
68host otherclient {
69        # This host entry is hopefully matched if the client supplies a DUID-LL
70        # or DUID-LLT containing this MAC address.
71        hardware ethernet 01:00:80:a2:55:67;
72
73        fixed-address6 3ffe:501:ffff:100::4321;
74}
75
76# The subnet where the server is attached
77#  (i.e., the server has an address in this subnet)
78subnet6 3ffe:501:ffff:100::/64 {
79	# Two addresses available to clients
80	#  (the third client should get NoAddrsAvail)
81	range6 3ffe:501:ffff:100::10 3ffe:501:ffff:100::11;
82
83	# Use the whole /64 prefix for temporary addresses
84	#  (i.e., direct application of RFC 4941)
85	range6 3ffe:501:ffff:100:: temporary;
86
87	# Some /64 prefixes available for Prefix Delegation (RFC 3633)
88	prefix6 3ffe:501:ffff:100:: 3ffe:501:ffff:111:: /64;
89}
90
91# A second subnet behind a relay agent
92subnet6 3ffe:501:ffff:101::/64 {
93	range6 3ffe:501:ffff:101::10 3ffe:501:ffff:101::11;
94
95	# Override of the global definitions,
96	# works only when a resource (address or prefix) is assigned
97	option dhcp6.name-servers 3ffe:501:ffff:101:200:ff:fe00:3f3e;
98
99}
100
101# A third subnet behind a relay agent chain
102subnet6 3ffe:501:ffff:102::/64 {
103	range6 3ffe:501:ffff:102::10 3ffe:501:ffff:102::11;
104}
105
106