RFC 7720 BEST CURRENT PRACTICE DNS · ROOT SERVERS · REQUIREMENTS

DNS Root Name Service Protocol and Deployment Requirements

The short list of protocol and deployment rules every DNS root name service must follow.

On rfc-editor.org ↗
PUBLISHED
December 2015
AUTHORS
M. Blanchet, L-J. Liman
STREAM
IETF
BUILDS ON
RFC 2870 — Root server operations
BCP NUMBER
BCP 40
TRANSPORTS REQUIRED
IPv4, IPv6, UDP and TCP
SECURITY EXTENSION REQUIRED
DNSSEC
OPERATIONAL REQUIREMENTS
In RSSAC-001
DOI
10.17487/RFC7720

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Internet Engineering Task Force (IETF)                       M. Blanchet
Request for Comments: 7720                                      Viagenie
BCP: 40                                                       L-J. Liman
Obsoletes: 2870                                                   Netnod
Category: Best Current Practice                            December 2015
ISSN: 2070-1721


       DNS Root Name Service Protocol and Deployment Requirements

Abstract

   The DNS root name service is a critical part of the Internet
   architecture.  The protocol and deployment requirements for the DNS
   root name service are defined in this document.  Operational
   requirements are out of scope.

Status of This Memo

   This memo documents an Internet Best Current Practice.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   BCPs is available in Section 2 of RFC 5741.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc7720.

Copyright Notice

   Copyright (c) 2015 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Relationship to RFC 2870  . . . . . . . . . . . . . . . .   2
   2.  Protocol Requirements . . . . . . . . . . . . . . . . . . . .   3
   3.  Deployment Requirements . . . . . . . . . . . . . . . . . . .   3
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   3
   5.  Informative References  . . . . . . . . . . . . . . . . . . .   4
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .   5
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   6

1.  Introduction

   [RFC2870] discusses protocol and operational requirements for root
   name servers for the Internet's domain name system (DNS) protocol
   [RFC1035].  Since its publication, both protocol and operational
   requirements have evolved.  It makes more sense now to separate the
   two sets of requirements into two separate documents.  This document
   only defines the protocol requirements and some deployment
   requirements.  The operational requirements that were defined in RFC
   2870 have been removed.  Operational requirements are now defined by
   the Root Server System Advisory Committee of ICANN and are documented
   in [RSSAC-001].

   The root servers are authoritative servers of the unique [RFC2826]
   root zone (".") [ROOTZONE].  They currently also serve the root-
   servers.net zone.  Some also serve the zone for the .arpa top-level
   domain [ARPAZONE] [RFC3172].  This document describes the external
   interface of the root name servers from a protocol viewpoint of the
   service.  It specifies basic requirements for the Internet that DNS
   clients meet when interacting with a root name service over the
   public Internet.

   The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD,
   SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this
   document, are to be interpreted as described in BCP 14, [RFC2119].

1.1.  Relationship to RFC 2870

   This document obsoletes [RFC2870].

   This document and [RSSAC-001] together functionally replace
   [RFC2870].

2.  Protocol Requirements

   This section describes the minimum high-level protocol requirements.
   Operative details are documented in [RSSAC-001].

   The root name service:

   o  MUST implement core DNS [RFC1035] and clarifications to the DNS
      [RFC2181].

   o  MUST support IPv4 [RFC791] and IPv6 [RFC2460] transport of DNS
      queries and responses.

   o  MUST support UDP [RFC768] and TCP [RFC793] transport of DNS
      queries and responses.

   o  MUST generate checksums when sending UDP datagrams and MUST verify
      checksums when receiving UDP datagrams containing a non-zero
      checksum.

   o  MUST implement DNSSEC [RFC4035] as an authoritative name service.

   o  MUST implement extension mechanisms for DNS (EDNS(0)) [RFC6891].

3.  Deployment Requirements

   The root name service:

   o  MUST answer queries from any entity conforming to [RFC1122] with a
      valid IP address.

   o  MUST serve the unique [RFC2826] root zone [ROOTZONE].

