1dhcp-options(5) File Formats Manual dhcp-options(5)
2
3
4
6 dhcp-options - Dynamic Host Configuration Protocol options
7
9 The Dynamic Host Configuration protocol allows the client to receive
10 options from the DHCP server describing the network configuration and
11 various services that are available on the network. When configuring
12 dhcpd(8) or dhclient(8) , options must often be declared. The syntax
13 for declaring options, and the names and formats of the options that
14 can be declared, are documented here.
15
17 DHCP option statements always start with the option keyword, followed
18 by an option name, followed by option data. The option names and data
19 formats are described below. It is not necessary to exhaustively spec‐
20 ify all DHCP options - only those options which are needed by clients
21 must be specified.
22
23 Option data comes in a variety of formats, as defined below:
24
25 The ip-address data type can be entered either as an explicit IP
26 address (e.g., 239.254.197.10) or as a domain name (e.g., haa‐
27 gen.isc.org). When entering a domain name, be sure that that domain
28 name resolves to a single IP address.
29
30 The ip6-address data specifies an IPv6 address, like ::1 or
31 3ffe:bbbb:aaaa:aaaa::1.
32
33 The int32 data type specifies a signed 32-bit integer. The uint32 data
34 type specifies an unsigned 32-bit integer. The int16 and uint16 data
35 types specify signed and unsigned 16-bit integers. The int8 and uint8
36 data types specify signed and unsigned 8-bit integers. Unsigned 8-bit
37 integers are also sometimes referred to as octets.
38
39 The text data type specifies an NVT ASCII string, which must be
40 enclosed in double quotes - for example, to specify a root-path option,
41 the syntax would be
42
43 option root-path "10.0.1.4:/var/tmp/rootfs";
44
45 The domain-name data type specifies a domain name, which must not be
46 enclosed in double quotes. The domain name is stored just as if it
47 were a text option.
48
49 The domain-list data type specifies a list of domain names, enclosed in
50 double quotes and separated by commas ("example.com", "foo.exam‐
51 ple.com").
52
53 The flag data type specifies a boolean value. Booleans can be either
54 true or false (or on or off, if that makes more sense to you).
55
56 The string data type specifies either an NVT ASCII string enclosed in
57 double quotes, or a series of octets specified in hexadecimal, sepa‐
58 rated by colons. For example:
59
60 option dhcp-client-identifier "CLIENT-FOO";
61 or
62 option dhcp-client-identifier 43:4c:49:45:54:2d:46:4f:4f;
63
64 The destination-descriptor describe the IP subnet number and subnet
65 mask of a particular destination using a compact encoding. This encod‐
66 ing consists of one octet describing the width of the subnet mask, fol‐
67 lowed by all the significant octets of the subnet number. The follow‐
68 ing table contains some examples of how various subnet number/mask com‐
69 binations can be encoded:
70
71 Subnet number Subnet mask Destination descriptor
72 0 0 0
73 10.0.0.0 255.0.0.0 8.10
74 10.0.0.0 255.255.255.0 24.10.0.0
75 10.17.0.0 255.255.0.0 16.10.17
76 10.27.129.0 255.255.255.0 24.10.27.129
77 10.229.0.128 255.255.255.128 25.10.229.0.128
78 10.198.122.47 255.255.255.255 32.10.198.122.47
79
81 Sometimes it's helpful to be able to set the value of a DHCP option
82 based on some value that the client has sent. To do this, you can use
83 expression evaluation. The dhcp-eval(5) manual page describes how to
84 write expressions. To assign the result of an evaluation to an option,
85 define the option as follows:
86
87 option my-option = expression ;
88
89 For example:
90
91 option hostname = binary-to-ascii (16, 8, "-",
92 substring (hardware, 1, 6));
93
95 Starting with 4.3.0 when ISC adds new option definitions those defini‐
96 tions will be included in the code based on the definition of an argu‐
97 ment for the RFC that defines the option in includes/site.h. This pro‐
98 vides you with a method for over-riding the ISC definitions if neces‐
99 sary - for example if you have previously defined the option with a
100 different format using the mechanism from DEFINING NEW OPTIONS below.
101
102 By default all of the options are enabled. In order to disable an
103 option you would edit the includes/site.h file and comment out the def‐
104 inition for the proper RFC.
105
107 The documentation for the various options mentioned below is taken from
108 the latest IETF draft document on DHCP options. Options not listed
109 below may not yet be implemented, but it is possible to use such
110 options by defining them in the configuration file. Please see the
111 DEFINING NEW OPTIONS heading later in this document for more informa‐
112 tion.
113
114 Some of the options documented here are automatically generated by the
115 DHCP server or by clients, and cannot be configured by the user. The
116 value of such an option can be used in the configuration file of the
117 receiving DHCP protocol agent (server or client), for example in condi‐
118 tional expressions. However, the value of the option cannot be used in
119 the configuration file of the sending agent, because the value is
120 determined only after the configuration file has been processed. In the
121 following documentation, such options will be shown as "not user con‐
122 figurable"
123
124 The standard options are:
125
126 option all-subnets-local flag;
127
128 This option specifies whether or not the client may assume that all
129 subnets of the IP network to which the client is connected use the
130 same MTU as the subnet of that network to which the client is
131 directly connected. A value of true indicates that all subnets share
132 the same MTU. A value of false means that the client should assume
133 that some subnets of the directly connected network may have smaller
134 MTUs.
135
136 option arp-cache-timeout uint32;
137
138 This option specifies the timeout in seconds for ARP cache entries.
139
140 option associated-ip ip-address [, ip-address... ];
141
142 This option is part of lease query. It is used to return all of the
143 IP addresses associated with a given DHCP client.
144
145 This option is not user configurable.
146
147 option bcms-controller-address ip-address [, ip-address... ];
148
149 This option configures a list of IPv4 addresses for use as Broadcast
150 and Multicast Controller Servers ("BCMS").
151
152 option bcms-controller-names domain-list;
153
154 This option contains the domain names of local Broadcast and Multi‐
155 cast Controller Servers ("BCMS") controllers which the client may
156 use.
157
158 option bootfile-name text;
159
160 This option is used to identify a bootstrap file. If supported by
161 the client, it should have the same effect as the filename declara‐
162 tion. BOOTP clients are unlikely to support this option. Some DHCP
163 clients will support it, and others actually require it.
164
165 option boot-size uint16;
166
167 This option specifies the length in 512-octet blocks of the default
168 boot image for the client.
169
170 option broadcast-address ip-address;
171
172 This option specifies the broadcast address in use on the client's
173 subnet. Legal values for broadcast addresses are specified in sec‐
174 tion 3.2.1.3 of STD 3 (RFC1122).
175
176 option capwap-ac-v4 ip-address [, ip-address ... ] ;
177
178 A list of IPv4 addresses of CAPWAP ACs that the WTP may use. The
179 addresses are listed in preference order.
180
181 This option is included based on RFC 5417.
182
183 option client-last-transaction-time uint32;
184
185 This option is part of lease query. It allows the receiver to deter‐
186 mine the time of the most recent access by the client. The value is
187 a duration in seconds from when the client last communicated with the
188 DHCP server.
189
190 This option is not user configurable.
191
192 option cookie-servers ip-address [, ip-address... ];
193
194 The cookie server option specifies a list of RFC 865 cookie servers
195 available to the client. Servers should be listed in order of pref‐
196 erence.
197
198 option default-ip-ttl uint8;
199
200 This option specifies the default time-to-live that the client should
201 use on outgoing datagrams.
202
203 option default-tcp-ttl uint8;
204
205 This option specifies the default TTL that the client should use when
206 sending TCP segments. The minimum value is 1.
207
208 option default-url string;
209
210 The format and meaning of this option is not described in any stan‐
211 dards document, but is claimed to be in use by Apple Computer. It is
212 not known what clients may reasonably do if supplied with this
213 option. Use at your own risk.
214
215 option dhcp-client-identifier string;
216
217 This option can be used to specify a DHCP client identifier in a host
218 declaration, so that dhcpd can find the host record by matching
219 against the client identifier.
220
221 Please be aware that some DHCP clients, when configured with client
222 identifiers that are ASCII text, will prepend a zero to the ASCII
223 text. So you may need to write:
224
225 option dhcp-client-identifier "\0foo";
226
227 rather than:
228
229 option dhcp-client-identifier "foo";
230
231 option dhcp-lease-time uint32;
232
233 This option is used in a client request (DHCPDISCOVER or DHCPREQUEST)
234 to allow the client to request a lease time for the IP address. In a
235 server reply (DHCPOFFER), a DHCP server uses this option to specify
236 the lease time it is willing to offer.
237
238 This option is not directly user configurable in the server; refer to
239 the max-lease-time and default-lease-time server options in
240 dhcpd.conf(5).
241
242 option dhcp-max-message-size uint16;
243
244 This option, when sent by the client, specifies the maximum size of
245 any response that the server sends to the client. When specified on
246 the server, if the client did not send a dhcp-max-message-size
247 option, the size specified on the server is used. This works for
248 BOOTP as well as DHCP responses.
249
250 option dhcp-message text;
251
252 This option is used by a DHCP server to provide an error message to a
253 DHCP client in a DHCPNAK message in the event of a failure. A client
254 may use this option in a DHCPDECLINE message to indicate why the
255 client declined the offered parameters.
256
257 This option is not user configurable.
258
259 option dhcp-message-type uint8;
260
261 This option, sent by both client and server, specifies the type of
262 DHCP message contained in the DHCP packet. Possible values (taken
263 directly from RFC2132) are:
264
265 1 DHCPDISCOVER
266 2 DHCPOFFER
267 3 DHCPREQUEST
268 4 DHCPDECLINE
269 5 DHCPACK
270 6 DHCPNAK
271 7 DHCPRELEASE
272 8 DHCPINFORM
273
274 This option is not user configurable.
275
276 option dhcp-option-overload uint8;
277
278 This option is used to indicate that the DHCP ´sname´ or ´file´
279 fields are being overloaded by using them to carry DHCP options. A
280 DHCP server inserts this option if the returned parameters will
281 exceed the usual space allotted for options.
282
283 If this option is present, the client interprets the specified addi‐
284 tional fields after it concludes interpretation of the standard
285 option fields.
286
287 Legal values for this option are:
288
289 1 the ´file´ field is used to hold options
290 2 the ´sname´ field is used to hold options
291 3 both fields are used to hold options
292
293 This option is not user configurable.
294
295 option dhcp-parameter-request-list uint8 [, uint8... ];
296
297 This option, when sent by the client, specifies which options the
298 client wishes the server to return. Normally, in the ISC DHCP
299 client, this is done using the request statement. If this option is
300 not specified by the client, the DHCP server will normally return
301 every option that is valid in scope and that fits into the reply.
302 When this option is specified on the server, the server returns the
303 specified options. This can be used to force a client to take
304 options that it hasn't requested, and it can also be used to tailor
305 the response of the DHCP server for clients that may need a more lim‐
306 ited set of options than those the server would normally return.
307
308 option dhcp-rebinding-time uint32;
309
310 This option specifies the number of seconds from the time a client
311 gets an address until the client transitions to the REBINDING state.
312
313 This option is user configurable, but it will be ignored if the value
314 is greater than or equal to the lease time.
315
316 To make DHCPv4+DHCPv6 migration easier in the future, any value con‐
317 figured in this option is also used as a DHCPv6 "T1" (renew) time.
318
319 option dhcp-renewal-time uint32;
320
321 This option specifies the number of seconds from the time a client
322 gets an address until the client transitions to the RENEWING state.
323
324 This option is user configurable, but it will be ignored if the value
325 is greater than or equal to the rebinding time, or lease time.
326
327 To make DHCPv4+DHCPv6 migration easier in the future, any value con‐
328 figured in this option is also used as a DHCPv6 "T2" (rebind) time.
329
330 option dhcp-requested-address ip-address;
331
332 This option is used by the client in a DHCPDISCOVER to request that a
333 particular IP address be assigned.
334
335 This option is not user configurable.
336
337 option dhcp-server-identifier ip-address;
338
339 This option is used in DHCPOFFER and DHCPREQUEST messages, and may
340 optionally be included in the DHCPACK and DHCPNAK messages. DHCP
341 servers include this option in the DHCPOFFER in order to allow the
342 client to distinguish between lease offers. DHCP clients use the
343 contents of the ´server identifier´ field as the destination address
344 for any DHCP messages unicast to the DHCP server. DHCP clients also
345 indicate which of several lease offers is being accepted by including
346 this option in a DHCPREQUEST message.
347
348 The value of this option is the IP address of the server.
349
350 This option is not directly user configurable. See the server-identi‐
351 fier server option in dhcpd.conf(5).
352
353 option domain-name text;
354
355 This option specifies the domain name that client should use when
356 resolving hostnames via the Domain Name System.
357
358 option domain-name-servers ip-address [, ip-address... ];
359
360 The domain-name-servers option specifies a list of Domain Name System
361 (STD 13, RFC 1035) name servers available to the client. Servers
362 should be listed in order of preference.
363
364 option domain-search domain-list;
365
366 The domain-search option specifies a ´search list´ of Domain Names to
367 be used by the client to locate not-fully-qualified domain names.
368 The difference between this option and historic use of the domain-
369 name option for the same ends is that this option is encoded in
370 RFC1035 compressed labels on the wire. For example:
371
372 option domain-search "example.com", "sales.example.com",
373 "eng.example.com";
374
375 option extensions-path text;
376
377 This option specifies the name of a file containing additional
378 options to be interpreted according to the DHCP option format as
379 specified in RFC2132.
380
381 option finger-server ip-address [, ip-address... ];
382
383 The Finger server option specifies a list of Finger servers available
384 to the client. Servers should be listed in order of preference.
385
386 option font-servers ip-address [, ip-address... ];
387
388 This option specifies a list of X Window System Font servers avail‐
389 able to the client. Servers should be listed in order of preference.
390
391 option geoconf-civic string;
392
393 A string to hold the geoconf civic structure.
394
395 This option is included based on RFC 4776.
396
397 option host-name string;
398
399 This option specifies the name of the client. The name may or may
400 not be qualified with the local domain name (it is preferable to use
401 the domain-name option to specify the domain name). See RFC 1035 for
402 character set restrictions. This option is only honored by dhclient-
403 script(8) if the hostname for the client machine is not set.
404
405 option ieee802-3-encapsulation flag;
406
407 This option specifies whether or not the client should use Ethernet
408 Version 2 (RFC 894) or IEEE 802.3 (RFC 1042) encapsulation if the
409 interface is an Ethernet. A value of false indicates that the client
410 should use RFC 894 encapsulation. A value of true means that the
411 client should use RFC 1042 encapsulation.
412
413 option ien116-name-servers ip-address [, ip-address... ];
414
415 The ien116-name-servers option specifies a list of IEN 116 name
416 servers available to the client. Servers should be listed in order
417 of preference.
418
419 option impress-servers ip-address [, ip-address... ];
420
421 The impress-server option specifies a list of Imagen Impress servers
422 available to the client. Servers should be listed in order of pref‐
423 erence.
424
425 option interface-mtu uint16;
426
427 This option specifies the MTU to use on this interface. The minimum
428 legal value for the MTU is 68.
429
430 option ip-forwarding flag;
431
432 This option specifies whether the client should configure its IP
433 layer for packet forwarding. A value of false means disable IP for‐
434 warding, and a value of true means enable IP forwarding.
435
436 option irc-server ip-address [, ip-address... ];
437
438 The IRC server option specifies a list of IRC servers available to
439 the client. Servers should be listed in order of preference.
440
441
442 option loader-configfile text
443
444 This option is used to specify a boot loading configuration file a
445 PXE client should use.
446
447 This option is included based on RFC 5071.
448
449 option loader-pathprefix text
450
451 This option is used to specify a path prefix a PXE client should use
452 in conjunction with the boot load configuration file.
453
454 This option is included based on RFC 5071.
455
456 option loader-reboottime uint32
457
458 This option is used to dictate the maximum amount of time a PXE
459 client should allow itself to achieve configured network resources
460 before rebooting.
461
462 This option is included based on RFC 5071.
463
464 option log-servers ip-address [, ip-address... ];
465
466 The log-server option specifies a list of MIT-LCS UDP log servers
467 available to the client. Servers should be listed in order of pref‐
468 erence.
469
470 option lpr-servers ip-address [, ip-address... ];
471
472 The LPR server option specifies a list of RFC 1179 line printer
473 servers available to the client. Servers should be listed in order
474 of preference.
475
476 option mask-supplier flag;
477
478 This option specifies whether or not the client should respond to
479 subnet mask requests using ICMP. A value of false indicates that the
480 client should not respond. A value of true means that the client
481 should respond.
482
483 option max-dgram-reassembly uint16;
484
485 This option specifies the maximum size datagram that the client
486 should be prepared to reassemble. The minimum legal value is 576.
487
488 option merit-dump text;
489
490 This option specifies the path-name of a file to which the client's
491 core image should be dumped in the event the client crashes. The
492 path is formatted as a character string consisting of characters from
493 the NVT ASCII character set.
494
495 option mobile-ip-home-agent ip-address [, ip-address... ];
496
497 This option specifies a list of IP addresses indicating mobile IP
498 home agents available to the client. Agents should be listed in
499 order of preference, although normally there will be only one such
500 agent.
501
502 option name-service-search uint16 [, uint6... ];
503
504 This option specifies a list of name services in the order the client
505 should attempt to use them.
506
507 This option is included based on RFC 2937.
508
509 option nds-context string;
510
511 The nds-context option specifies the name of the initial Netware
512 Directory Service for an NDS client.
513
514 option nds-servers ip-address [, ip-address... ];
515
516 The nds-servers option specifies a list of IP addresses of NDS
517 servers.
518
519 option nds-tree-name string;
520
521 The nds-tree-name option specifies NDS tree name that the NDS client
522 should use.
523
524 option netbios-dd-server ip-address [, ip-address... ];
525
526 The NetBIOS datagram distribution server (NBDD) option specifies a
527 list of RFC 1001/1002 NBDD servers listed in order of preference.
528
529 option netbios-name-servers ip-address [, ip-address...];
530
531 The NetBIOS name server (NBNS) option specifies a list of RFC
532 1001/1002 NBNS name servers listed in order of preference. NetBIOS
533 Name Service is currently more commonly referred to as WINS. WINS
534 servers can be specified using the netbios-name-servers option.
535
536 option netbios-node-type uint8;
537
538 The NetBIOS node type option allows NetBIOS over TCP/IP clients which
539 are configurable to be configured as described in RFC 1001/1002. The
540 value is specified as a single octet which identifies the client
541 type.
542
543 Possible node types are:
544
545 1 B-node: Broadcast - no WINS
546
547 2 P-node: Peer - WINS only
548
549 4 M-node: Mixed - broadcast, then WINS
550
551 8 H-node: Hybrid - WINS, then broadcast
552
553 option netbios-scope string;
554
555 The NetBIOS scope option specifies the NetBIOS over TCP/IP scope
556 parameter for the client as specified in RFC 1001/1002. See RFC1001,
557 RFC1002, and RFC1035 for character-set restrictions.
558
559 option netinfo-server-address ip-address [, ip-address... ];
560
561 The netinfo-server-address option has not been described in any RFC,
562 but has been allocated (and is claimed to be in use) by Apple Comput‐
563 ers. It's hard to say if the above is the correct format, or what
564 clients might be expected to do if values were configured. Use at
565 your own risk.
566
567 option netinfo-server-tag text;
568
569 The netinfo-server-tag option has not been described in any RFC, but
570 has been allocated (and is claimed to be in use) by Apple Computers.
571 It's hard to say if the above is the correct format, or what clients
572 might be expected to do if values were configured. Use at your own
573 risk.
574
575 option nis-domain text;
576
577 This option specifies the name of the client's NIS (Sun Network
578 Information Services) domain. The domain is formatted as a character
579 string consisting of characters from the NVT ASCII character set.
580
581 option nis-servers ip-address [, ip-address... ];
582
583 This option specifies a list of IP addresses indicating NIS servers
584 available to the client. Servers should be listed in order of pref‐
585 erence.
586
587 option nisplus-domain text;
588
589 This option specifies the name of the client's NIS+ domain. The
590 domain is formatted as a character string consisting of characters
591 from the NVT ASCII character set.
592
593 option nisplus-servers ip-address [, ip-address... ];
594
595 This option specifies a list of IP addresses indicating NIS+ servers
596 available to the client. Servers should be listed in order of pref‐
597 erence.
598
599 option nntp-server ip-address [, ip-address... ];
600
601 The NNTP server option specifies a list of NNTP servers available to
602 the client. Servers should be listed in order of preference.
603
604 option non-local-source-routing flag;
605
606 This option specifies whether the client should configure its IP
607 layer to allow forwarding of datagrams with non-local source routes
608 (see Section 3.3.5 of [4] for a discussion of this topic). A value
609 of false means disallow forwarding of such datagrams, and a value of
610 true means allow forwarding.
611
612 option ntp-servers ip-address [, ip-address... ];
613
614 This option specifies a list of IP addresses indicating NTP (RFC
615 5905) servers available to the client. Servers should be listed in
616 order of preference.
617
618 option nwip-domain string;
619
620 The name of the NetWare/IP domain that a NetWare/IP client should
621 use.
622
623 option nwip-suboptions string;
624
625 A sequence of suboptions for NetWare/IP clients - see RFC2242 for
626 details. Normally this option is set by specifying specific Net‐
627 Ware/IP suboptions - see the NETWARE/IP SUBOPTIONS section for more
628 information.
629
630 option pxe-system-type uint16 [, uint16 ... ];
631
632 A list of one ore more 16-bit integers which allows a client to spec‐
633 ify its pre-boot architecture type(s).
634
635 This option is included based on RFC 4578.
636
637 option pxe-interface-id uint8 uint8 uint8
638
639 A three octet value which allows a client to specify its network
640 interface type.
641
642 This option is included based on RFC 4578.
643
644 option pxe-client-id uint8 string
645
646 A single octet indicating type, followed by a string that allows a
647 client to specify its PXE client identity.
648
649 This option is included based on RFC 4578.
650
651 option option-6rd uint8 uint8 ip6-address ip-address [, ip-address
652 ...];
653
654 This option contains information about the rapid deployment option.
655 It is 8 bits of ipv4 mask length, 8 bits of 6rd prefix length, an
656 ipv6 prefix as an ipv6 address and a list of one or more ipv4
657 addresses.
658
659 This option is included based on RFC 5969.
660
661 option pana-agent ip-address [, ip-address ... ] ;
662
663 A set of IPv4 addresses of a PAA for the client to use. The
664 addresses are listed in preferred order.
665
666 This option is included based on RFC 5192.
667
668 option path-mtu-aging-timeout uint32;
669
670 This option specifies the timeout (in seconds) to use when aging Path
671 MTU values discovered by the mechanism defined in RFC 1191.
672
673 option path-mtu-plateau-table uint16 [, uint16... ];
674
675 This option specifies a table of MTU sizes to use when performing
676 Path MTU Discovery as defined in RFC 1191. The table is formatted as
677 a list of 16-bit unsigned integers, ordered from smallest to largest.
678 The minimum MTU value cannot be smaller than 68.
679
680 option pcode text;
681
682 This option specifies a string suitable for the TZ variable.
683
684 This option is included based on RFC 4833.
685
686 option perform-mask-discovery flag;
687
688 This option specifies whether or not the client should perform subnet
689 mask discovery using ICMP. A value of false indicates that the
690 client should not perform mask discovery. A value of true means that
691 the client should perform mask discovery.
692
693 option policy-filter ip-address ip-address
694 [, ip-address ip-address...];
695
696 This option specifies policy filters for non-local source routing.
697 The filters consist of a list of IP addresses and masks which specify
698 destination/mask pairs with which to filter incoming source routes.
699
700 Any source routed datagram whose next-hop address does not match one
701 of the filters should be discarded by the client.
702
703 See STD 3 (RFC1122) for further information.
704
705 option pop-server ip-address [, ip-address... ];
706
707 The POP3 server option specifies a list of POP3 servers available to
708 the client. Servers should be listed in order of preference.
709
710 option rdnss-selection uint8 ip-address ip-address domain-name;
711
712 The rdnss-selection option specifies an 8 bit flags field, a primary
713 and secondary ip address for the name server and a domainlist of
714 domains for which the RDNSS has special knowledge.
715
716 This option is included based on RFC 6731.
717
718 option resource-location-servers ip-address
719 [, ip-address...];
720
721 This option specifies a list of RFC 887 Resource Location servers
722 available to the client. Servers should be listed in order of pref‐
723 erence.
724
725 option root-path text;
726
727 This option specifies the path-name that contains the client's root
728 disk. The path is formatted as a character string consisting of
729 characters from the NVT ASCII character set.
730
731 option router-discovery flag;
732
733 This option specifies whether or not the client should solicit
734 routers using the Router Discovery mechanism defined in RFC 1256. A
735 value of false indicates that the client should not perform router
736 discovery. A value of true means that the client should perform
737 router discovery.
738
739 option router-solicitation-address ip-address;
740
741 This option specifies the address to which the client should transmit
742 router solicitation requests.
743
744 option routers ip-address [, ip-address... ];
745
746 The routers option specifies a list of IP addresses for routers on
747 the client's subnet. Routers should be listed in order of prefer‐
748 ence.
749
750 option slp-directory-agent boolean ip-address [, ip-address... ];
751
752 This option specifies two things: the IP addresses of one or more
753 Service Location Protocol Directory Agents, and whether the use of
754 these addresses is mandatory. If the initial boolean value is true,
755 the SLP agent should just use the IP addresses given. If the value
756 is false, the SLP agent may additionally do active or passive multi‐
757 cast discovery of SLP agents (see RFC2165 for details).
758
759 Please note that in this option and the slp-service-scope option, the
760 term "SLP Agent" is being used to refer to a Service Location Proto‐
761 col agent running on a machine that is being configured using the
762 DHCP protocol.
763
764 Also, please be aware that some companies may refer to SLP as NDS.
765 If you have an NDS directory agent whose address you need to config‐
766 ure, the slp-directory-agent option should work.
767
768 option slp-service-scope boolean text;
769
770 The Service Location Protocol Service Scope Option specifies two
771 things: a list of service scopes for SLP, and whether the use of this
772 list is mandatory. If the initial boolean value is true, the SLP
773 agent should only use the list of scopes provided in this option;
774 otherwise, it may use its own static configuration in preference to
775 the list provided in this option.
776
777 The text string should be a comma-separated list of scopes that the
778 SLP agent should use. It may be omitted, in which case the SLP Agent
779 will use the aggregated list of scopes of all directory agents known
780 to the SLP agent.
781
782 option smtp-server ip-address [, ip-address... ];
783
784 The SMTP server option specifies a list of SMTP servers available to
785 the client. Servers should be listed in order of preference.
786
787 option static-routes ip-address ip-address
788 [, ip-address ip-address...];
789
790 This option specifies a list of static routes that the client should
791 install in its routing cache. If multiple routes to the same desti‐
792 nation are specified, they are listed in descending order of prior‐
793 ity.
794
795 The routes consist of a list of IP address pairs. The first address
796 is the destination address, and the second address is the router for
797 the destination.
798
799 The default route (0.0.0.0) is an illegal destination for a static
800 route. To specify the default route, use the routers option. Also,
801 please note that this option is not intended for classless IP routing
802 - it does not include a subnet mask. Since classless IP routing is
803 now the most widely deployed routing standard, this option is virtu‐
804 ally useless, and is not implemented by any of the popular DHCP
805 clients, for example the Microsoft DHCP client.
806
807 NOTE to Fedora dhclient users:
808 dhclient-script interprets trailing 0 octets of the target as indi‐
809 cating the subnet class of the route, so for the following static-
810 routes value:
811 option static-routes 172.0.0.0 172.16.2.254,
812 192.168.0.0 192.168.2.254;
813 dhclient-script will create routes:
814 172/8 via 172.16.2.254 dev $interface
815 192.168/16 via 192.168.2.254 dev $interface
816
817 option classless-static-routes destination-descriptor ip-address
818 [, destination-descriptor ip-address...];
819
820 This option (see RFC3442) specifies a list of classless static routes
821 that the client should install in its routing cache.
822
823 This option can contain one or more static routes, each of which con‐
824 sists of a destination descriptor and the IP address of the router
825 that should be used to reach that destination.
826
827 Many clients may not implement the Classless Static Routes option.
828 DHCP server administrators should therefore configure their DHCP
829 servers to send both a Router option and a Classless Static Routes
830 option, and should specify the default router(s) both in the Router
831 option and in the Classless Static Routes option.
832
833 If the DHCP server returns both a Classless Static Routes option and
834 a Router option, the DHCP client ignores the Router option.
835
836 option streettalk-directory-assistance-server ip-address
837 [, ip-address...];
838
839 The StreetTalk Directory Assistance (STDA) server option specifies a
840 list of STDA servers available to the client. Servers should be
841 listed in order of preference.
842
843 option streettalk-server ip-address [, ip-address... ];
844
845 The StreetTalk server option specifies a list of StreetTalk servers
846 available to the client. Servers should be listed in order of pref‐
847 erence.
848
849 option subnet-mask ip-address;
850
851 The subnet mask option specifies the client's subnet mask as per RFC
852 950. If no subnet mask option is provided anywhere in scope, as a
853 last resort dhcpd will use the subnet mask from the subnet declara‐
854 tion for the network on which an address is being assigned. However,
855 any subnet-mask option declaration that is in scope for the address
856 being assigned will override the subnet mask specified in the subnet
857 declaration.
858
859 option subnet-selection ip-address;
860
861 Sent by the client if an address is required in a subnet other than
862 the one that would normally be selected (based on the relaying
863 address of the connected subnet the request is obtained from). See
864 RFC3011. Note that the option number used by this server is 118; this
865 has not always been the defined number, and some clients may use a
866 different value. Use of this option should be regarded as slightly
867 experimental!
868
869 This option is not user configurable in the server.
870
871 option swap-server ip-address;
872
873 This specifies the IP address of the client's swap server.
874
875 option tftp-server-address ip-address [, ip-address... ];
876
877 This option configures a list of one or more IPv4 addresses of tftp
878 servers a client may use.
879
880 This option is included based on RFC 5859
881
882 option tcp-keepalive-garbage flag;
883
884 This option specifies whether or not the client should send TCP
885 keepalive messages with an octet of garbage for compatibility with
886 older implementations. A value of false indicates that a garbage
887 octet should not be sent. A value of true indicates that a garbage
888 octet should be sent.
889
890 option tcp-keepalive-interval uint32;
891
892 This option specifies the interval (in seconds) that the client TCP
893 should wait before sending a keepalive message on a TCP connection.
894 The time is specified as a 32-bit unsigned integer. A value of zero
895 indicates that the client should not generate keepalive messages on
896 connections unless specifically requested by an application.
897
898 option tcode text;
899
900 This option specifies a name of a zone entry in the TZ database.
901
902 This option is included based on RFC 4833.
903
904 option tftp-server-name text;
905
906 This option is used to identify a TFTP server and, if supported by
907 the client, should have the same effect as the server-name declara‐
908 tion. BOOTP clients are unlikely to support this option. Some DHCP
909 clients will support it, and others actually require it.
910
911 option time-offset int32;
912
913 The time-offset option specifies the offset of the client's subnet in
914 seconds from Coordinated Universal Time (UTC).
915
916 option time-servers ip-address [, ip-address... ];
917
918 The time-server option specifies a list of RFC 868 time servers
919 available to the client. Servers should be listed in order of pref‐
920 erence.
921
922 option trailer-encapsulation flag;
923
924 This option specifies whether or not the client should negotiate the
925 use of trailers (RFC 893 [14]) when using the ARP protocol. A value
926 of false indicates that the client should not attempt to use trail‐
927 ers. A value of true means that the client should attempt to use
928 trailers.
929
930 option uap-servers text;
931
932 This option specifies a list of URLs, each pointing to a user authen‐
933 tication service that is capable of processing authentication
934 requests encapsulated in the User Authentication Protocol (UAP). UAP
935 servers can accept either HTTP 1.1 or SSLv3 connections. If the list
936 includes a URL that does not contain a port component, the normal
937 default port is assumed (i.e., port 80 for http and port 443 for
938 https). If the list includes a URL that does not contain a path com‐
939 ponent, the path /uap is assumed. If more than one URL is specified
940 in this list, the URLs are separated by spaces.
941
942 option user-class string;
943
944 This option is used by some DHCP clients as a way for users to spec‐
945 ify identifying information to the client. This can be used in a
946 similar way to the vendor-class-identifier option, but the value of
947 the option is specified by the user, not the vendor. Most recent
948 DHCP clients have a way in the user interface to specify the value
949 for this identifier, usually as a text string.
950
951 option v4-access-domain domain-name;
952
953 The domain name associated with the access network for use with LIS
954 Discovery.
955
956 This option is included based on RFC 5986.
957
958 option v4-lost domain-name;
959
960 The domain name of the LoST server for the client to use.
961
962 This option is included based on RFC 5223.
963
964 option vendor-class-identifier string;
965
966 This option is used by some DHCP clients to identify the vendor type
967 and possibly the configuration of a DHCP client. The information is
968 a string of bytes whose contents are specific to the vendor and are
969 not specified in a standard. To see what vendor class identifier
970 clients are sending, you can write the following in your DHCP server
971 configuration file:
972
973 set vendor-string = option vendor-class-identifier;
974
975 This will result in all entries in the DHCP server lease database
976 file for clients that sent vendor-class-identifier options having a
977 set statement that looks something like this:
978
979 set vendor-string = "SUNW.Ultra-5_10";
980
981 The vendor-class-identifier option is normally used by the DHCP
982 server to determine the options that are returned in the vendor-
983 encapsulated-options option. Please see the VENDOR ENCAPSULATED
984 OPTIONS section later in this manual page for further information.
985
986 option vendor-encapsulated-options string;
987
988 The vendor-encapsulated-options option can contain either a single
989 vendor-specific value or one or more vendor-specific suboptions.
990 This option is not normally specified in the DHCP server configura‐
991 tion file - instead, a vendor class is defined for each vendor, ven‐
992 dor class suboptions are defined, values for those suboptions are
993 defined, and the DHCP server makes up a response on that basis.
994
995 Some default behaviours for well-known DHCP client vendors (cur‐
996 rently, the Microsoft Windows 2000 DHCP client) are configured auto‐
997 matically, but otherwise this must be configured manually - see the
998 VENDOR ENCAPSULATED OPTIONS section later in this manual page for
999 details.
1000
1001 option vivso string;
1002
1003 The vivso option can contain multiple separate options, one for each
1004 32-bit Enterprise ID. Each Enterprise-ID discriminated option then
1005 contains additional options whose format is defined by the vendor who
1006 holds that ID. This option is usually not configured manually, but
1007 rather is configured via intervening option definitions. Please also
1008 see the VENDOR ENCAPSULATED OPTIONS section later in this manual page
1009 for details.
1010
1011 option www-server ip-address [, ip-address... ];
1012
1013 The WWW server option specifies a list of WWW servers available to
1014 the client. Servers should be listed in order of preference.
1015
1016 option x-display-manager ip-address [, ip-address... ];
1017
1018 This option specifies a list of systems that are running the X Window
1019 System Display Manager and are available to the client. Addresses
1020 should be listed in order of preference.
1021
1023 An IETF draft, draft-ietf-dhc-agent-options-11.txt, defines a series of
1024 encapsulated options that a relay agent can add to a DHCP packet when
1025 relaying it to the DHCP server. The server can then make address allo‐
1026 cation decisions (or whatever other decisions it wants) based on these
1027 options. The server also returns these options in any replies it sends
1028 through the relay agent, so that the relay agent can use the informa‐
1029 tion in these options for delivery or accounting purposes.
1030
1031 The current draft defines two options. To reference these options in
1032 the dhcp server, specify the option space name, "agent", followed by a
1033 period, followed by the option name. It is not normally useful to
1034 define values for these options in the server, although it is permissi‐
1035 ble. These options are not supported in the client.
1036
1037 option agent.circuit-id string;
1038
1039 The circuit-id suboption encodes an agent-local identifier of the
1040 circuit from which a DHCP client-to-server packet was received. It
1041 is intended for use by agents in relaying DHCP responses back to the
1042 proper circuit. The format of this option is currently defined to be
1043 vendor-dependent, and will probably remain that way, although the
1044 current draft allows for the possibility of standardizing the format
1045 in the future.
1046
1047 option agent.remote-id string;
1048
1049 The remote-id suboption encodes information about the remote host end
1050 of a circuit. Examples of what it might contain include caller ID
1051 information, username information, remote ATM address, cable modem
1052 ID, and similar things. In principal, the meaning is not well-speci‐
1053 fied, and it should generally be assumed to be an opaque object that
1054 is administratively guaranteed to be unique to a particular remote
1055 end of a circuit.
1056
1057 option agent.DOCSIS-device-class uint32;
1058
1059 The DOCSIS-device-class suboption is intended to convey information
1060 about the host endpoint, hardware, and software, that either the host
1061 operating system or the DHCP server may not otherwise be aware of
1062 (but the relay is able to distinguish). This is implemented as a
1063 32-bit field (4 octets), each bit representing a flag describing the
1064 host in one of these ways. So far, only bit zero (being the least
1065 significant bit) is defined in RFC3256. If this bit is set to one,
1066 the host is considered a CPE Controlled Cable Modem (CCCM). All
1067 other bits are reserved.
1068
1069 option agent.link-selection ip-address;
1070
1071 The link-selection suboption is provided by relay agents to inform
1072 servers what subnet the client is actually attached to. This is use‐
1073 ful in those cases where the giaddr (where responses must be sent to
1074 the relay agent) is not on the same subnet as the client. When this
1075 option is present in a packet from a relay agent, the DHCP server
1076 will use its contents to find a subnet declared in configuration, and
1077 from here take one step further backwards to any shared-network the
1078 subnet may be defined within; the client may be given any address
1079 within that shared network, as normally appropriate.
1080
1082 The Client FQDN option, currently defined in the Internet Draft draft-
1083 ietf-dhc-fqdn-option-00.txt is not a standard yet, but is in suffi‐
1084 ciently wide use already that we have implemented it. Due to the com‐
1085 plexity of the option format, we have implemented it as a suboption
1086 space rather than a single option. In general this option should not
1087 be configured by the user - instead it should be used as part of an
1088 automatic DNS update system.
1089
1090 option fqdn.no-client-update flag;
1091
1092 When the client sends this, if it is true, it means the client will
1093 not attempt to update its A record. When sent by the server to the
1094 client, it means that the client should not update its own A record.
1095
1096 option fqdn.server-update flag;
1097
1098 When the client sends this to the server, it is requesting that the
1099 server update its A record. When sent by the server, it means that
1100 the server has updated (or is about to update) the client's A record.
1101
1102 option fqdn.encoded flag;
1103
1104 If true, this indicates that the domain name included in the option
1105 is encoded in DNS wire format, rather than as plain ASCII text. The
1106 client normally sets this to false if it doesn't support DNS wire
1107 format in the FQDN option. The server should always send back the
1108 same value that the client sent. When this value is set on the con‐
1109 figuration side, it controls the format in which the fqdn.fqdn subop‐
1110 tion is encoded.
1111
1112 option fqdn.rcode1 flag;
1113
1114 option fqdn.rcode2 flag;
1115
1116 These options specify the result of the updates of the A and PTR
1117 records, respectively, and are only sent by the DHCP server to the
1118 DHCP client. The values of these fields are those defined in the DNS
1119 protocol specification.
1120
1121 option fqdn.fqdn text;
1122
1123 Specifies the domain name that the client wishes to use. This can be
1124 a fully-qualified domain name, or a single label. If there is no
1125 trailing ´.´ character in the name, it is not fully-qualified, and
1126 the server will generally update that name in some locally-defined
1127 domain.
1128
1129 option fqdn.hostname --never set--;
1130
1131 This option should never be set, but it can be read back using the
1132 option and config-option operators in an expression, in which case it
1133 returns the first label in the fqdn.fqdn suboption - for example, if
1134 the value of fqdn.fqdn is "foo.example.com.", then fqdn.hostname will
1135 be "foo".
1136
1137 option fqdn.domainname --never set--;
1138
1139 This option should never be set, but it can be read back using the
1140 option and config-option operators in an expression, in which case it
1141 returns all labels after the first label in the fqdn.fqdn suboption -
1142 for example, if the value of fqdn.fqdn is "foo.example.com.", then
1143 fqdn.domainname will be "example.com.". If this suboption value is
1144 not set, it means that an unqualified name was sent in the fqdn
1145 option, or that no fqdn option was sent at all.
1146
1147 If you wish to use any of these suboptions, we strongly recommend that
1148 you refer to the Client FQDN option draft (or standard, when it becomes
1149 a standard) - the documentation here is sketchy and incomplete in com‐
1150 parison, and is just intended for reference by people who already
1151 understand the Client FQDN option specification.
1152
1154 RFC2242 defines a set of encapsulated options for Novell NetWare/IP
1155 clients. To use these options in the dhcp server, specify the option
1156 space name, "nwip", followed by a period, followed by the option name.
1157 The following options can be specified:
1158
1159 option nwip.nsq-broadcast flag;
1160
1161 If true, the client should use the NetWare Nearest Server Query to
1162 locate a NetWare/IP server. The behaviour of the Novell client if
1163 this suboption is false, or is not present, is not specified.
1164
1165 option nwip.preferred-dss ip-address [, ip-address... ];
1166
1167 This suboption specifies a list of up to five IP addresses, each of
1168 which should be the IP address of a NetWare Domain SAP/RIP server
1169 (DSS).
1170
1171 option nwip.nearest-nwip-server ip-address
1172 [, ip-address...];
1173
1174 This suboption specifies a list of up to five IP addresses, each of
1175 which should be the IP address of a Nearest NetWare IP server.
1176
1177 option nwip.autoretries uint8;
1178
1179 Specifies the number of times that a NetWare/IP client should attempt
1180 to communicate with a given DSS server at startup.
1181
1182 option nwip.autoretry-secs uint8;
1183
1184 Specifies the number of seconds that a Netware/IP client should wait
1185 between retries when attempting to establish communications with a
1186 DSS server at startup.
1187
1188 option nwip.nwip-1-1 uint8;
1189
1190 If true, the NetWare/IP client should support NetWare/IP version 1.1
1191 compatibility. This is only needed if the client will be contacting
1192 Netware/IP version 1.1 servers.
1193
1194 option nwip.primary-dss ip-address;
1195
1196 Specifies the IP address of the Primary Domain SAP/RIP Service server
1197 (DSS) for this NetWare/IP domain. The NetWare/IP administration
1198 utility uses this value as Primary DSS server when configuring a sec‐
1199 ondary DSS server.
1200
1202 DHCPv6 options differ from DHCPv4 options partially due to using 16-bit
1203 code and length tags, but semantically zero-length options are legal in
1204 DHCPv6, and multiple options are treated differently. Whereas in
1205 DHCPv4 multiple options would be concatenated to form one option, in
1206 DHCPv6 they are expected to be individual instantiations. Understand‐
1207 ably, many options are not "allowed" to have multiple instances in a
1208 packet - normally these are options which are digested by the DHCP pro‐
1209 tocol software, and not by users or applications.
1210
1211 option dhcp6.client-id string;
1212
1213 This option specifies the client's DUID identifier. DUIDs are simi‐
1214 lar but different from DHCPv4 client identifiers - there are docu‐
1215 mented duid types:
1216
1217 duid-llt
1218
1219 duid-en
1220
1221 duid-ll
1222
1223 This value should not be configured, but rather is provided by
1224 clients and treated as an opaque identifier key blob by servers.
1225
1226 option dhcp6.server-id string;
1227
1228 This option specifies the server's DUID identifier. One may use this
1229 option to configure an opaque binary blob for your server's identi‐
1230 fier.
1231
1232 option dhcp6.ia-na string;
1233
1234 The Identity Association for Non-temporary Addresses (ia-na) carries
1235 assigned addresses that are not temporary addresses for use by the
1236 DHCPv6 client. This option is produced by the DHCPv6 server soft‐
1237 ware, and should not be configured.
1238
1239 option dhcp6.ia-ta string;
1240
1241 The Identity Association for Temporary Addresses (ia-ta) carries tem‐
1242 porary addresses, which may change upon every renewal. There is no
1243 support for this in the current DHCPv6 software.
1244
1245 option dhcp6.ia-addr string;
1246
1247 The Identity Association Address option is encapsulated inside ia-na
1248 or ia-ta options in order to represent addresses associated with
1249 those IA's. These options are manufactured by the software, so
1250 should not be configured.
1251
1252 option dhcp6.oro uint16 [ , uint16, ... ];
1253
1254 The Option Request Option ("ORO") is the DHCPv6 equivalent of the
1255 parameter-request-list. Clients supply this option to ask servers to
1256 reply with options relevant to their needs and use. This option must
1257 not be directly configured, the request syntax in dhclient.conf (5)
1258 should be used instead.
1259
1260 option dhcp6.preference uint8;
1261
1262 The preference option informs a DHCPv6 client which server is ´pre‐
1263 ferred´ for use on a given subnet. This preference is only applied
1264 during the initial stages of configuration - once a client is bound
1265 to an IA, it will remain bound to that IA until it is no longer valid
1266 or has expired. This value may be configured on the server, and is
1267 digested by the client software.
1268
1269 option dhcp6.elapsed-time uint16;
1270
1271 The elapsed-time option is constructed by the DHCPv6 client software,
1272 and is potentially consumed by intermediaries. This option should
1273 not be configured.
1274
1275 option dhcp6.relay-msg string;
1276
1277 The relay-msg option is constructed by intervening DHCPv6 relay agent
1278 software. This option is entirely used by protocol software, and is
1279 not meant for user configuration.
1280
1281 option dhcp6.unicast ip6-address;
1282
1283 The unicast option is provided by DHCPv6 servers which are willing
1284 (or prefer) to receive Request, Renew, Decline, and Release packets
1285 from their clients via unicast. Normally, DHCPv6 clients will multi‐
1286 cast these messages. Per RFC 3315, the server will reject a unicast
1287 message received from a client unless it previously sent (or would
1288 have sent) the unicast option to that client. This option may be
1289 configured on the server at the global and shared network level.
1290 When a unicast message is received, the server will check for an
1291 applicable definition of the unicast option. If such an option is
1292 found the message will be accepted, if not it will be rejected.
1293
1294 option dhcp6.status-code status-code [ string ] ;
1295
1296 The status-code option is provided by DHCPv6 servers to inform
1297 clients of error conditions during protocol communication. This
1298 option is manufactured and digested by protocol software, and should
1299 not be configured.
1300
1301 option dhcp6.rapid-commit ;
1302
1303 The rapid-commit option is a zero-length option that clients use to
1304 indicate their desire to enter into rapid-commit with the server.
1305
1306 option dhcp6.vendor-opts string;
1307
1308 The vendor-opts option is actually an encapsulated sub-option space,
1309 in which each Vendor-specific Information Option (VSIO) is identified
1310 by a 32-bit Enterprise-ID number. The encapsulated option spaces
1311 within these options are defined by the vendors.
1312
1313 To make use of this option, the best way is to examine the section
1314 titled VENDOR ENCAPSULATED OPTIONS below, in particular the bits
1315 about the "vsio" option space.
1316
1317 option dhcp6.interface-id string;
1318
1319 The interface-id option is manufactured by relay agents, and may be
1320 used to guide configuration differentiating clients by the interface
1321 they are remotely attached to. It does not make sense to configure a
1322 value for this option, but it may make sense to inspect its contents.
1323
1324 option dhcp6.reconf-msg dhcpv6-message;
1325
1326 The reconf-msg option is manufactured by servers, and sent to clients
1327 in Reconfigure messages to inform them of what message the client
1328 should Reconfigure using. There is no support for DHCPv6 Reconfigure
1329 extensions, and this option is documented informationally only.
1330
1331 option dhcp6.reconf-accept ;
1332
1333 The reconf-accept option is included by DHCPv6 clients that support
1334 the Reconfigure extensions, advertising that they will respond if the
1335 server were to ask them to Reconfigure. There is no support for
1336 DHCPv6 Reconfigure extensions, and this option is documented informa‐
1337 tionally only.
1338
1339 option dhcp6.sip-servers-names domain-list;
1340
1341 The sip-servers-names option allows SIP clients to locate a local SIP
1342 server that is to be used for all outbound SIP requests, a so-
1343 called"outbound proxy server." If you wish to use manually entered
1344 IPv6 addresses instead, please see the sip-servers-addresses option
1345 below.
1346
1347 option dhcp6.sip-servers-addresses ip6-address [, ip6-address ... ] ;
1348
1349 The sip-servers-addresses option allows SIP clients to locate a local
1350 SIP server that is to be used for all outbound SIP requests, a so-
1351 called "outbound proxy servers." If you wish to use domain names
1352 rather than IPv6 addresses, please see the sip-servers-names option
1353 above.
1354
1355 option dhcp6.name-servers ip6-address [, ip6-address ... ] ;
1356
1357 The name-servers option instructs clients about locally available
1358 recursive DNS servers. It is easiest to describe this as the "name‐
1359 server" line in /etc/resolv.conf.
1360
1361 option dhcp6.domain-search domain-list;
1362
1363 The domain-search option specifies the client's domain search path to
1364 be applied to recursive DNS queries. It is easiest to describe this
1365 as the "search" line in /etc/resolv.conf.
1366
1367 option dhcp6.ia-pd string;
1368
1369 The ia-pd option is manufactured by clients and servers to create a
1370 Prefix Delegation binding - to delegate an IPv6 prefix to the client.
1371 It is not directly edited in dhcpd.conf(5) or dhclient.conf(5), but
1372 rather is manufactured and consumed by the software.
1373
1374 option dhcp6.ia-prefix string;
1375
1376 The ia-prefix option is placed inside ia-pd options in order to iden‐
1377 tify the prefix(es) allocated to the client. It is not directly
1378 edited in dhcpd.conf(5) or dhclient.conf(5), but rather is manufac‐
1379 tured and consumed by the software.
1380
1381 option dhcp6.nis-servers ip6-address [, ip6-address ... ] ;
1382
1383 The nis-servers option identifies, in order, NIS servers available to
1384 the client.
1385
1386 option dhcp6.nisp-servers ip6-address [, ip6-address ... ] ;
1387
1388 The nisp-servers option identifies, in order, NIS+ servers available
1389 to the client.
1390
1391 option nis-domain-name domain-list;
1392
1393 The nis-domain-name option specifies the NIS domain name the client
1394 is expected to use, and is related to the nis-servers option.
1395
1396 option dhcp6.nis-domain-name domain-name;
1397
1398 The dhcp6.nis-domain-name option specifies NIS domain name the client
1399 is expected to use, and is related to dhcp6.nis-servers option.
1400
1401 option nisp-domain-name domain-list;
1402
1403 The nisp-domain-name option specifies the NIS+ domain name the client
1404 is expected to use, and is related to the nisp-servers option.
1405
1406 option dhcp6.nisp-domain-name domain-name;
1407
1408 The dhcp6.nis-domain-name option specifies NIS+ domain name the
1409 client is expected to use, and is related to dhcp6.nisp-servers
1410 option.
1411
1412 option dhcp6.sntp-servers ip6-address [, ip6-address ... ] ;
1413
1414 The sntp-servers option specifies a list of local SNTP servers avail‐
1415 able for the client to synchronize their clocks.
1416
1417 option dhcp6.info-refresh-time uint32;
1418
1419 The info-refresh-time option gives DHCPv6 clients using Information-
1420 request messages a hint as to how long they should between refreshing
1421 the information they were given. Note that this option will only be
1422 delivered to the client, and be likely to affect the client's behav‐
1423 iour, if the client requested the option.
1424
1425 option dhcp6.bcms-server-d domain-list;
1426
1427 The bcms-server-d option contains the domain names of local BCMS
1428 (Broadcast and Multicast Control Services) controllers which the
1429 client may use.
1430
1431 option dhcp6.bcms-server-a ip6-address [, ip6-address ... ] ;
1432
1433 The bcms-server-a option contains the IPv6 addresses of local BCMS
1434 (Broadcast and Multicast Control Services) controllers which the
1435 client may use.
1436
1437 option dhcp6.geoconf-civic string;
1438
1439 A string to hold the geoconf civic structure.
1440
1441 This option is included based on RFC 4776.
1442
1443 option dhcp6.remote-id string;
1444
1445 The remote-id option is constructed by relay agents, to inform the
1446 server of details pertaining to what the relay knows about the client
1447 (such as what port it is attached to, and so forth). The contents of
1448 this option have some vendor-specific structure (similar to VSIO),
1449 but we have chosen to treat this option as an opaque field.
1450
1451 option dhcp6.subscriber-id string;
1452
1453 The subscriber-id option is an opaque field provided by the relay
1454 agent, which provides additional information about the subscriber in
1455 question. The exact contents of this option depend upon the vendor
1456 and/or the operator's configuration of the remote device, and as such
1457 is an opaque field.
1458
1459 option dhcp6.fqdn string;
1460
1461 The fqdn option is normally constructed by the client or server, and
1462 negotiates the client's Fully Qualified Domain Name, as well as which
1463 party is responsible for Dynamic DNS Updates. See the section on the
1464 Client FQDN SubOptions for full details (the DHCPv4 and DHCPv6 FQDN
1465 options use the same "fqdn." encapsulated space, so are in all ways
1466 identical).
1467
1468 option dhcp6.pana-agent ip6-address [, ip6-address ... ] ;
1469
1470 A set of IPv6 addresses of a PAA for the client to use. The
1471 addresses are listed in preferred order.
1472
1473 This option is included based on RFC 5192.
1474
1475 option dhcp6.new-posix-timezone text;
1476
1477 This option specifies a string suitable for the TZ variable.
1478
1479 This option is included based on RFC 4833.
1480
1481 option dhcp6.new-tzdb-timezone text;
1482
1483 This option specifies a name of a zone entry in the TZ database.
1484
1485 This option is included based on RFC 4833.
1486
1487 option dhcp6.ero uint16 [, uint16 ... ] ;
1488
1489 A list of the options requested by the relay agent.
1490
1491 This option is included based on RFC 4994.
1492
1493 option dhcp6.lq-query string;
1494
1495 The lq-query option is used internally for lease query.
1496
1497 option dhcp6.client-data string;
1498
1499 The client-data option is used internally for lease query.
1500
1501 option dhcp6.clt-time uint32;
1502
1503 The clt-time option is used internally for lease query.
1504
1505 option dhcp6.lq-relay-data ip6-address string;
1506
1507 The lq-relay-data option is used internally for lease query.
1508
1509 option dhcp6.lq-client-link ip6-address [, ip6-address ... ] ;
1510
1511 The lq-client-link option is used internally for lease query.
1512
1513 option dhcp6.v6-lost domain-name;
1514
1515 The domain name of the LoST server for the client to use.
1516
1517 This option is included based on RFC 5223.
1518
1519 option dhcp6.capwap-ac-v6 ip6-address [, ip6-address ... ] ;
1520
1521 A list of IPv6 addresses of CAPWAP ACs that the WTP may use. The
1522 addresses are listed in preference order.
1523
1524 This option is included based on RFC 5417.
1525
1526 option dhcp6.relay-id string;
1527
1528 The DUID for the relay agent.
1529
1530 This option is included based on RFC 5460.
1531
1532 option dhcp6.v6-access-domain domain-name;
1533
1534 The domain name associated with the access network for use with LIS
1535 Discovery.
1536
1537 This option is included based on RFC5986.
1538
1539 option dhcp6.sip-ua-cs-list domain-list;
1540
1541 The list of domain names in the SIP User Agent Configuration Service
1542 Domains.
1543
1544 This option is included based on RFC 6011.
1545
1546 option dhcp6.bootfile-url text;
1547
1548 The URL for a boot file.
1549
1550 This option is included based on RFC 5970.
1551
1552 option dhcp6.bootfile-param string;
1553
1554 A string for the parameters to the bootfile. See RFC 5970 for more
1555 description of the layout of the parameters within the string.
1556
1557 This option is included based on RFC 5970.
1558
1559 option dhcp6.client-arch-type uint16 [, uint16 ... ] ;
1560
1561 A list of one or more architecture types described as 16 bit values.
1562
1563 This option is included based on RFC 5970.
1564
1565 option dhcp6.nii uint8 uint8 uint8;
1566
1567 The client network interface identitier option supplies information
1568 about a client's level of UNDI support. The values are, in order,
1569 the type, the major value and the minor value.
1570
1571 This option is included based on RFC5970.
1572
1573 option dhcp6.aftr-name domain-name;
1574
1575 A domain name of the AFTR tunnel endpoint.
1576
1577 This option is included based on RFC 6334.
1578
1579 option dhcp6.erp-local-domain-name domain-name;
1580
1581 A domain name for the ERP domain.
1582
1583 This option is included based on RFC 6440.
1584
1585 option dhcp6.rdnss-selection ip6-address uint8 domain-name;
1586
1587 RDNSS information consists of an IPv6 address of RDNSS, an 8 bit
1588 flags field and a domain-list of domains for which the RDNSS has spe‐
1589 cial knowledge.
1590
1591 This option is included based on RFC 6731.
1592
1593 option dhcp6.client-linklayer-addr string;
1594
1595 A client link-layer address. The first two bytes must be the type of
1596 the link-layer followed by the address itself.
1597
1598 This option is included based on RFC 6939.
1599
1600 option dhcp6.link-address ip6-address;
1601
1602 An IPv6 address used by a relay agent to indicate to the server the
1603 link on which the client is located.
1604
1605 This option is included based on RFC 6977.
1606
1607 option dhcp6.solmax-rt uint32;
1608
1609 A value to override the default for SOL_MAX_RT. This is a 32 bit
1610 value.
1611
1612 This option is included based on RFC 7083.
1613
1614 option dhcp6.inf-max-rt uint32;
1615
1616 A value to override the default for INF_MAX_RT. This is a 32 bit
1617 value.
1618
1619 This option is included based on RFC 7083.
1620
1622 v6relay (relay-number, option) This option allows access to an option
1623 that has been added to a packet by a relay agent. Relay-number value
1624 selects the relay to examine and option is the option to find. In
1625 DHCPv6 each relay encapsulates the entire previous message into an
1626 option, adds its own options (if any) and sends the result onwards.
1627 The RFC specifies a limit of 32 hops. A relay-number of 0 is a no-op
1628 and means don't look at the relays. 1 is the relay that is closest to
1629 the client, 2 would be the next in from the client and so on. Any
1630 value greater than the max number of hops is which is closest to the
1631 server independent of number. To use this option in a class statement
1632 you would have something like this:
1633
1634 match if v6relay(1, option dhcp6.subscriber-id) = "client_1";
1635
1637 The Internet Systems Consortium DHCP client and server provide the
1638 capability to define new options. Each DHCP option has a name, a code,
1639 and a structure. The name is used by you to refer to the option. The
1640 code is a number, used by the DHCP server and client to refer to an
1641 option. The structure describes what the contents of an option looks
1642 like.
1643
1644 To define a new option, you need to choose a name for it that is not in
1645 use for some other option - for example, you can't use "host-name"
1646 because the DHCP protocol already defines a host-name option, which is
1647 documented earlier in this manual page. If an option name doesn't
1648 appear in this manual page, you can use it, but it's probably a good
1649 idea to put some kind of unique string at the beginning so you can be
1650 sure that future options don't take your name. For example, you might
1651 define an option, "local-host-name", feeling some confidence that no
1652 official DHCP option name will ever start with "local".
1653
1654 Once you have chosen a name, you must choose a code. All codes between
1655 224 and 254 are reserved as ´site-local´ DHCP options, so you can pick
1656 any one of these for your site (not for your product/application). In
1657 RFC3942, site-local space was moved from starting at 128 to starting at
1658 224. In practice, some vendors have interpreted the protocol rather
1659 loosely and have used option code values greater than 128 themselves.
1660 There's no real way to avoid this problem, and it was thought to be
1661 unlikely to cause too much trouble in practice. If you come across a
1662 vendor-documented option code in either the new or old site-local spa‐
1663 ces, please contact your vendor and inform them about rfc3942.
1664
1665 The structure of an option is simply the format in which the option
1666 data appears. The ISC DHCP server currently supports a few simple
1667 types, like integers, booleans, strings and IP addresses, and it also
1668 supports the ability to define arrays of single types or arrays of
1669 fixed sequences of types.
1670
1671 New options are declared as follows:
1672
1673 option new-name code new-code = definition ;
1674
1675 The values of new-name and new-code should be the name you have chosen
1676 for the new option and the code you have chosen. The definition should
1677 be the definition of the structure of the option.
1678
1679 The following simple option type definitions are supported:
1680
1681 BOOLEAN
1682
1683 option new-name code new-code = boolean ;
1684
1685 An option of type boolean is a flag with a value of either on or off
1686 (or true or false). So an example use of the boolean type would be:
1687
1688 option use-zephyr code 180 = boolean;
1689 option use-zephyr on;
1690
1691 INTEGER
1692
1693 option new-name code new-code = sign integer width ;
1694
1695 The sign token should either be blank, unsigned or signed. The width
1696 can be either 8, 16 or 32, and refers to the number of bits in the
1697 integer. So for example, the following two lines show a definition of
1698 the sql-connection-max option and its use:
1699
1700 option sql-connection-max code 192 = unsigned integer 16;
1701 option sql-connection-max 1536;
1702
1703 IP-ADDRESS
1704
1705 option new-name code new-code = ip-address ;
1706
1707 An option whose structure is an IP address can be expressed either as a
1708 domain name or as a dotted quad. So the following is an example use of
1709 the ip-address type:
1710
1711 option sql-server-address code 193 = ip-address;
1712 option sql-server-address sql.example.com;
1713
1714 IP6-ADDRESS
1715
1716 option new-name code new-code = ip6-address ;
1717
1718 An option whose structure is an IPv6 address must be expressed as a
1719 valid IPv6 address. The following is an example use of the ip6-address
1720 type:
1721
1722 option dhcp6.some-server code 1234 = array of ip6-address;
1723 option dhcp6.some-server 3ffe:bbbb:aaaa:aaaa::1, 3ffe:bbbb:aaaa:aaaa::2;
1724
1725
1726 TEXT
1727
1728 option new-name code new-code = text ;
1729
1730 An option whose type is text will encode an ASCII text string. For
1731 example:
1732
1733 option sql-default-connection-name code 194 = text;
1734 option sql-default-connection-name "PRODZA";
1735
1736
1737 DATA STRING
1738
1739 option new-name code new-code = string ;
1740
1741 An option whose type is a data string is essentially just a collection
1742 of bytes, and can be specified either as quoted text, like the text
1743 type, or as a list of hexadecimal contents separated by colons whose
1744 values must be between 0 and FF. For example:
1745
1746 option sql-identification-token code 195 = string;
1747 option sql-identification-token 17:23:19:a6:42:ea:99:7c:22;
1748
1749
1750 DOMAIN-LIST
1751
1752 option new-name code new-code = domain-list [compressed] ;
1753
1754 An option whose type is domain-list is an RFC1035 formatted (on the
1755 wire, "DNS Format") list of domain names, separated by root labels.
1756 The optional compressed keyword indicates if the option should be com‐
1757 pressed relative to the start of the option contents (not the packet
1758 contents).
1759
1760 When in doubt, omit the compressed keyword. When the software receives
1761 an option that is compressed and the compressed keyword is omitted, it
1762 will still decompress the option (relative to the option contents
1763 field). The keyword only controls whether or not transmitted packets
1764 are compressed.
1765
1766 Note that when domain-list formatted options are output as environment
1767 variables to dhclient-script(8), the standard DNS -escape mechanism is
1768 used: they are decimal. This is appropriate for direct use in eg
1769 /etc/resolv.conf.
1770
1771
1772 ENCAPSULATION
1773
1774 option new-name code new-code = encapsulate identifier ;
1775
1776 An option whose type is encapsulate will encapsulate the contents of
1777 the option space specified in identifier. Examples of encapsulated
1778 options in the DHCP protocol as it currently exists include the vendor-
1779 encapsulated-options option, the netware-suboptions option and the
1780 relay-agent-information option.
1781
1782 option space local;
1783 option local.demo code 1 = text;
1784 option local-encapsulation code 197 = encapsulate local;
1785 option local.demo "demo";
1786
1787
1788 ARRAYS
1789
1790 Options can contain arrays of any of the above types except for the
1791 text and data string types, which aren't currently supported in arrays.
1792 An example of an array definition is as follows:
1793
1794 option kerberos-servers code 200 = array of ip-address;
1795 option kerberos-servers 10.20.10.1, 10.20.11.1;
1796
1797 RECORDS
1798
1799 Options can also contain data structures consisting of a sequence of
1800 data types, which is sometimes called a record type. For example:
1801
1802 option contrived-001 code 201 = { boolean, integer 32, text };
1803 option contrived-001 on 1772 "contrivance";
1804
1805 It's also possible to have options that are arrays of records, for
1806 example:
1807
1808 option new-static-routes code 201 = array of {
1809 ip-address, ip-address, ip-address, integer 8 };
1810 option static-routes
1811 10.0.0.0 255.255.255.0 net-0-rtr.example.com 1,
1812 10.0.1.0 255.255.255.0 net-1-rtr.example.com 1,
1813 10.2.0.0 255.255.224.0 net-2-0-rtr.example.com 3;
1814
1815
1817 The DHCP protocol defines the vendor-encapsulated-options option, which
1818 allows vendors to define their own options that will be sent encapsu‐
1819 lated in a standard DHCP option. It also defines the Vendor Identified
1820 Vendor Sub Options option ("VIVSO"), and the DHCPv6 protocol defines
1821 the Vendor-specific Information Option ("VSIO"). The format of all of
1822 these options is usually internally a string of options, similarly to
1823 other normal DHCP options. The VIVSO and VSIO options differ in that
1824 they contain options that correspond to vendor Enterprise-ID numbers
1825 (assigned by IANA), which then contain options according to each Ven‐
1826 dor's specifications. You will need to refer to your vendor's documen‐
1827 tation in order to form options to their specification.
1828
1829 The value of these options can be set in one of two ways. The first
1830 way is to simply specify the data directly, using a text string or a
1831 colon-separated list of hexadecimal values. For help in forming these
1832 strings, please refer to RFC2132 for the DHCPv4 Vendor Specific Infor‐
1833 mation Option, RFC3925 for the DHCPv4 Vendor Identified Vendor Sub
1834 Options, or RFC3315 for the DHCPv6 Vendor-specific Information Option.
1835 For example:
1836
1837 option vendor-encapsulated-options
1838 2:4:
1839 AC:11:41:1:
1840 3:12:
1841 73:75:6e:64:68:63:70:2d:73:65:72:76:65:72:31:37:2d:31:
1842 4:12:
1843 2f:65:78:70:6f:72:74:2f:72:6f:6f:74:2f:69:38:36:70:63;
1844 option vivso
1845 00:00:09:bf:0E:
1846 01:0c:
1847 48:65:6c:6c:6f:20:77:6f:72:6c:64:21;
1848 option dhcp6.vendor-opts
1849 00:00:09:bf:
1850 00:01:00:0c:
1851 48:65:6c:6c:6f:20:77:6f:72:6c:64:21;
1852
1853 The second way of setting the value of these options is to have the
1854 DHCP server generate a vendor-specific option buffer. To do this, you
1855 must do four things: define an option space, define some options in
1856 that option space, provide values for them, and specify that that
1857 option space should be used to generate the relevant option.
1858
1859 To define a new option space in which vendor options can be stored, use
1860 the option space statement:
1861
1862 option space name [ [ code width number ] [ length width number ] [
1863 hash size number ] ] ;
1864
1865 Where the numbers following code width, length width, and hash size
1866 respectively identify the number of bytes used to describe option
1867 codes, option lengths, and the size in buckets of the hash tables to
1868 hold options in this space (most DHCPv4 option spaces use 1 byte codes
1869 and lengths, which is the default, whereas most DHCPv6 option spaces
1870 use 2 byte codes and lengths).
1871
1872 The code and length widths are used in DHCP protocol - you must config‐
1873 ure these numbers to match the applicable option space you are config‐
1874 uring. They each default to 1. Valid values for code widths are 1, 2
1875 or 4. Valid values for length widths are 0, 1 or 2. Most DHCPv4
1876 option spaces use 1 byte codes and lengths, which is the default,
1877 whereas most DHCPv6 option spaces use 2 byte codes and lengths. A
1878 zero-byte length produces options similar to the DHCPv6 Vendor-specific
1879 Information Option - but not their contents!
1880
1881 The hash size defaults depend upon the code width selected, and may be
1882 254 or 1009. Valid values range between 1 and 65535. Note that the
1883 higher you configure this value, the more memory will be used. It is
1884 considered good practice to configure a value that is slightly larger
1885 than the estimated number of options you plan to configure within the
1886 space. Previous versions of ISC DHCP (up to and including DHCP 3.0.*),
1887 this value was fixed at 9973.
1888
1889 The name can then be used in option definitions, as described earlier
1890 in this document. For example:
1891
1892 option space SUNW code width 1 length width 1 hash size 3;
1893 option SUNW.server-address code 2 = ip-address;
1894 option SUNW.server-name code 3 = text;
1895 option SUNW.root-path code 4 = text;
1896
1897 option space ISC code width 1 length width 1 hash size 3;
1898 option ISC.sample code 1 = text;
1899 option vendor.ISC code 2495 = encapsulate vivso-sample;
1900 option vendor-class.ISC code 2495 = text;
1901
1902 option ISC.sample "configuration text here";
1903 option vendor-class.ISC "vendor class here";
1904
1905 option space docsis code width 2 length width 2 hash size 17;
1906 option docsis.tftp-servers code 32 = array of ip6-address;
1907 option docsis.cablelabs-configuration-file code 33 = text;
1908 option docsis.cablelabs-syslog-servers code 34 = array of ip6-address;
1909 option docsis.device-id code 36 = string;
1910 option docsis.time-servers code 37 = array of ip6-address;
1911 option docsis.time-offset code 38 = signed integer 32;
1912 option vsio.docsis code 4491 = encapsulate docsis;
1913
1914 Once you have defined an option space and the format of some options,
1915 you can set up scopes that define values for those options, and you can
1916 say when to use them. For example, suppose you want to handle two dif‐
1917 ferent classes of clients. Using the option space definition shown in
1918 the previous example, you can send different option values to different
1919 clients based on the vendor-class-identifier option that the clients
1920 send, as follows:
1921
1922 class "vendor-classes" {
1923 match option vendor-class-identifier;
1924 }
1925
1926 subclass "vendor-classes" "SUNW.Ultra-5_10" {
1927 vendor-option-space SUNW;
1928 option SUNW.root-path "/export/root/sparc";
1929 }
1930
1931 subclass "vendor-classes" "SUNW.i86pc" {
1932 vendor-option-space SUNW;
1933 option SUNW.root-path "/export/root/i86pc";
1934 }
1935
1936 option SUNW.server-address 172.17.65.1;
1937 option SUNW.server-name "sundhcp-server17-1";
1938
1939 option vivso-sample.sample "Hello world!";
1940
1941 option docsis.tftp-servers ::1;
1942
1943
1944 As you can see in the preceding example, regular scoping rules apply,
1945 so you can define values that are global in the global scope, and only
1946 define values that are specific to a particular class in the local
1947 scope. The vendor-option-space declaration tells the DHCP server to
1948 use options in the SUNW option space to construct the DHCPv4 vendor-
1949 encapsulated-options option. This is a limitation of that option - the
1950 DHCPv4 VIVSO and the DHCPv6 VSIO options can have multiple vendor defi‐
1951 nitions all at once (even transmitted to the same client), so it is not
1952 necessary to configure this.
1953
1955 dhcpd.conf(5), dhcpd.leases(5), dhclient.conf(5), dhcp-eval(5),
1956 dhcpd(8), dhclient(8), RFC2132, RFC2131, RFC3046, RFC3315.
1957
1959 Information about Internet Systems Consortium can be found at
1960 https://www.isc.org.
1961
1962
1963
1964 dhcp-options(5)