Add more helpers for handling profile/service support
[platform/upstream/connman.git] / doc / rfc2132.txt
1
2
3
4
5
6
7 Network Working Group                                       S. Alexander
8 Request for Comments: 2132                        Silicon Graphics, Inc.
9 Obsoletes: 1533                                                 R. Droms
10 Category: Standards Track                            Bucknell University
11                                                               March 1997
12
13                 DHCP Options and BOOTP Vendor Extensions
14
15 Status of this memo
16
17    This document specifies an Internet standards track protocol for the
18    Internet community, and requests discussion and suggestions for
19    improvements.  Please refer to the current edition of the "Internet
20    Official Protocol Standards" (STD 1) for the standardization state
21    and status of this protocol.  Distribution of this memo is unlimited.
22
23 Abstract
24
25    The Dynamic Host Configuration Protocol (DHCP) [1] provides a
26    framework for passing configuration information to hosts on a TCP/IP
27    network.  Configuration parameters and other control information are
28    carried in tagged data items that are stored in the 'options' field
29    of the DHCP message.  The data items themselves are also called
30    "options."
31
32    This document specifies the current set of DHCP options.  Future
33    options will be specified in separate RFCs.  The current list of
34    valid options is also available in ftp://ftp.isi.edu/in-
35    notes/iana/assignments [22].
36
37    All of the vendor information extensions defined in RFC 1497 [2] may
38    be used as DHCP options.  The definitions given in RFC 1497 are
39    included in this document, which supersedes RFC 1497.  All of the
40    DHCP options defined in this document, except for those specific to
41    DHCP as defined in section 9, may be used as BOOTP vendor information
42    extensions.
43
44 Table of Contents
45
46     1.  Introduction ..............................................  2
47     2.  BOOTP Extension/DHCP Option Field Format ..................  4
48     3.  RFC 1497 Vendor Extensions ................................  5
49     4.  IP Layer Parameters per Host .............................. 11
50     5.  IP Layer Parameters per Interface ........................  13
51     6.  Link Layer Parameters per Interface ....................... 16
52     7.  TCP Parameters ............................................ 17
53     8.  Application and Service Parameters ........................ 18
54     9.  DHCP Extensions ........................................... 25
55
56
57
58 Alexander & Droms           Standards Track                     [Page 1]
59 \f
60 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
61
62
63    10.  Defining new extensions ................................... 31
64    11.  Acknowledgements .......................................... 31
65    12.  References ................................................ 32
66    13.  Security Considerations ................................... 33
67    14.  Authors' Addresses ........................................ 34
68
69 1. Introduction
70
71    This document specifies options for use with both the Dynamic Host
72    Configuration Protocol and the Bootstrap Protocol.
73
74    The full description of DHCP packet formats may be found in the DHCP
75    specification document [1], and the full description of BOOTP packet
76    formats may be found in the BOOTP specification document [3].  This
77    document defines the format of information in the last field of DHCP
78    packets ('options') and of BOOTP packets ('vend').  The remainder of
79    this section defines a generalized use of this area for giving
80    information useful to a wide class of machines, operating systems and
81    configurations. Sites with a single DHCP or BOOTP server that is
82    shared among heterogeneous clients may choose to define other, site-
83    specific formats for the use of the 'options' field.
84
85    Section 2 of this memo describes the formats of DHCP options and
86    BOOTP vendor extensions.  Section 3 describes options defined in
87    previous documents for use with BOOTP (all may also be used with
88    DHCP).  Sections 4-8 define new options intended for use with both
89    DHCP and BOOTP. Section 9 defines options used only in DHCP.
90
91    References further describing most of the options defined in sections
92    2-6 can be found in section 12.  The use of the options defined in
93    section 9 is described in the DHCP specification [1].
94
95    Information on registering new options is contained in section 10.
96
97    This document updates the definition of DHCP/BOOTP options that
98    appears in RFC1533.  The classing mechanism has been extended to
99    include vendor classes as described in section 8.4 and 9.13.  The new
100    procedure for defining new DHCP/BOOTP options in described in section
101    10.  Several new options, including NIS+ domain and servers, Mobile
102    IP home agent, SMTP server, TFTP server and Bootfile server, have
103    been added.  Text giving definitions used throughout the document has
104    been added in section 1.1.  Text emphasizing the need for uniqueness
105    of client-identifiers has been added to section 9.14.
106
107
108
109
110
111
112
113
114 Alexander & Droms           Standards Track                     [Page 2]
115 \f
116 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
117
118
119 1.1 Requirements
120
121    Throughout this document, the words that are used to define the
122    significance of particular requirements are capitalized.  These words
123    are:
124
125       o "MUST"
126
127        This word or the adjective "REQUIRED" means that the item is an
128        absolute requirement of this specification.
129
130       o "MUST NOT"
131
132        This phrase means that the item is an absolute prohibition of
133        this specification.
134
135       o "SHOULD"
136
137        This word or the adjective "RECOMMENDED" means that there may
138        exist valid reasons in particular circumstances to ignore this
139        item, but the full implications should be understood and the case
140        carefully weighed before choosing a different course.
141
142       o "SHOULD NOT"
143
144        This phrase means that there may exist valid reasons in
145        particular circumstances when the listed behavior is acceptable
146        or even useful, but the full implications should be understood
147        and the case carefully weighed before implementing any behavior
148        described with this label.
149
150       o "MAY"
151
152        This word or the adjective "OPTIONAL" means that this item is
153        truly optional.  One vendor may choose to include the item
154        because a particular marketplace requires it or because it
155        enhances the product, for example; another vendor may omit the
156        same item.
157
158 1.2 Terminology
159
160    This document uses the following terms:
161
162       o "DHCP client"
163
164        A DHCP client or "client" is an Internet host using DHCP to
165        obtain configuration parameters such as a network address.
166
167
168
169
170 Alexander & Droms           Standards Track                     [Page 3]
171 \f
172 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
173
174
175       o "DHCP server"
176
177        A DHCP server of "server"is an Internet host that returns
178        configuration parameters to DHCP clients.
179
180       o "binding"
181
182        A binding is a collection of configuration parameters, including
183        at least an IP address, associated with or "bound to" a DHCP
184        client.  Bindings are managed by DHCP servers.
185
186 2. BOOTP Extension/DHCP Option Field Format
187
188
189    DHCP options have the same format as the BOOTP 'vendor extensions'
190    defined in RFC 1497 [2].  Options may be fixed length or variable
191    length.  All options begin with a tag octet, which uniquely
192    identifies the option.  Fixed-length options without data consist of
193    only a tag octet.  Only options 0 and 255 are fixed length.  All
194    other options are variable-length with a length octet following the
195    tag octet.  The value of the length octet does not include the two
196    octets specifying the tag and length.  The length octet is followed
197    by "length" octets of data.  Options containing NVT ASCII data SHOULD
198    NOT include a trailing NULL; however, the receiver of such options
199    MUST be prepared to delete trailing nulls if they exist.  The
200    receiver MUST NOT require that a trailing null be included in the
201    data.  In the case of some variable-length options the length field
202    is a constant but must still be specified.
203
204    Any options defined subsequent to this document MUST contain a length
205    octet even if the length is fixed or zero.
206
207    All multi-octet quantities are in network byte-order.
208
209    When used with BOOTP, the first four octets of the vendor information
210    field have been assigned to the "magic cookie" (as suggested in RFC
211    951).  This field identifies the mode in which the succeeding data is
212    to be interpreted.  The value of the magic cookie is the 4 octet
213    dotted decimal 99.130.83.99 (or hexadecimal number 63.82.53.63) in
214    network byte order.
215
216    All of the "vendor extensions" defined in RFC 1497 are also DHCP
217    options.
218
219    Option codes 128 to 254 (decimal) are reserved for site-specific
220    options.
221
222
223
224
225
226 Alexander & Droms           Standards Track                     [Page 4]
227 \f
228 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
229
230
231    Except for the options in section 9, all options may be used with
232    either DHCP or BOOTP.
233
234    Many of these options have their default values specified in other
235    documents.  In particular, RFC 1122 [4] specifies default values for
236    most IP and TCP configuration parameters.
237
238    Many options supply one or more 32-bit IP address.  Use of IP
239    addresses rather than fully-qualified Domain Names (FQDNs) may make
240    future renumbering of IP hosts more difficult.  Use of these
241    addresses is discouraged at sites that may require renumbering.
242
243 3. RFC 1497 Vendor Extensions
244
245    This section lists the vendor extensions as defined in RFC 1497.
246    They are defined here for completeness.
247
248 3.1. Pad Option
249
250    The pad option can be used to cause subsequent fields to align on
251    word boundaries.
252
253    The code for the pad option is 0, and its length is 1 octet.
254
255     Code
256    +-----+
257    |  0  |
258    +-----+
259
260 3.2. End Option
261
262    The end option marks the end of valid information in the vendor
263    field.  Subsequent octets should be filled with pad options.
264
265    The code for the end option is 255, and its length is 1 octet.
266
267     Code
268    +-----+
269    | 255 |
270    +-----+
271
272 3.3. Subnet Mask
273
274    The subnet mask option specifies the client's subnet mask as per RFC
275    950 [5].
276
277    If both the subnet mask and the router option are specified in a DHCP
278    reply, the subnet mask option MUST be first.
279
280
281
282 Alexander & Droms           Standards Track                     [Page 5]
283 \f
284 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
285
286
287    The code for the subnet mask option is 1, and its length is 4 octets.
288
289     Code   Len        Subnet Mask
290    +-----+-----+-----+-----+-----+-----+
291    |  1  |  4  |  m1 |  m2 |  m3 |  m4 |
292    +-----+-----+-----+-----+-----+-----+
293
294 3.4. Time Offset
295
296    The time offset field specifies the offset of the client's subnet in
297    seconds from Coordinated Universal Time (UTC).  The offset is
298    expressed as a two's complement 32-bit integer.  A positive offset
299    indicates a location east of the zero meridian and a negative offset
300    indicates a location west of the zero meridian.
301
302    The code for the time offset option is 2, and its length is 4 octets.
303
304     Code   Len        Time Offset
305    +-----+-----+-----+-----+-----+-----+
306    |  2  |  4  |  n1 |  n2 |  n3 |  n4 |
307    +-----+-----+-----+-----+-----+-----+
308
309 3.5. Router Option
310
311    The router option specifies a list of IP addresses for routers on the
312    client's subnet.  Routers SHOULD be listed in order of preference.
313
314    The code for the router option is 3.  The minimum length for the
315    router option is 4 octets, and the length MUST always be a multiple
316    of 4.
317
318     Code   Len         Address 1               Address 2
319    +-----+-----+-----+-----+-----+-----+-----+-----+--
320    |  3  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
321    +-----+-----+-----+-----+-----+-----+-----+-----+--
322
323 3.6. Time Server Option
324
325    The time server option specifies a list of RFC 868 [6] time servers
326    available to the client.  Servers SHOULD be listed in order of
327    preference.
328
329    The code for the time server option is 4.  The minimum length for
330    this option is 4 octets, and the length MUST always be a multiple of
331    4.
332
333
334
335
336
337
338 Alexander & Droms           Standards Track                     [Page 6]
339 \f
340 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
341
342
343     Code   Len         Address 1               Address 2
344    +-----+-----+-----+-----+-----+-----+-----+-----+--
345    |  4  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
346    +-----+-----+-----+-----+-----+-----+-----+-----+--
347
348 3.7. Name Server Option
349
350    The name server option specifies a list of IEN 116 [7] name servers
351    available to the client.  Servers SHOULD be listed in order of
352    preference.
353
354    The code for the name server option is 5.  The minimum length for
355    this option is 4 octets, and the length MUST always be a multiple of
356    4.
357
358     Code   Len         Address 1               Address 2
359    +-----+-----+-----+-----+-----+-----+-----+-----+--
360    |  5  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
361    +-----+-----+-----+-----+-----+-----+-----+-----+--
362
363 3.8. Domain Name Server Option
364
365    The domain name server option specifies a list of Domain Name System
366    (STD 13, RFC 1035 [8]) name servers available to the client.  Servers
367    SHOULD be listed in order of preference.
368
369    The code for the domain name server option is 6.  The minimum length
370    for this option is 4 octets, and the length MUST always be a multiple
371    of 4.
372
373     Code   Len         Address 1               Address 2
374    +-----+-----+-----+-----+-----+-----+-----+-----+--
375    |  6  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
376    +-----+-----+-----+-----+-----+-----+-----+-----+--
377
378 3.9. Log Server Option
379
380    The log server option specifies a list of MIT-LCS UDP log servers
381    available to the client.  Servers SHOULD be listed in order of
382    preference.
383
384    The code for the log server option is 7.  The minimum length for this
385    option is 4 octets, and the length MUST always be a multiple of 4.
386
387     Code   Len         Address 1               Address 2
388    +-----+-----+-----+-----+-----+-----+-----+-----+--
389    |  7  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
390    +-----+-----+-----+-----+-----+-----+-----+-----+--
391
392
393
394 Alexander & Droms           Standards Track                     [Page 7]
395 \f
396 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
397
398
399 3.10. Cookie Server Option
400
401    The cookie server option specifies a list of RFC 865 [9] cookie
402    servers available to the client.  Servers SHOULD be listed in order
403    of preference.
404
405    The code for the log server option is 8.  The minimum length for this
406    option is 4 octets, and the length MUST always be a multiple of 4.
407
408     Code   Len         Address 1               Address 2
409    +-----+-----+-----+-----+-----+-----+-----+-----+--
410    |  8  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
411    +-----+-----+-----+-----+-----+-----+-----+-----+--
412
413 3.11. LPR Server Option
414
415    The LPR server option specifies a list of RFC 1179 [10] line printer
416    servers available to the client.  Servers SHOULD be listed in order
417    of preference.
418
419    The code for the LPR server option is 9.  The minimum length for this
420    option is 4 octets, and the length MUST always be a multiple of 4.
421
422     Code   Len         Address 1               Address 2
423    +-----+-----+-----+-----+-----+-----+-----+-----+--
424    |  9  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
425    +-----+-----+-----+-----+-----+-----+-----+-----+--
426
427 3.12. Impress Server Option
428
429    The Impress server option specifies a list of Imagen Impress servers
430    available to the client.  Servers SHOULD be listed in order of
431    preference.
432
433    The code for the Impress server option is 10.  The minimum length for
434    this option is 4 octets, and the length MUST always be a multiple of
435    4.
436
437     Code   Len         Address 1               Address 2
438    +-----+-----+-----+-----+-----+-----+-----+-----+--
439    |  10 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
440    +-----+-----+-----+-----+-----+-----+-----+-----+--
441
442 3.13. Resource Location Server Option
443
444    This option specifies a list of RFC 887 [11] Resource Location
445    servers available to the client.  Servers SHOULD be listed in order
446    of preference.
447
448
449
450 Alexander & Droms           Standards Track                     [Page 8]
451 \f
452 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
453
454
455    The code for this option is 11.  The minimum length for this option
456    is 4 octets, and the length MUST always be a multiple of 4.
457
458     Code   Len         Address 1               Address 2
459    +-----+-----+-----+-----+-----+-----+-----+-----+--
460    |  11 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
461    +-----+-----+-----+-----+-----+-----+-----+-----+--
462
463 3.14. Host Name Option
464
465    This option specifies the name of the client.  The name may or may
466    not be qualified with the local domain name (see section 3.17 for the
467    preferred way to retrieve the domain name).  See RFC 1035 for
468    character set restrictions.
469
470    The code for this option is 12, and its minimum length is 1.
471
472     Code   Len                 Host Name
473    +-----+-----+-----+-----+-----+-----+-----+-----+--
474    |  12 |  n  |  h1 |  h2 |  h3 |  h4 |  h5 |  h6 |  ...
475    +-----+-----+-----+-----+-----+-----+-----+-----+--
476
477 3.15. Boot File Size Option
478
479    This option specifies the length in 512-octet blocks of the default
480    boot image for the client.  The file length is specified as an
481    unsigned 16-bit integer.
482
483    The code for this option is 13, and its length is 2.
484
485     Code   Len   File Size
486    +-----+-----+-----+-----+
487    |  13 |  2  |  l1 |  l2 |
488    +-----+-----+-----+-----+
489
490 3.16. Merit Dump File
491
492    This option specifies the path-name of a file to which the client's
493    core image should be dumped in the event the client crashes.  The
494    path is formatted as a character string consisting of characters from
495    the NVT ASCII character set.
496
497    The code for this option is 14.  Its minimum length is 1.
498
499     Code   Len      Dump File Pathname
500    +-----+-----+-----+-----+-----+-----+---
501    |  14 |  n  |  n1 |  n2 |  n3 |  n4 | ...
502    +-----+-----+-----+-----+-----+-----+---
503
504
505
506 Alexander & Droms           Standards Track                     [Page 9]
507 \f
508 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
509
510
511 3.17. Domain Name
512
513    This option specifies the domain name that client should use when
514    resolving hostnames via the Domain Name System.
515
516    The code for this option is 15.  Its minimum length is 1.
517
518     Code   Len        Domain Name
519    +-----+-----+-----+-----+-----+-----+--
520    |  15 |  n  |  d1 |  d2 |  d3 |  d4 |  ...
521    +-----+-----+-----+-----+-----+-----+--
522
523 3.18. Swap Server
524
525    This specifies the IP address of the client's swap server.
526
527    The code for this option is 16 and its length is 4.
528
529     Code   Len    Swap Server Address
530    +-----+-----+-----+-----+-----+-----+
531    |  16 |  n  |  a1 |  a2 |  a3 |  a4 |
532    +-----+-----+-----+-----+-----+-----+
533
534 3.19. Root Path
535
536    This option specifies the path-name that contains the client's root
537    disk.  The path is formatted as a character string consisting of
538    characters from the NVT ASCII character set.
539
540    The code for this option is 17.  Its minimum length is 1.
541
542     Code   Len      Root Disk Pathname
543    +-----+-----+-----+-----+-----+-----+---
544    |  17 |  n  |  n1 |  n2 |  n3 |  n4 | ...
545    +-----+-----+-----+-----+-----+-----+---
546
547 3.20. Extensions Path
548
549    A string to specify a file, retrievable via TFTP, which contains
550    information which can be interpreted in the same way as the 64-octet
551    vendor-extension field within the BOOTP response, with the following
552    exceptions:
553
554           - the length of the file is unconstrained;
555           - all references to Tag 18 (i.e., instances of the
556             BOOTP Extensions Path field) within the file are
557             ignored.
558
559
560
561
562 Alexander & Droms           Standards Track                    [Page 10]
563 \f
564 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
565
566
567    The code for this option is 18.  Its minimum length is 1.
568
569     Code   Len      Extensions Pathname
570    +-----+-----+-----+-----+-----+-----+---
571    |  18 |  n  |  n1 |  n2 |  n3 |  n4 | ...
572    +-----+-----+-----+-----+-----+-----+---
573
574 4. IP Layer Parameters per Host
575
576    This section details the options that affect the operation of the IP
577    layer on a per-host basis.
578
579 4.1. IP Forwarding Enable/Disable Option
580
581    This option specifies whether the client should configure its IP
582    layer for packet forwarding.  A value of 0 means disable IP
583    forwarding, and a value of 1 means enable IP forwarding.
584
585    The code for this option is 19, and its length is 1.
586
587     Code   Len  Value
588    +-----+-----+-----+
589    |  19 |  1  | 0/1 |
590    +-----+-----+-----+
591
592 4.2. Non-Local Source Routing Enable/Disable Option
593
594    This option specifies whether the client should configure its IP
595    layer to allow forwarding of datagrams with non-local source routes
596    (see Section 3.3.5 of [4] for a discussion of this topic).  A value
597    of 0 means disallow forwarding of such datagrams, and a value of 1
598    means allow forwarding.
599
600    The code for this option is 20, and its length is 1.
601
602     Code   Len  Value
603    +-----+-----+-----+
604    |  20 |  1  | 0/1 |
605    +-----+-----+-----+
606
607 4.3. Policy Filter Option
608
609    This option specifies policy filters for non-local source routing.
610    The filters consist of a list of IP addresses and masks which specify
611    destination/mask pairs with which to filter incoming source routes.
612
613    Any source routed datagram whose next-hop address does not match one
614    of the filters should be discarded by the client.
615
616
617
618 Alexander & Droms           Standards Track                    [Page 11]
619 \f
620 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
621
622
623    See [4] for further information.
624
625    The code for this option is 21.  The minimum length of this option is
626    8, and the length MUST be a multiple of 8.
627
628     Code   Len         Address 1                  Mask 1
629    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
630    |  21 |  n  |  a1 |  a2 |  a3 |  a4 |  m1 |  m2 |  m3 |  m4 |
631    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
632            Address 2                  Mask 2
633    +-----+-----+-----+-----+-----+-----+-----+-----+---
634    |  a1 |  a2 |  a3 |  a4 |  m1 |  m2 |  m3 |  m4 | ...
635    +-----+-----+-----+-----+-----+-----+-----+-----+---
636
637 4.4. Maximum Datagram Reassembly Size
638
639    This option specifies the maximum size datagram that the client
640    should be prepared to reassemble.  The size is specified as a 16-bit
641    unsigned integer.  The minimum value legal value is 576.
642
643    The code for this option is 22, and its length is 2.
644
645     Code   Len      Size
646    +-----+-----+-----+-----+
647    |  22 |  2  |  s1 |  s2 |
648    +-----+-----+-----+-----+
649
650 4.5. Default IP Time-to-live
651
652    This option specifies the default time-to-live that the client should
653    use on outgoing datagrams.  The TTL is specified as an octet with a
654    value between 1 and 255.
655
656    The code for this option is 23, and its length is 1.
657
658     Code   Len   TTL
659    +-----+-----+-----+
660    |  23 |  1  | ttl |
661    +-----+-----+-----+
662
663 4.6. Path MTU Aging Timeout Option
664
665    This option specifies the timeout (in seconds) to use when aging Path
666    MTU values discovered by the mechanism defined in RFC 1191 [12].  The
667    timeout is specified as a 32-bit unsigned integer.
668
669    The code for this option is 24, and its length is 4.
670
671
672
673
674 Alexander & Droms           Standards Track                    [Page 12]
675 \f
676 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
677
678
679     Code   Len           Timeout
680    +-----+-----+-----+-----+-----+-----+
681    |  24 |  4  |  t1 |  t2 |  t3 |  t4 |
682    +-----+-----+-----+-----+-----+-----+
683
684 4.7. Path MTU Plateau Table Option
685
686    This option specifies a table of MTU sizes to use when performing
687    Path MTU Discovery as defined in RFC 1191.  The table is formatted as
688    a list of 16-bit unsigned integers, ordered from smallest to largest.
689    The minimum MTU value cannot be smaller than 68.
690
691    The code for this option is 25.  Its minimum length is 2, and the
692    length MUST be a multiple of 2.
693
694     Code   Len     Size 1      Size 2
695    +-----+-----+-----+-----+-----+-----+---
696    |  25 |  n  |  s1 |  s2 |  s1 |  s2 | ...
697    +-----+-----+-----+-----+-----+-----+---
698
699 5. IP Layer Parameters per Interface
700
701    This section details the options that affect the operation of the IP
702    layer on a per-interface basis.  It is expected that a client can
703    issue multiple requests, one per interface, in order to configure
704    interfaces with their specific parameters.
705
706 5.1. Interface MTU Option
707
708    This option specifies the MTU to use on this interface.  The MTU is
709    specified as a 16-bit unsigned integer.  The minimum legal value for
710    the MTU is 68.
711
712    The code for this option is 26, and its length is 2.
713
714     Code   Len      MTU
715    +-----+-----+-----+-----+
716    |  26 |  2  |  m1 |  m2 |
717    +-----+-----+-----+-----+
718
719 5.2. All Subnets are Local Option
720
721    This option specifies whether or not the client may assume that all
722    subnets of the IP network to which the client is connected use the
723    same MTU as the subnet of that network to which the client is
724    directly connected.  A value of 1 indicates that all subnets share
725    the same MTU.  A value of 0 means that the client should assume that
726    some subnets of the directly connected network may have smaller MTUs.
727
728
729
730 Alexander & Droms           Standards Track                    [Page 13]
731 \f
732 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
733
734
735    The code for this option is 27, and its length is 1.
736
737     Code   Len  Value
738    +-----+-----+-----+
739    |  27 |  1  | 0/1 |
740    +-----+-----+-----+
741
742 5.3. Broadcast Address Option
743
744    This option specifies the broadcast address in use on the client's
745    subnet.  Legal values for broadcast addresses are specified in
746    section 3.2.1.3 of [4].
747
748    The code for this option is 28, and its length is 4.
749
750     Code   Len     Broadcast Address
751    +-----+-----+-----+-----+-----+-----+
752    |  28 |  4  |  b1 |  b2 |  b3 |  b4 |
753    +-----+-----+-----+-----+-----+-----+
754
755 5.4. Perform Mask Discovery Option
756
757    This option specifies whether or not the client should perform subnet
758    mask discovery using ICMP.  A value of 0 indicates that the client
759    should not perform mask discovery.  A value of 1 means that the
760    client should perform mask discovery.
761
762    The code for this option is 29, and its length is 1.
763
764     Code   Len  Value
765    +-----+-----+-----+
766    |  29 |  1  | 0/1 |
767    +-----+-----+-----+
768
769 5.5. Mask Supplier Option
770
771    This option specifies whether or not the client should respond to
772    subnet mask requests using ICMP.  A value of 0 indicates that the
773    client should not respond.  A value of 1 means that the client should
774    respond.
775
776    The code for this option is 30, and its length is 1.
777
778     Code   Len  Value
779    +-----+-----+-----+
780    |  30 |  1  | 0/1 |
781    +-----+-----+-----+
782
783
784
785
786 Alexander & Droms           Standards Track                    [Page 14]
787 \f
788 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
789
790
791 5.6. Perform Router Discovery Option
792
793    This option specifies whether or not the client should solicit
794    routers using the Router Discovery mechanism defined in RFC 1256
795    [13].  A value of 0 indicates that the client should not perform
796    router discovery.  A value of 1 means that the client should perform
797    router discovery.
798
799    The code for this option is 31, and its length is 1.
800
801     Code   Len  Value
802    +-----+-----+-----+
803    |  31 |  1  | 0/1 |
804    +-----+-----+-----+
805
806 5.7. Router Solicitation Address Option
807
808    This option specifies the address to which the client should transmit
809    router solicitation requests.
810
811    The code for this option is 32, and its length is 4.
812
813     Code   Len            Address
814    +-----+-----+-----+-----+-----+-----+
815    |  32 |  4  |  a1 |  a2 |  a3 |  a4 |
816    +-----+-----+-----+-----+-----+-----+
817
818 5.8. Static Route Option
819
820    This option specifies a list of static routes that the client should
821    install in its routing cache.  If multiple routes to the same
822    destination are specified, they are listed in descending order of
823    priority.
824
825    The routes consist of a list of IP address pairs.  The first address
826    is the destination address, and the second address is the router for
827    the destination.
828
829    The default route (0.0.0.0) is an illegal destination for a static
830    route.  See section 3.5 for information about the router option.
831
832    The code for this option is 33.  The minimum length of this option is
833    8, and the length MUST be a multiple of 8.
834
835
836
837
838
839
840
841
842 Alexander & Droms           Standards Track                    [Page 15]
843 \f
844 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
845
846
847     Code   Len         Destination 1           Router 1
848    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
849    |  33 |  n  |  d1 |  d2 |  d3 |  d4 |  r1 |  r2 |  r3 |  r4 |
850    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
851            Destination 2           Router 2
852    +-----+-----+-----+-----+-----+-----+-----+-----+---
853    |  d1 |  d2 |  d3 |  d4 |  r1 |  r2 |  r3 |  r4 | ...
854    +-----+-----+-----+-----+-----+-----+-----+-----+---
855
856 6. Link Layer Parameters per Interface
857
858    This section lists the options that affect the operation of the data
859    link layer on a per-interface basis.
860
861 6.1. Trailer Encapsulation Option
862
863    This option specifies whether or not the client should negotiate the
864    use of trailers (RFC 893 [14]) when using the ARP protocol.  A value
865    of 0 indicates that the client should not attempt to use trailers.  A
866    value of 1 means that the client should attempt to use trailers.
867
868    The code for this option is 34, and its length is 1.
869
870     Code   Len  Value
871    +-----+-----+-----+
872    |  34 |  1  | 0/1 |
873    +-----+-----+-----+
874
875 6.2. ARP Cache Timeout Option
876
877    This option specifies the timeout in seconds for ARP cache entries.
878    The time is specified as a 32-bit unsigned integer.
879
880    The code for this option is 35, and its length is 4.
881
882     Code   Len           Time
883    +-----+-----+-----+-----+-----+-----+
884    |  35 |  4  |  t1 |  t2 |  t3 |  t4 |
885    +-----+-----+-----+-----+-----+-----+
886
887 6.3. Ethernet Encapsulation Option
888
889    This option specifies whether or not the client should use Ethernet
890    Version 2 (RFC 894 [15]) or IEEE 802.3 (RFC 1042 [16]) encapsulation
891    if the interface is an Ethernet.  A value of 0 indicates that the
892    client should use RFC 894 encapsulation.  A value of 1 means that the
893    client should use RFC 1042 encapsulation.
894
895
896
897
898 Alexander & Droms           Standards Track                    [Page 16]
899 \f
900 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
901
902
903    The code for this option is 36, and its length is 1.
904
905     Code   Len  Value
906    +-----+-----+-----+
907    |  36 |  1  | 0/1 |
908    +-----+-----+-----+
909
910 7. TCP Parameters
911
912    This section lists the options that affect the operation of the TCP
913    layer on a per-interface basis.
914
915 7.1. TCP Default TTL Option
916
917    This option specifies the default TTL that the client should use when
918    sending TCP segments.  The value is represented as an 8-bit unsigned
919    integer.  The minimum value is 1.
920
921    The code for this option is 37, and its length is 1.
922
923     Code   Len   TTL
924    +-----+-----+-----+
925    |  37 |  1  |  n  |
926    +-----+-----+-----+
927
928 7.2. TCP Keepalive Interval Option
929
930    This option specifies the interval (in seconds) that the client TCP
931    should wait before sending a keepalive message on a TCP connection.
932    The time is specified as a 32-bit unsigned integer.  A value of zero
933    indicates that the client should not generate keepalive messages on
934    connections unless specifically requested by an application.
935
936    The code for this option is 38, and its length is 4.
937
938     Code   Len           Time
939    +-----+-----+-----+-----+-----+-----+
940    |  38 |  4  |  t1 |  t2 |  t3 |  t4 |
941    +-----+-----+-----+-----+-----+-----+
942
943 7.3. TCP Keepalive Garbage Option
944
945    This option specifies the whether or not the client should send TCP
946    keepalive messages with a octet of garbage for compatibility with
947    older implementations.  A value of 0 indicates that a garbage octet
948    should not be sent. A value of 1 indicates that a garbage octet
949    should be sent.
950
951
952
953
954 Alexander & Droms           Standards Track                    [Page 17]
955 \f
956 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
957
958
959    The code for this option is 39, and its length is 1.
960
961     Code   Len  Value
962    +-----+-----+-----+
963    |  39 |  1  | 0/1 |
964    +-----+-----+-----+
965
966 8. Application and Service Parameters
967
968    This section details some miscellaneous options used to configure
969    miscellaneous applications and services.
970
971 8.1. Network Information Service Domain Option
972
973    This option specifies the name of the client's NIS [17] domain.  The
974    domain is formatted as a character string consisting of characters
975    from the NVT ASCII character set.
976
977    The code for this option is 40.  Its minimum length is 1.
978
979     Code   Len      NIS Domain Name
980    +-----+-----+-----+-----+-----+-----+---
981    |  40 |  n  |  n1 |  n2 |  n3 |  n4 | ...
982    +-----+-----+-----+-----+-----+-----+---
983
984 8.2. Network Information Servers Option
985
986    This option specifies a list of IP addresses indicating NIS servers
987    available to the client.  Servers SHOULD be listed in order of
988    preference.
989
990    The code for this option is 41.  Its minimum length is 4, and the
991    length MUST be a multiple of 4.
992
993     Code   Len         Address 1               Address 2
994    +-----+-----+-----+-----+-----+-----+-----+-----+--
995    |  41 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
996    +-----+-----+-----+-----+-----+-----+-----+-----+--
997
998 8.3. Network Time Protocol Servers Option
999
1000    This option specifies a list of IP addresses indicating NTP [18]
1001    servers available to the client.  Servers SHOULD be listed in order
1002    of preference.
1003
1004    The code for this option is 42.  Its minimum length is 4, and the
1005    length MUST be a multiple of 4.
1006
1007
1008
1009
1010 Alexander & Droms           Standards Track                    [Page 18]
1011 \f
1012 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1013
1014
1015     Code   Len         Address 1               Address 2
1016    +-----+-----+-----+-----+-----+-----+-----+-----+--
1017    |  42 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1018    +-----+-----+-----+-----+-----+-----+-----+-----+--
1019
1020 8.4. Vendor Specific Information
1021
1022    This option is used by clients and servers to exchange vendor-
1023    specific information.  The information is an opaque object of n
1024    octets, presumably interpreted by vendor-specific code on the clients
1025    and servers.  The definition of this information is vendor specific.
1026    The vendor is indicated in the vendor class identifier option.
1027    Servers not equipped to interpret the vendor-specific information
1028    sent by a client MUST ignore it (although it may be reported).
1029    Clients which do not receive desired vendor-specific information
1030    SHOULD make an attempt to operate without it, although they may do so
1031    (and announce they are doing so) in a degraded mode.
1032
1033    If a vendor potentially encodes more than one item of information in
1034    this option, then the vendor SHOULD encode the option using
1035    "Encapsulated vendor-specific options" as described below:
1036
1037    The Encapsulated vendor-specific options field SHOULD be encoded as a
1038    sequence of code/length/value fields of identical syntax to the DHCP
1039    options field with the following exceptions:
1040
1041       1) There SHOULD NOT be a "magic cookie" field in the encapsulated
1042          vendor-specific extensions field.
1043
1044       2) Codes other than 0 or 255 MAY be redefined by the vendor within
1045          the encapsulated vendor-specific extensions field, but SHOULD
1046          conform to the tag-length-value syntax defined in section 2.
1047
1048       3) Code 255 (END), if present, signifies the end of the
1049          encapsulated vendor extensions, not the end of the vendor
1050          extensions field. If no code 255 is present, then the end of
1051          the enclosing vendor-specific information field is taken as the
1052          end of the encapsulated vendor-specific extensions field.
1053
1054    The code for this option is 43 and its minimum length is 1.
1055
1056    Code   Len   Vendor-specific information
1057    +-----+-----+-----+-----+---
1058    |  43 |  n  |  i1 |  i2 | ...
1059    +-----+-----+-----+-----+---
1060
1061
1062
1063
1064
1065
1066 Alexander & Droms           Standards Track                    [Page 19]
1067 \f
1068 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1069
1070
1071    When encapsulated vendor-specific extensions are used, the
1072    information bytes 1-n have the following format:
1073
1074     Code   Len   Data item        Code   Len   Data item       Code
1075    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
1076    |  T1 |  n  |  d1 |  d2 | ... |  T2 |  n  |  D1 |  D2 | ... | ... |
1077    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
1078
1079 8.5. NetBIOS over TCP/IP Name Server Option
1080
1081    The NetBIOS name server (NBNS) option specifies a list of RFC
1082    1001/1002 [19] [20] NBNS name servers listed in order of preference.
1083
1084    The code for this option is 44.  The minimum length of the option is
1085    4 octets, and the length must always be a multiple of 4.
1086
1087     Code   Len           Address 1              Address 2
1088    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+----
1089    |  44 |  n  |  a1 |  a2 |  a3 |  a4 |  b1 |  b2 |  b3 |  b4 | ...
1090    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+----
1091
1092 8.6. NetBIOS over TCP/IP Datagram Distribution Server Option
1093
1094    The NetBIOS datagram distribution server (NBDD) option specifies a
1095    list of RFC 1001/1002 NBDD servers listed in order of preference. The
1096    code for this option is 45.  The minimum length of the option is 4
1097    octets, and the length must always be a multiple of 4.
1098
1099     Code   Len           Address 1              Address 2
1100    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+----
1101    |  45 |  n  |  a1 |  a2 |  a3 |  a4 |  b1 |  b2 |  b3 |  b4 | ...
1102    +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+----
1103
1104 8.7. NetBIOS over TCP/IP Node Type Option
1105
1106    The NetBIOS node type option allows NetBIOS over TCP/IP clients which
1107    are configurable to be configured as described in RFC 1001/1002.  The
1108    value is specified as a single octet which identifies the client type
1109    as follows:
1110
1111       Value         Node Type
1112       -----         ---------
1113       0x1           B-node
1114       0x2           P-node
1115       0x4           M-node
1116       0x8           H-node
1117
1118
1119
1120
1121
1122 Alexander & Droms           Standards Track                    [Page 20]
1123 \f
1124 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1125
1126
1127    In the above chart, the notation '0x' indicates a number in base-16
1128    (hexadecimal).
1129
1130    The code for this option is 46.  The length of this option is always
1131    1.
1132
1133     Code   Len  Node Type
1134    +-----+-----+-----------+
1135    |  46 |  1  | see above |
1136    +-----+-----+-----------+
1137
1138 8.8. NetBIOS over TCP/IP Scope Option
1139
1140    The NetBIOS scope option specifies the NetBIOS over TCP/IP scope
1141    parameter for the client as specified in RFC 1001/1002. See [19],
1142    [20], and [8] for character-set restrictions.
1143
1144    The code for this option is 47.  The minimum length of this option is
1145    1.
1146
1147     Code   Len       NetBIOS Scope
1148    +-----+-----+-----+-----+-----+-----+----
1149    |  47 |  n  |  s1 |  s2 |  s3 |  s4 | ...
1150    +-----+-----+-----+-----+-----+-----+----
1151
1152 8.9. X Window System Font Server Option
1153
1154    This option specifies a list of X Window System [21] Font servers
1155    available to the client. Servers SHOULD be listed in order of
1156    preference.
1157
1158    The code for this option is 48.  The minimum length of this option is
1159    4 octets, and the length MUST be a multiple of 4.
1160
1161     Code   Len         Address 1               Address 2
1162    +-----+-----+-----+-----+-----+-----+-----+-----+---
1163    |  48 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |   ...
1164    +-----+-----+-----+-----+-----+-----+-----+-----+---
1165
1166 8.10. X Window System Display Manager Option
1167
1168    This option specifies a list of IP addresses of systems that are
1169    running the X Window System Display Manager and are available to the
1170    client.
1171
1172    Addresses SHOULD be listed in order of preference.
1173
1174
1175
1176
1177
1178 Alexander & Droms           Standards Track                    [Page 21]
1179 \f
1180 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1181
1182
1183    The code for the this option is 49. The minimum length of this option
1184    is 4, and the length MUST be a multiple of 4.
1185
1186     Code   Len         Address 1               Address 2
1187
1188    +-----+-----+-----+-----+-----+-----+-----+-----+---
1189    |  49 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |   ...
1190    +-----+-----+-----+-----+-----+-----+-----+-----+---
1191
1192 8.11. Network Information Service+ Domain Option
1193
1194    This option specifies the name of the client's NIS+ [17] domain.  The
1195    domain is formatted as a character string consisting of characters
1196    from the NVT ASCII character set.
1197
1198    The code for this option is 64.  Its minimum length is 1.
1199
1200     Code   Len      NIS Client Domain Name
1201    +-----+-----+-----+-----+-----+-----+---
1202    |  64 |  n  |  n1 |  n2 |  n3 |  n4 | ...
1203    +-----+-----+-----+-----+-----+-----+---
1204
1205 8.12. Network Information Service+ Servers Option
1206
1207    This option specifies a list of IP addresses indicating NIS+ servers
1208    available to the client.  Servers SHOULD be listed in order of
1209    preference.
1210
1211    The code for this option is 65.  Its minimum length is 4, and the
1212    length MUST be a multiple of 4.
1213
1214     Code   Len         Address 1               Address 2
1215    +-----+-----+-----+-----+-----+-----+-----+-----+--
1216    |  65 |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1217    +-----+-----+-----+-----+-----+-----+-----+-----+--
1218
1219 8.13. Mobile IP Home Agent option
1220
1221    This option specifies a list of IP addresses indicating mobile IP
1222    home agents available to the client.  Agents SHOULD be listed in
1223    order of preference.
1224
1225    The code for this option is 68.  Its minimum length is 0 (indicating
1226    no home agents are available) and the length MUST be a multiple of 4.
1227    It is expected that the usual length will be four octets, containing
1228    a single home agent's address.
1229
1230
1231
1232
1233
1234 Alexander & Droms           Standards Track                    [Page 22]
1235 \f
1236 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1237
1238
1239     Code Len    Home Agent Addresses (zero or more)
1240    +-----+-----+-----+-----+-----+-----+--
1241    | 68  |  n  | a1  | a2  | a3  | a4  | ...
1242    +-----+-----+-----+-----+-----+-----+--
1243
1244 8.14. Simple Mail Transport Protocol (SMTP) Server Option
1245
1246    The SMTP server option specifies a list of SMTP servers available to
1247    the client.  Servers SHOULD be listed in order of preference.
1248
1249    The code for the SMTP server option is 69.  The minimum length for
1250    this option is 4 octets, and the length MUST always be a multiple of
1251    4.
1252
1253     Code   Len         Address 1               Address 2
1254    +-----+-----+-----+-----+-----+-----+-----+-----+--
1255    | 69  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1256    +-----+-----+-----+-----+-----+-----+-----+-----+--
1257
1258 8.15. Post Office Protocol (POP3) Server Option
1259
1260    The POP3 server option specifies a list of POP3 available to the
1261    client.  Servers SHOULD be listed in order of preference.
1262
1263    The code for the POP3 server option is 70.  The minimum length for
1264    this option is 4 octets, and the length MUST always be a multiple of
1265    4.
1266
1267     Code   Len         Address 1               Address 2
1268    +-----+-----+-----+-----+-----+-----+-----+-----+--
1269    | 70  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1270    +-----+-----+-----+-----+-----+-----+-----+-----+--
1271
1272 8.16. Network News Transport Protocol (NNTP) Server Option
1273
1274    The NNTP server option specifies a list of NNTP available to the
1275    client.  Servers SHOULD be listed in order of preference.
1276
1277    The code for the NNTP server option is 71. The minimum length for
1278    this option is 4 octets, and the length MUST always be a multiple of
1279    4.
1280
1281     Code   Len         Address 1               Address 2
1282    +-----+-----+-----+-----+-----+-----+-----+-----+--
1283    | 71  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1284    +-----+-----+-----+-----+-----+-----+-----+-----+--
1285
1286
1287
1288
1289
1290 Alexander & Droms           Standards Track                    [Page 23]
1291 \f
1292 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1293
1294
1295 8.17. Default World Wide Web (WWW) Server Option
1296
1297    The WWW server option specifies a list of WWW available to the
1298    client.  Servers SHOULD be listed in order of preference.
1299
1300    The code for the WWW server option is 72.  The minimum length for
1301    this option is 4 octets, and the length MUST always be a multiple of
1302    4.
1303
1304     Code   Len         Address 1               Address 2
1305    +-----+-----+-----+-----+-----+-----+-----+-----+--
1306    | 72  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1307    +-----+-----+-----+-----+-----+-----+-----+-----+--
1308
1309 8.18. Default Finger Server Option
1310
1311    The Finger server option specifies a list of Finger available to the
1312    client.  Servers SHOULD be listed in order of preference.
1313
1314    The code for the Finger server option is 73.  The minimum length for
1315    this option is 4 octets, and the length MUST always be a multiple of
1316    4.
1317
1318     Code   Len         Address 1               Address 2
1319    +-----+-----+-----+-----+-----+-----+-----+-----+--
1320    | 73  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1321    +-----+-----+-----+-----+-----+-----+-----+-----+--
1322
1323 8.19. Default Internet Relay Chat (IRC) Server Option
1324
1325    The IRC server option specifies a list of IRC available to the
1326    client.  Servers SHOULD be listed in order of preference.
1327
1328    The code for the IRC server option is 74.  The minimum length for
1329    this option is 4 octets, and the length MUST always be a multiple of
1330    4.
1331
1332     Code   Len         Address 1               Address 2
1333    +-----+-----+-----+-----+-----+-----+-----+-----+--
1334    | 74  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1335    +-----+-----+-----+-----+-----+-----+-----+-----+--
1336
1337 8.20. StreetTalk Server Option
1338
1339    The StreetTalk server option specifies a list of StreetTalk servers
1340    available to the client.  Servers SHOULD be listed in order of
1341    preference.
1342
1343
1344
1345
1346 Alexander & Droms           Standards Track                    [Page 24]
1347 \f
1348 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1349
1350
1351    The code for the StreetTalk server option is 75.  The minimum length
1352    for this option is 4 octets, and the length MUST always be a multiple
1353    of 4.
1354
1355     Code   Len         Address 1               Address 2
1356    +-----+-----+-----+-----+-----+-----+-----+-----+--
1357    | 75  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1358    +-----+-----+-----+-----+-----+-----+-----+-----+--
1359
1360 8.21. StreetTalk Directory Assistance (STDA) Server Option
1361
1362    The StreetTalk Directory Assistance (STDA) server option specifies a
1363    list of STDA servers available to the client.  Servers SHOULD be
1364    listed in order of preference.
1365
1366    The code for the StreetTalk Directory Assistance server option is 76.
1367    The minimum length for this option is 4 octets, and the length MUST
1368    always be a multiple of 4.
1369
1370     Code   Len         Address 1               Address 2
1371    +-----+-----+-----+-----+-----+-----+-----+-----+--
1372    | 76  |  n  |  a1 |  a2 |  a3 |  a4 |  a1 |  a2 |  ...
1373    +-----+-----+-----+-----+-----+-----+-----+-----+--
1374
1375 9. DHCP Extensions
1376
1377    This section details the options that are specific to DHCP.
1378
1379 9.1. Requested IP Address
1380
1381    This option is used in a client request (DHCPDISCOVER) to allow the
1382    client to request that a particular IP address be assigned.
1383
1384    The code for this option is 50, and its length is 4.
1385
1386     Code   Len          Address
1387    +-----+-----+-----+-----+-----+-----+
1388    |  50 |  4  |  a1 |  a2 |  a3 |  a4 |
1389    +-----+-----+-----+-----+-----+-----+
1390
1391 9.2. IP Address Lease Time
1392
1393    This option is used in a client request (DHCPDISCOVER or DHCPREQUEST)
1394    to allow the client to request a lease time for the IP address.  In a
1395    server reply (DHCPOFFER), a DHCP server uses this option to specify
1396    the lease time it is willing to offer.
1397
1398
1399
1400
1401
1402 Alexander & Droms           Standards Track                    [Page 25]
1403 \f
1404 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1405
1406
1407    The time is in units of seconds, and is specified as a 32-bit
1408    unsigned integer.
1409
1410    The code for this option is 51, and its length is 4.
1411
1412     Code   Len         Lease Time
1413    +-----+-----+-----+-----+-----+-----+
1414    |  51 |  4  |  t1 |  t2 |  t3 |  t4 |
1415    +-----+-----+-----+-----+-----+-----+
1416
1417 9.3. Option Overload
1418
1419    This option is used to indicate that the DHCP 'sname' or 'file'
1420    fields are being overloaded by using them to carry DHCP options. A
1421    DHCP server inserts this option if the returned parameters will
1422    exceed the usual space allotted for options.
1423
1424    If this option is present, the client interprets the specified
1425    additional fields after it concludes interpretation of the standard
1426    option fields.
1427
1428    The code for this option is 52, and its length is 1.  Legal values
1429    for this option are:
1430
1431            Value   Meaning
1432            -----   --------
1433              1     the 'file' field is used to hold options
1434              2     the 'sname' field is used to hold options
1435              3     both fields are used to hold options
1436
1437     Code   Len  Value
1438    +-----+-----+-----+
1439    |  52 |  1  |1/2/3|
1440    +-----+-----+-----+
1441
1442 9.4 TFTP server name
1443
1444    This option is used to identify a TFTP server when the 'sname' field
1445    in the DHCP header has been used for DHCP options.
1446
1447    The code for this option is 66, and its minimum length is 1.
1448
1449        Code  Len   TFTP server
1450       +-----+-----+-----+-----+-----+---
1451       | 66  |  n  |  c1 |  c2 |  c3 | ...
1452       +-----+-----+-----+-----+-----+---
1453
1454
1455
1456
1457
1458 Alexander & Droms           Standards Track                    [Page 26]
1459 \f
1460 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1461
1462
1463 9.5 Bootfile name
1464
1465    This option is used to identify a bootfile when the 'file' field in
1466    the DHCP header has been used for DHCP options.
1467
1468    The code for this option is 67, and its minimum length is 1.
1469
1470        Code  Len   Bootfile name
1471       +-----+-----+-----+-----+-----+---
1472       | 67  |  n  |  c1 |  c2 |  c3 | ...
1473       +-----+-----+-----+-----+-----+---
1474
1475 9.6. DHCP Message Type
1476
1477    This option is used to convey the type of the DHCP message.  The code
1478    for this option is 53, and its length is 1.  Legal values for this
1479    option are:
1480
1481            Value   Message Type
1482            -----   ------------
1483              1     DHCPDISCOVER
1484              2     DHCPOFFER
1485              3     DHCPREQUEST
1486              4     DHCPDECLINE
1487              5     DHCPACK
1488              6     DHCPNAK
1489              7     DHCPRELEASE
1490              8     DHCPINFORM
1491
1492     Code   Len  Type
1493    +-----+-----+-----+
1494    |  53 |  1  | 1-9 |
1495    +-----+-----+-----+
1496
1497 9.7. Server Identifier
1498
1499    This option is used in DHCPOFFER and DHCPREQUEST messages, and may
1500    optionally be included in the DHCPACK and DHCPNAK messages.  DHCP
1501    servers include this option in the DHCPOFFER in order to allow the
1502    client to distinguish between lease offers.  DHCP clients use the
1503    contents of the 'server identifier' field as the destination address
1504    for any DHCP messages unicast to the DHCP server.  DHCP clients also
1505    indicate which of several lease offers is being accepted by including
1506    this option in a DHCPREQUEST message.
1507
1508    The identifier is the IP address of the selected server.
1509
1510    The code for this option is 54, and its length is 4.
1511
1512
1513
1514 Alexander & Droms           Standards Track                    [Page 27]
1515 \f
1516 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1517
1518
1519     Code   Len            Address
1520    +-----+-----+-----+-----+-----+-----+
1521    |  54 |  4  |  a1 |  a2 |  a3 |  a4 |
1522    +-----+-----+-----+-----+-----+-----+
1523
1524 9.8. Parameter Request List
1525
1526    This option is used by a DHCP client to request values for specified
1527    configuration parameters.  The list of requested parameters is
1528    specified as n octets, where each octet is a valid DHCP option code
1529    as defined in this document.
1530
1531    The client MAY list the options in order of preference.  The DHCP
1532    server is not required to return the options in the requested order,
1533    but MUST try to insert the requested options in the order requested
1534    by the client.
1535
1536    The code for this option is 55.  Its minimum length is 1.
1537
1538     Code   Len   Option Codes
1539    +-----+-----+-----+-----+---
1540    |  55 |  n  |  c1 |  c2 | ...
1541    +-----+-----+-----+-----+---
1542
1543 9.9. Message
1544
1545    This option is used by a DHCP server to provide an error message to a
1546    DHCP client in a DHCPNAK message in the event of a failure. A client
1547    may use this option in a DHCPDECLINE message to indicate the why the
1548    client declined the offered parameters.  The message consists of n
1549    octets of NVT ASCII text, which the client may display on an
1550    available output device.
1551
1552    The code for this option is 56 and its minimum length is 1.
1553
1554     Code   Len     Text
1555    +-----+-----+-----+-----+---
1556    |  56 |  n  |  c1 |  c2 | ...
1557    +-----+-----+-----+-----+---
1558
1559 9.10. Maximum DHCP Message Size
1560
1561    This option specifies the maximum length DHCP message that it is
1562    willing to accept.  The length is specified as an unsigned 16-bit
1563    integer.  A client may use the maximum DHCP message size option in
1564    DHCPDISCOVER or DHCPREQUEST messages, but should not use the option
1565    in DHCPDECLINE messages.
1566
1567
1568
1569
1570 Alexander & Droms           Standards Track                    [Page 28]
1571 \f
1572 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1573
1574
1575    The code for this option is 57, and its length is 2.  The minimum
1576    legal value is 576 octets.
1577
1578     Code   Len     Length
1579    +-----+-----+-----+-----+
1580    |  57 |  2  |  l1 |  l2 |
1581    +-----+-----+-----+-----+
1582
1583 9.11. Renewal (T1) Time Value
1584
1585    This option specifies the time interval from address assignment until
1586    the client transitions to the RENEWING state.
1587
1588    The value is in units of seconds, and is specified as a 32-bit
1589    unsigned integer.
1590
1591    The code for this option is 58, and its length is 4.
1592
1593     Code   Len         T1 Interval
1594    +-----+-----+-----+-----+-----+-----+
1595    |  58 |  4  |  t1 |  t2 |  t3 |  t4 |
1596    +-----+-----+-----+-----+-----+-----+
1597
1598 9.12. Rebinding (T2) Time Value
1599
1600    This option specifies the time interval from address assignment until
1601    the client transitions to the REBINDING state.
1602
1603    The value is in units of seconds, and is specified as a 32-bit
1604    unsigned integer.
1605
1606    The code for this option is 59, and its length is 4.
1607
1608     Code   Len         T2 Interval
1609    +-----+-----+-----+-----+-----+-----+
1610    |  59 |  4  |  t1 |  t2 |  t3 |  t4 |
1611    +-----+-----+-----+-----+-----+-----+
1612
1613 9.13. Vendor class identifier
1614
1615    This option is used by DHCP clients to optionally identify the vendor
1616    type and configuration of a DHCP client.  The information is a string
1617    of n octets, interpreted by servers.  Vendors may choose to define
1618    specific vendor class identifiers to convey particular configuration
1619    or other identification information about a client.  For example, the
1620    identifier may encode the client's hardware configuration.  Servers
1621    not equipped to interpret the class-specific information sent by a
1622    client MUST ignore it (although it may be reported). Servers that
1623
1624
1625
1626 Alexander & Droms           Standards Track                    [Page 29]
1627 \f
1628 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1629
1630
1631    respond SHOULD only use option 43 to return the vendor-specific
1632    information to the client.
1633
1634    The code for this option is 60, and its minimum length is 1.
1635
1636    Code   Len   Vendor class Identifier
1637    +-----+-----+-----+-----+---
1638    |  60 |  n  |  i1 |  i2 | ...
1639    +-----+-----+-----+-----+---
1640
1641 9.14. Client-identifier
1642
1643    This option is used by DHCP clients to specify their unique
1644    identifier.  DHCP servers use this value to index their database of
1645    address bindings.  This value is expected to be unique for all
1646    clients in an administrative domain.
1647
1648    Identifiers SHOULD be treated as opaque objects by DHCP servers.
1649
1650    The client identifier MAY consist of type-value pairs similar to the
1651    'htype'/'chaddr' fields defined in [3]. For instance, it MAY consist
1652    of a hardware type and hardware address. In this case the type field
1653    SHOULD be one of the ARP hardware types defined in STD2 [22].  A
1654    hardware type of 0 (zero) should be used when the value field
1655    contains an identifier other than a hardware address (e.g. a fully
1656    qualified domain name).
1657
1658    For correct identification of clients, each client's client-
1659    identifier MUST be unique among the client-identifiers used on the
1660    subnet to which the client is attached.  Vendors and system
1661    administrators are responsible for choosing client-identifiers that
1662    meet this requirement for uniqueness.
1663
1664    The code for this option is 61, and its minimum length is 2.
1665
1666    Code   Len   Type  Client-Identifier
1667    +-----+-----+-----+-----+-----+---
1668    |  61 |  n  |  t1 |  i1 |  i2 | ...
1669    +-----+-----+-----+-----+-----+---
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682 Alexander & Droms           Standards Track                    [Page 30]
1683 \f
1684 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1685
1686
1687 10. Defining new extensions
1688
1689    The author of a new DHCP option will follow these steps to obtain
1690    acceptance of the option as a part of the DHCP Internet Standard:
1691
1692    1. The author devises the new option.
1693    2. The author requests a number for the new option from IANA by
1694       contacting:
1695       Internet Assigned Numbers Authority (IANA)
1696       USC/Information Sciences Institute
1697       4676 Admiralty Way
1698       Marina del Rey, California  90292-6695
1699
1700       or by email as: iana@iana.org
1701
1702    3. The author documents the new option, using the newly obtained
1703       option number, as an Internet Draft.
1704    4. The author submits the Internet Draft for review through the IETF
1705       standards process as defined in "Internet Official Protocol
1706       Standards" (STD 1).  The new option will be submitted for eventual
1707       acceptance as an Internet Standard.
1708    5. The new option progresses through the IETF standards process; the
1709       new option will be reviewed by the Dynamic Host Configuration
1710       Working Group (if that group still exists), or as an Internet
1711       Draft not submitted by an IETF working group.
1712    6. If the new option fails to gain acceptance as an Internet
1713       Standard, the assigned option number will be returned to IANA for
1714       reassignment.
1715
1716       This procedure for defining new extensions will ensure that:
1717
1718       * allocation of new option numbers is coordinated from a single
1719         authority,
1720       * new options are reviewed for technical correctness and
1721         appropriateness, and
1722       * documentation for new options is complete and published.
1723
1724 11. Acknowledgements
1725
1726    The author thanks the many (and too numerous to mention!) members of
1727    the DHC WG for their tireless and ongoing efforts in the development
1728    of DHCP and this document.
1729
1730    The efforts of J Allard, Mike Carney, Dave Lapp, Fred Lien and John
1731    Mendonca in organizing DHCP interoperability testing sessions are
1732    gratefully acknowledged.
1733
1734
1735
1736
1737
1738 Alexander & Droms           Standards Track                    [Page 31]
1739 \f
1740 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1741
1742
1743    The development of this document was supported in part by grants from
1744    the Corporation for National Research Initiatives (CNRI), Bucknell
1745    University and Sun Microsystems.
1746
1747 12. References
1748
1749    [1] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
1750        Bucknell University, March 1997.
1751
1752    [2] Reynolds, J., "BOOTP Vendor Information Extensions", RFC 1497,
1753        USC/Information Sciences Institute, August 1993.
1754
1755    [3] Croft, W., and J. Gilmore, "Bootstrap Protocol", RFC 951,
1756        Stanford University and Sun Microsystems, September 1985.
1757
1758    [4] Braden, R., Editor, "Requirements for Internet Hosts -
1759        Communication Layers", STD 3, RFC 1122, USC/Information Sciences
1760        Institute, October 1989.
1761
1762    [5] Mogul, J., and J. Postel, "Internet Standard Subnetting
1763        Procedure", STD 5, RFC 950, USC/Information Sciences Institute,
1764        August 1985.
1765
1766    [6] Postel, J., and K. Harrenstien, "Time Protocol", STD 26, RFC
1767        868, USC/Information Sciences Institute, SRI, May 1983.
1768
1769    [7] Postel, J., "Name Server", IEN 116, USC/Information Sciences
1770        Institute, August 1979.
1771
1772    [8] Mockapetris, P., "Domain Names - Implementation and
1773        Specification", STD 13, RFC 1035, USC/Information Sciences
1774        Institute, November 1987.
1775
1776    [9] Postel, J., "Quote of the Day Protocol", STD 23, RFC 865,
1777        USC/Information Sciences Institute, May 1983.
1778
1779    [10] McLaughlin, L., "Line Printer Daemon Protocol", RFC 1179, The
1780         Wollongong Group, August 1990.
1781
1782    [11] Accetta, M., "Resource Location Protocol", RFC 887, CMU,
1783         December 1983.
1784
1785    [12] Mogul, J. and S. Deering, "Path MTU Discovery", RFC 1191,
1786         DECWRL,  Stanford University, November 1990.
1787
1788    [13] Deering, S., "ICMP Router Discovery Messages", RFC 1256,
1789         Xerox PARC, September 1991.
1790
1791
1792
1793
1794 Alexander & Droms           Standards Track                    [Page 32]
1795 \f
1796 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1797
1798
1799    [14] Leffler, S. and M. Karels, "Trailer Encapsulations", RFC 893,
1800         U. C. Berkeley, April 1984.
1801
1802    [15] Hornig, C., "Standard for the Transmission of IP Datagrams over
1803         Ethernet Networks", RFC 894, Symbolics, April 1984.
1804
1805    [16] Postel, J. and J. Reynolds, "Standard for the Transmission of
1806         IP Datagrams Over IEEE 802 Networks", RFC 1042,  USC/Information
1807         Sciences Institute, February 1988.
1808
1809    [17] Sun Microsystems, "System and Network Administration", March
1810         1990.
1811
1812    [18] Mills, D., "Internet Time Synchronization: The Network Time
1813         Protocol", RFC 1305, UDEL, March 1992.
1814
1815    [19] NetBIOS Working Group, "Protocol Standard for a NetBIOS Service
1816         on a TCP/UDP transport: Concepts and Methods", STD 19, RFC 1001,
1817         March 1987.
1818
1819    [20] NetBIOS Working Group, "Protocol Standard for a NetBIOS Service
1820         on a TCP/UDP transport: Detailed Specifications", STD 19, RFC
1821         1002, March 1987.
1822
1823    [21] Scheifler, R., "FYI On the X Window System", FYI 6, RFC 1198,
1824         MIT Laboratory for Computer Science, January 1991.
1825
1826    [22] Reynolds, J., and J. Postel, "Assigned Numbers", STD 2, RFC 1700,
1827         USC/Information Sciences Institute, July 1992.
1828
1829 13. Security Considerations
1830
1831    Security issues are not discussed in this memo.
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850 Alexander & Droms           Standards Track                    [Page 33]
1851 \f
1852 RFC 2132        DHCP Options and BOOTP Vendor Extensions      March 1997
1853
1854
1855 14. Authors' Addresses
1856
1857    Steve Alexander
1858    Silicon Graphics, Inc.
1859    2011 N. Shoreline Boulevard
1860    Mailstop 510
1861    Mountain View, CA 94043-1389
1862
1863    Phone: (415) 933-6172
1864    EMail: sca@engr.sgi.com
1865
1866
1867    Ralph Droms
1868    Bucknell University
1869    Lewisburg, PA 17837
1870
1871    Phone: (717) 524-1145
1872    EMail: droms@bucknell.edu
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906 Alexander & Droms           Standards Track                    [Page 34]
1907 \f