4.  Security Considerations

   This document does not specify a new protocol.  However, the root
   name service is a key component of the Internet architecture and play
   a key role into the overall security of the Internet [RFC2826].
   Specific security considerations on the DNS protocols are discussed
   in their respective specifications.  The security considerations on
   the operational side of the root name servers are discussed in
   [RSSAC-001].

5.  Informative References

   [ARPAZONE]  IANA, ".ARPA Zone Management",
               <http://www.iana.org/domains/arpa>.

   [RFC768]    Postel, J., "User Datagram Protocol", STD 6, RFC 768,
               DOI 10.17487/RFC0768, August 1980,
               <http://www.rfc-editor.org/info/rfc768>.

   [RFC791]    Postel, J., "Internet Protocol", STD 5, RFC 791,
               DOI 10.17487/RFC0791, September 1981,
               <http://www.rfc-editor.org/info/rfc791>.

   [RFC793]    Postel, J., "Transmission Control Protocol", STD 7,
               RFC 793, DOI 10.17487/RFC0793, September 1981,
               <http://www.rfc-editor.org/info/rfc793>.

   [RFC1035]   Mockapetris, P., "Domain names - implementation and
               specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
               November 1987, <http://www.rfc-editor.org/info/rfc1035>.

   [RFC1122]   Braden, R., Ed., "Requirements for Internet Hosts -
               Communication Layers", STD 3, RFC 1122,
               DOI 10.17487/RFC1122, October 1989,
               <http://www.rfc-editor.org/info/rfc1122>.

   [RFC2119]   Bradner, S., "Key words for use in RFCs to Indicate
               Requirement Levels", BCP 14, RFC 2119,
               DOI 10.17487/RFC2119, March 1997,
               <http://www.rfc-editor.org/info/rfc2119>.

   [RFC2181]   Elz, R. and R. Bush, "Clarifications to the DNS
               Specification", RFC 2181, DOI 10.17487/RFC2181, July
               1997, <http://www.rfc-editor.org/info/rfc2181>.

   [RFC2460]   Deering, S. and R. Hinden, "Internet Protocol, Version 6
               (IPv6) Specification", RFC 2460, DOI 10.17487/RFC2460,
               December 1998, <http://www.rfc-editor.org/info/rfc2460>.

   [RFC2826]   Internet Architecture Board, "IAB Technical Comment on
               the Unique DNS Root", RFC 2826, DOI 10.17487/RFC2826, May
               2000, <http://www.rfc-editor.org/info/rfc2826>.

   [RFC2870]   Bush, R., Karrenberg, D., Kosters, M., and R. Plzak,
               "Root Name Server Operational Requirements", BCP 40,
               RFC 2870, DOI 10.17487/RFC2870, June 2000,
               <http://www.rfc-editor.org/info/rfc2870>.

   [RFC3172]   Huston, G., Ed., "Management Guidelines & Operational
               Requirements for the Address and Routing Parameter Area
               Domain ("arpa")", BCP 52, RFC 3172, DOI 10.17487/RFC3172,
               September 2001, <http://www.rfc-editor.org/info/rfc3172>.

   [RFC4035]   Arends, R., Austein, R., Larson, M., Massey, D., and S.
               Rose, "Protocol Modifications for the DNS Security
               Extensions", RFC 4035, DOI 10.17487/RFC4035, March 2005,
               <http://www.rfc-editor.org/info/rfc4035>.

   [RFC6891]   Damas, J., Graff, M., and P. Vixie, "Extension Mechanisms
               for DNS (EDNS(0))", STD 75, RFC 6891,
               DOI 10.17487/RFC6891, April 2013,
               <http://www.rfc-editor.org/info/rfc6891>.

   [ROOTZONE]  "Root Zone", <ftp://rs.internic.net/domain/root.zone>.

   [RSSAC-001] Root Server System Advisory Committee (RSSAC), "Service
               Expectations of Root Servers", November 2014,
               <https://www.icann.org/en/system/files/files/
               rssac-001-root-service-expectations-04dec15-en.pdf>.

