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