RFC 2937 PROPOSED STANDARD DHCP · DNS · NAME RESOLUTION

The Name Service Search Option for DHCP

Allows DHCP servers to specify the order for consulting name services

On rfc-editor.org ↗
PUBLISHED
September 2000
AUTHORS
C. Smith
STREAM
IETF
OPTION CODE
117
MINIMUM LENGTH
2 bytes
DNS OPTION CODE
6
NIS+ OPTION CODE
65
DOI
10.17487/RFC2937

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                        C. Smith
Request for Comments: 2937                     Sun Microsystems, Inc.
Category: Standards Track                              September 2000


                The Name Service Search Option for DHCP

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2000).  All Rights Reserved.

Abstract

   This document defines a new Dynamic Host Configuration Protocol
   (DHCP) option which is passed from the DHCP Server to the DHCP Client
   to specify the order in which name services should be consulted when
   resolving hostnames and other information.

Introduction

   The Dynamic Host Configuration Protocol (DHCP)[1] provides a
   framework for passing configuration information to hosts on a TCP/IP
   network.  RFC 2132 [2] allows DHCP servers to specify configuration
   information for various kinds of name services to be passed to DHCP
   clients.  Many clients use multiple name services and have crafted
   their own conventions that allow an individual host to express the
   order among the various name services with which lookups are done.
   However, no search order can be specified via DHCP.  The purpose of
   this document is to allow DHCP servers to specify the search order to
   be used by DHCP clients.  To avoid the need for inventing and
   maintaining a separate name space for this option, we rely on the
   existence of previously-defined DHCP options that specify the IP
   address(es) of servers which provide name services whose order we
   wish to express.

Definitions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [3].  This
   document also uses the following terms:

      "DHCP client"

         DHCP client or "client" is an Internet host using DHCP to
         obtain configuration parameters such as a network address.

      "DHCP server"

         A DHCP server or "server" is an Internet host that returns
         configuration parameters to DHCP clients.

   Name Service Search Option Format

     The code for this option is 117, and its minimum length is 2 bytes.
     A DHCP server SHOULD return, in its preferred order, the 16-bit,
     network byte order (big-endian [4]) integer option code for the
     name services (the earlier in the list, the more preferred the name
     service).

       Code            Length      Name Service Search Order in Sequence
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     117       |     Len       |             ns1               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |             ns2               |             ...               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

     In the above diagram, ns1 and ns2 are 16-bit integers corresponding
     to two DHCP options which specify the IP addresses of two different
     types of name server.  The current list of name services and their
     DHCP option codes, taken from RFC 2132, includes

       Name Service                                  Value

       Domain Name Server Option                       6
       Network Information Servers Option             41
       NetBIOS over TCP/IP Name Server Option         44
       Network Information Service+ Servers Option    65
       A name service option code of 0 is used to indicate that the
       client should refer to local naming information (e.g., an
       /etc/hosts file on a UNIX machine).

     A DHCP server wishing to express that a client should first search
     DNS, then NIS+, would send

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     117       |      4        |              6                |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              65               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   DHCP Client Behavior

     The DHCP client will use this option to create a search list for
     name resolution.  The client may receive name services in this
     option that it does not support or has not been configured to
     access.  Likewise, a client may receive an option that lists name
     services for which no corresponding DHCP option was supplied.
     Clients will interpret this option in a system-specific manner
     whose specification is outside the scope of this document.

Security Considerations

   DHCP currently provides no authentication or security mechanisms.
   Potential exposures to attack are discussed in section 7 of the DHCP
   protocol specification [1].

IANA Considerations

   IANA has assigned a value of 117 for the DHCP option code described
   in this document.

References

   [1] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March
       1997.

   [2] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor
       Extensions", RFC 2132, March 1997.

   [3] Bradner, S., "Key words for use in RFCs to indicate requirement
       levels", BCP 14, RFC 2119, March 1997.

   [4] Cohen, D., "On Holy Wars and a Plea for Peace", Computer, IEEE,
       October 1981.

Author's Address

   Carl Smith
   Sun Microsystems, Inc.
   901 San Antonio Road
   Palo Alto, CA 94043

   EMail:  cs@Eng.Sun.COM

Full Copyright Statement

   Copyright (C) The Internet Society (2000).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.

AI ELI5

On this page
PROBLEMMany clients use multiple name services (DNS, NIS+, local files) but have no standard way to learn the order in which to consult them; each client crafts its own conventions.
MECHANISMDHCP option 117 carries a list of 16-bit option codes in preferred order, referring to previously-defined DHCP options that specify name service IP addresses, allowing servers to express a consistent search order.
SPECIFIES SEARCH ORDERClients can use a DHCP-provided search order rather than relying on local configuration, enabling administrators to coordinate name resolution across a network.

§1Name Service Search Order

The Dynamic Host Configuration Protocol (DHCP) provides a framework for passing configuration information to hosts on a TCP/IP network. RFC 2132 allows DHCP servers to specify configuration information for various name services. Many clients use multiple name services—such as DNS, NIS+, or local files—and need to know the order in which to consult them when resolving hostnames and other information.

Before this RFC, no standard mechanism existed to specify a search order via DHCP. This document enables DHCP servers to communicate the preferred order for consulting various name services, avoiding the need for each client to maintain its own conventions.

Networks can have several different ways to look up names. This defines how a server can tell a client which method to try first, second, and so on.

§2The Name Service Search Option Format

DHCP option 117 carries a list of 16-bit network byte order (big-endian) integers, each representing the option code for a name service. The server returns these codes in preferred order: earlier codes in the list indicate more preferred name services.

The option has a minimum length of 2 bytes. Example name service option codes include code 6 for Domain Name Servers (DNS), code 41 for Network Information Servers, code 44 for NetBIOS over TCP/IP Name Servers, and code 65 for NIS+ Servers. A code value of 0 indicates that the client should refer to local naming information (such as /etc/hosts on UNIX).

Each name service has a number. The server lists these numbers in the order the client should try them, with the most important ones first.

§3Client Behavior

The DHCP client uses option 117 to create a search list for name resolution. A client may receive name services in this option that it does not support or has not been configured to access. Likewise, a client may receive an option that lists name services for which no corresponding DHCP option was supplied with server IP addresses. Clients interpret this option in a system-specific manner whose specification is outside the scope of this RFC.

The client follows the order it receives, but how exactly it uses the list depends on the system. It might skip services it doesn't know about.

§4References