Acknowledgements

   Some text was taken from [RFC2870].  The editors of this document
   would like to sincerely thank the following individuals for valuable
   contributions to the text: Andrew Sullivan, Simon Perreault,
   Jean-Philippe Dionne, Dave Thaler, Russ Housley, Alissa Cooper, Joe
   Abley, Joao Damas, Daniel Karrenberg, Jacques Latour, Eliot Lear,
   Bill Manning, David Conrad, Paul Hoffman, Terry Manderson, Jari
   Arkko, and Mark Andrews.

Authors' Addresses

   Marc Blanchet
   Viagenie
   246 Aberdeen
   Quebec, QC  G1R 2E1
   Canada

   Email: Marc.Blanchet@viagenie.ca
   URI:   http://viagenie.ca


   Lars-Johan Liman
   Netnod Internet Exchange
   Box 30194
   SE-104 25 Stockholm
   Sweden

   Email: liman@netnod.se
   URI:   http://www.netnod.se/

AI ELI5

On this page
PROBLEMRFC 2870 mixed protocol and operational requirements for root name servers, and both had evolved since it was published.
MECHANISMRFC 7720 keeps only the protocol requirements and a few deployment requirements, as MUST rules. Operational requirements moved to RSSAC-001.
WHY IT MATTERSIt obsoletes RFC 2870. Together with RSSAC-001 it functionally replaces that document.

§1Why the Root Needs Requirements

The DNS root name service is described as a critical part of the Internet architecture. The root servers are authoritative servers of the unique root zone ("."). The RFC notes they currently also serve the root-servers.net zone, and some also serve the zone for the .arpa top-level domain.

This document describes the external interface of the root name servers from a protocol viewpoint. It sets basic requirements for what DNS clients can expect when they talk to a root name service over the public Internet. It uses the RFC 2119 keywords such as MUST and SHOULD.

The root servers are the first place the Internet's phone book looks things up. This note says what they have to be good at.

§1.1Relationship to RFC 2870

RFC 2870 covered both protocol and operational requirements for root name servers. Since it was published, both sets of requirements evolved, so the authors found it made more sense to split them into two documents.

This document defines only the protocol requirements and some deployment requirements. The operational requirements from RFC 2870 were removed. They are now defined by the Root Server System Advisory Committee (RSSAC) of ICANN in RSSAC-001. This document obsoletes RFC 2870, and the two documents together functionally replace it.

One old rulebook tried to cover everything. Now it is split in two: this one has the technical rules, and another group writes the day-to-day running rules.

§2Protocol Requirements

These are the minimum high-level protocol requirements. Operative details are in RSSAC-001. The root name service MUST:

  • implement core DNS (RFC 1035) and the clarifications to the DNS (RFC 2181);
  • support IPv4 and IPv6 transport of DNS queries and responses;
  • support UDP and TCP transport of DNS queries and responses;
  • generate checksums when sending UDP datagrams, and verify checksums when receiving UDP datagrams that contain a non-zero checksum;
  • implement DNSSEC as an authoritative name service;
  • implement the extension mechanisms for DNS, EDNS(0).

The root servers must speak the basic DNS language, work over both old and new Internet addresses, and be able to prove their answers are genuine.

THE SIX PROTOCOL MUSTS (RFC 7720)
  • Core DNSRFC 1035 plus the RFC 2181 clarifications.
  • IPv4 and IPv6Both carry queries and responses.
  • UDP and TCPBoth carry queries and responses.
  • UDP checksumsGenerate on send; verify when non-zero on receipt.
  • DNSSECImplemented as an authoritative name service.
  • EDNS(0)The DNS extension mechanisms.

§3Deployment Requirements

Two deployment rules apply. The root name service MUST answer queries from any entity conforming to RFC 1122 with a valid IP address. It also MUST serve the unique root zone.

In practice this means the service may not pick and choose which conforming hosts it answers, and it may not serve some alternative root zone in place of the single one.

The root servers have to answer anyone who asks properly, and they all have to hand out the same one official list.

§4Security Considerations

The document does not specify a new protocol. It points out that the root name service is a key component of the Internet architecture and plays a key role in the overall security of the Internet.

Security considerations for the DNS protocols are in their own specifications. Security considerations on the operational side of the root name servers are discussed in RSSAC-001.

The top of the phone book matters for everyone's safety, so the detailed safety rules live in the documents about each part.

§6References