5395
BEST CURRENT PRACTICE
Domain Name System (DNS) IANA Considerations (Obsoleted)
Authors: D. Eastlake 3rd
Date: November 2008
Area: int
Working Group: dnsext
Stream: IETF
Abstract
Internet Assigned Number Authority (IANA) parameter assignment considerations are specified for the allocation of Domain Name System (DNS) resource record types, CLASSes, operation codes, error codes, DNS protocol message header bits, and AFSDB resource record subtypes. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.
RFC 5395
Obsoleted by: 6195 BEST CURRENT PRACTICE
Errata Exist
Network Working Group D. Eastlake 3rd
Request for Comments: 5395 Stellar Switches
BCP: 42 November 2008
Obsoletes: <a href="./rfc2929">2929</a>
Updates: <a href="./rfc1183">1183</a>, <a href="./rfc3597">3597</a>
Category: Best Current Practice
<span class="h1">Domain Name System (DNS) IANA Considerations</span>
Status of This Memo
This document specifies an Internet Best Current Practices for the
Internet Community, and requests discussion and suggestions for
improvements. Distribution of this memo is unlimited.
Copyright Notice
Copyright (c) 2008 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and the IETF Trust's Legal
Provisions Relating to IETF Documents
(<a href="http://trustee.ietf.org/license-info">http://trustee.ietf.org/license-info</a>) 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.
Abstract
Internet Assigned Number Authority (IANA) parameter assignment
considerations are specified for the allocation of Domain Name System
(DNS) resource record types, CLASSes, operation codes, error codes,
DNS protocol message header bits, and AFSDB resource record subtypes.
<span class="grey">Eastlake Best Current Practice [Page 1]</span>
<span id="page-2" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
Table of Contents
<a href="#section-1">1</a>. Introduction ....................................................<a href="#page-2">2</a>
<a href="#section-1.1">1.1</a>. Terminology ................................................<a href="#page-2">2</a>
<a href="#section-2">2</a>. DNS Query/Response Headers ......................................<a href="#page-3">3</a>
<a href="#section-2.1">2.1</a>. One Spare Bit? .............................................<a href="#page-4">4</a>
<a href="#section-2.2">2.2</a>. OpCode Assignment ..........................................<a href="#page-4">4</a>
<a href="#section-2.3">2.3</a>. RCODE Assignment ...........................................<a href="#page-4">4</a>
<a href="#section-3">3</a>. DNS Resource Records ............................................<a href="#page-6">6</a>
<a href="#section-3.1">3.1</a>. RRTYPE IANA Considerations .................................<a href="#page-7">7</a>
<a href="#section-3.1.1">3.1.1</a>. DNS RRTYPE Allocation Policy ........................<a href="#page-8">8</a>
<a href="#section-3.1.2">3.1.2</a>. DNS RRTYPE Expert Guidelines ........................<a href="#page-9">9</a>
<a href="#section-3.1.3">3.1.3</a>. Special Note on the OPT RR ..........................<a href="#page-9">9</a>
<a href="#section-3.1.4">3.1.4</a>. The AFSDB RR Subtype Field .........................<a href="#page-10">10</a>
<a href="#section-3.2">3.2</a>. RR CLASS IANA Considerations ..............................<a href="#page-10">10</a>
<a href="#section-3.3">3.3</a>. Label Considerations ......................................<a href="#page-12">12</a>
<a href="#section-3.3.1">3.3.1</a>. Label Types ........................................<a href="#page-12">12</a>
<a href="#section-3.3.2">3.3.2</a>. Label Contents and Use .............................<a href="#page-12">12</a>
<a href="#section-4">4</a>. Security Considerations ........................................<a href="#page-13">13</a>
<a href="#section-5">5</a>. IANA Considerations ............................................<a href="#page-13">13</a>
<a href="#appendix-A">Appendix A</a>. RRTYPE Allocation Template ............................<a href="#page-14">14</a>
Normative References ..............................................<a href="#page-15">15</a>
Informative References ............................................<a href="#page-16">16</a>
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>. Introduction</span>
The Domain Name System (DNS) provides replicated distributed secure
hierarchical databases that store "resource records" (RRs) under
domain names. DNS data is structured into CLASSes and zones that can
be independently maintained. See [<a href="./rfc1034" title=""Domain names - concepts and facilities"">RFC1034</a>], [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>], [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>],
[<a href="./rfc2181" title=""Clarifications to the DNS Specification"">RFC2181</a>], and [<a href="./rfc4033" title=""DNS Security Introduction and Requirements"">RFC4033</a>], familiarity with which is assumed.
This document provides, either directly or by reference, the general
IANA parameter assignment considerations that apply across DNS query
and response headers and all RRs. There may be additional IANA
considerations that apply to only a particular RRTYPE or
query/response OpCode. See the specific RFC defining that RRTYPE or
query/response OpCode for such considerations if they have been
defined, except for AFSDB RR considerations [<a href="./rfc1183" title=""New DNS RR Definitions"">RFC1183</a>], which are
included herein. This RFC obsoletes [<a href="./rfc2929" title=""Domain Name System (DNS) IANA Considerations"">RFC2929</a>].
IANA currently maintains a web page of DNS parameters available from
<a href="http://www.iana.org">http://www.iana.org</a>.
<span class="h3"><a class="selflink" id="section-1.1" href="#section-1.1">1.1</a>. Terminology</span>
"IETF Standards Action", "IETF Review", "Specification Required", and
"Private Use" are as defined in [<a href="./rfc5226" title="">RFC5226</a>].
<span class="grey">Eastlake Best Current Practice [Page 2]</span>
<span id="page-3" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>. DNS Query/Response Headers</span>
The header for DNS queries and responses contains field/bits in the
following diagram taken from [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>] and [<a href="./rfc2929" title=""Domain Name System (DNS) IANA Considerations"">RFC2929</a>]:
1 1 1 1 1 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ID |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|QR| OpCode |AA|TC|RD|RA| Z|AD|CD| RCODE |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| QDCOUNT/ZOCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ANCOUNT/PRCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| NSCOUNT/UPCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ARCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
The ID field identifies the query and is echoed in the response so
they can be matched.
The QR bit indicates whether the header is for a query or a response.
The AA, TC, RD, RA, AD, and CD bits are each theoretically meaningful
only in queries or only in responses, depending on the bit. However,
some DNS implementations copy the query header as the initial value
of the response header without clearing bits. Thus, any attempt to
use a "query" bit with a different meaning in a response or to define
a query meaning for a "response" bit is dangerous, given existing
implementation. Such meanings may only be assigned by an IETF
Standards Action.
The unsigned integer fields query count (QDCOUNT), answer count
(ANCOUNT), authority count (NSCOUNT), and additional information
count (ARCOUNT) express the number of records in each section for all
OpCodes except Update [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]. These fields have the same
structure and data type for Update but are instead the counts for the
zone (ZOCOUNT), prerequisite (PRCOUNT), update (UPCOUNT), and
additional information (ARCOUNT) sections.
<span class="grey">Eastlake Best Current Practice [Page 3]</span>
<span id="page-4" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h3"><a class="selflink" id="section-2.1" href="#section-2.1">2.1</a>. One Spare Bit?</span>
There have been ancient DNS implementations for which the Z bit being
on in a query meant that only a response from the primary server for
a zone is acceptable. It is believed that current DNS
implementations ignore this bit.
Assigning a meaning to the Z bit requires an IETF Standards Action.
<span class="h3"><a class="selflink" id="section-2.2" href="#section-2.2">2.2</a>. OpCode Assignment</span>
Currently DNS OpCodes are assigned as follows:
OpCode Name Reference
0 Query [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
1 IQuery (Inverse Query, Obsolete) [<a href="./rfc3425" title=""Obsoleting IQUERY"">RFC3425</a>]
2 Status [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
3 available for assignment
4 Notify [<a href="./rfc1996" title=""A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)"">RFC1996</a>]
5 Update [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
6-15 available for assignment
New OpCode assignments require an IETF Standards Action as modified
by [<a href="./rfc4020" title=""Early IANA Allocation of Standards Track Code Points"">RFC4020</a>].
<span class="h3"><a class="selflink" id="section-2.3" href="#section-2.3">2.3</a>. RCODE Assignment</span>
It would appear from the DNS header above that only four bits of
RCODE, or response/error code, are available. However, RCODEs can
appear not only at the top level of a DNS response but also inside
OPT RRs [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>], TSIG RRs [<a href="./rfc2845" title=""Secret Key Transaction Authentication for DNS (TSIG)"">RFC2845</a>], and TKEY RRs [<a href="./rfc2930" title=""Secret Key Establishment for DNS (TKEY RR)"">RFC2930</a>]. The
OPT RR provides an 8-bit extension resulting in a 12-bit RCODE field,
and the TSIG and TKEY RRs have a 16-bit RCODE field.
<span class="grey">Eastlake Best Current Practice [Page 4]</span>
<span id="page-5" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
Error codes appearing in the DNS header and in these three RR types
all refer to the same error code space with the single exception of
error code 16, which has a different meaning in the OPT RR from its
meaning in other contexts. See table below.
RCODE Name Description Reference
Decimal
Hexadecimal
0 NoError No Error [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
1 FormErr Format Error [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
2 ServFail Server Failure [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
3 NXDomain Non-Existent Domain [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
4 NotImp Not Implemented [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
5 Refused Query Refused [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>]
6 YXDomain Name Exists when it should not [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
7 YXRRSet RR Set Exists when it should not [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
8 NXRRSet RR Set that should exist does not [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
9 NotAuth Server Not Authoritative for zone [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
10 NotZone Name not contained in zone [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>]
11 - 15 Available for assignment
16 BADVERS Bad OPT Version [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>]
16 BADSIG TSIG Signature Failure [<a href="./rfc2845" title=""Secret Key Transaction Authentication for DNS (TSIG)"">RFC2845</a>]
17 BADKEY Key not recognized [<a href="./rfc2845" title=""Secret Key Transaction Authentication for DNS (TSIG)"">RFC2845</a>]
18 BADTIME Signature out of time window [<a href="./rfc2845" title=""Secret Key Transaction Authentication for DNS (TSIG)"">RFC2845</a>]
19 BADMODE Bad TKEY Mode [<a href="./rfc2930" title=""Secret Key Establishment for DNS (TKEY RR)"">RFC2930</a>]
20 BADNAME Duplicate key name [<a href="./rfc2930" title=""Secret Key Establishment for DNS (TKEY RR)"">RFC2930</a>]
21 BADALG Algorithm not supported [<a href="./rfc2930" title=""Secret Key Establishment for DNS (TKEY RR)"">RFC2930</a>]
22 BADTRUC Bad Truncation [<a href="./rfc4635" title=""HMAC SHA (Hashed Message Authentication Code, Secure Hash Algorithm) TSIG Algorithm Identifiers"">RFC4635</a>]
23 - 3,840
0x0017 - 0x0F00 Available for assignment
3,841 - 4,095
0x0F01 - 0x0FFF Private Use
4,096 - 65,534
0x1000 - 0xFFFE Available for assignment
65,535
0xFFFF Reserved, can only be allocated by an IETF
Standards Action.
Since it is important that RCODEs be understood for interoperability,
assignment of new RCODE listed above as "available for assignment"
requires an IETF Review.
<span class="grey">Eastlake Best Current Practice [Page 5]</span>
<span id="page-6" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>. DNS Resource Records</span>
All RRs have the same top-level format, shown in the figure below
taken from [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>].
1 1 1 1 1 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| |
/ /
/ NAME /
/ /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| TYPE |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| CLASS |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| TTL |
| |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| RDLENGTH |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--|
/ RDATA /
/ /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
NAME is an owner name, i.e., the name of the node to which this
resource record pertains. NAMEs are specific to a CLASS as described
in <a href="#section-3.2">section 3.2</a>. NAMEs consist of an ordered sequence of one or more
labels, each of which has a label type [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>] [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>].
TYPE is a 2-octet unsigned integer containing one of the RRTYPE
codes. See <a href="#section-3.1">section 3.1</a>.
CLASS is a 2-octet unsigned integer containing one of the RR CLASS
codes. See <a href="#section-3.2">section 3.2</a>.
TTL is a 4-octet (32-bit) unsigned integer that specifies, for data
TYPEs, the number of seconds that the resource record may be cached
before the source of the information should again be consulted. Zero
is interpreted to mean that the RR can only be used for the
transaction in progress.
RDLENGTH is an unsigned 16-bit integer that specifies the length in
octets of the RDATA field.
<span class="grey">Eastlake Best Current Practice [Page 6]</span>
<span id="page-7" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
RDATA is a variable length string of octets that constitutes the
resource. The format of this information varies according to the
TYPE and, in some cases, the CLASS of the resource record.
<span class="h3"><a class="selflink" id="section-3.1" href="#section-3.1">3.1</a>. RRTYPE IANA Considerations</span>
There are three subcategories of RRTYPE numbers: data TYPEs, QTYPEs,
and Meta-TYPEs.
Data TYPEs are the means of storing data. QTYPES can only be used in
queries. Meta-TYPEs designate transient data associated with a
particular DNS message and, in some cases, can also be used in
queries. Thus far, data TYPEs have been assigned from 1 upward plus
the block from 100 through 103 and from 32,768 upward, while Q and
Meta-TYPEs have been assigned from 255 downward except for the OPT
Meta-RR, which is assigned TYPE 41. There have been DNS
implementations that made caching decisions based on the top bit of
the bottom byte of the RRTYPE.
There are currently three Meta-TYPEs assigned: OPT [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>], TSIG
[<a href="./rfc2845" title=""Secret Key Transaction Authentication for DNS (TSIG)"">RFC2845</a>], and TKEY [<a href="./rfc2930" title=""Secret Key Establishment for DNS (TKEY RR)"">RFC2930</a>]. There are currently five QTYPEs
assigned: * (ALL), MAILA, MAILB, AXFR, and IXFR.
RRTYPEs have mnemonics that must be completely disjoint from the
mnemonics used for CLASSes and that must match the following regular
expression:
[A-Z][A-Z0-9-]*
Considerations for the allocation of new RRTYPEs are as follows:
Decimal
Hexadecimal
0
0x0000 - RRTYPE zero is used as a special indicator for the SIG (0)
RR [<a href="./rfc2931" title=""DNS Request and Transaction Signatures ( SIG(0)s )"">RFC2931</a>] and in other circumstances, and it must never be
allocated for ordinary use.
1 - 127
0x0001 - 0x007F - Remaining RRTYPEs in this range are assigned for
data TYPEs by the DNS RRTYPE Allocation Policy as specified
in <a href="#section-3.1.1">Section 3.1.1</a>.
128 - 255
0x0080 - 0x00FF - Remaining RRTYPEs in this range are assigned for Q
and Meta TYPEs by the DNS RRTYPE Allocation Policy as
specified in <a href="#section-3.1.1">Section 3.1.1</a>.
<span class="grey">Eastlake Best Current Practice [Page 7]</span>
<span id="page-8" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
256 - 61,439
0x0100 - 0xEFFF - Remaining RRTYPEs in this range are assigned for
data RRTYPEs by the DNS RRTYPE Allocation Policy as
specified in <a href="#section-3.1.1">Section 3.1.1</a>. (32,768 and 32,769 (0x8000 and
0x8001) have been assigned.)
61,440 - 65,279
0xF000 - 0xFEFF - Reserved for future use. IETF Review required to
define use.
65,280 - 65,534
0xFF00 - 0xFFFE - Private Use.
65,535
0xFFFF - Reserved; can only be assigned by an IETF Standards Action.
<span class="h4"><a class="selflink" id="section-3.1.1" href="#section-3.1.1">3.1.1</a>. DNS RRTYPE Allocation Policy</span>
Parameter values specified in <a href="#section-3.1">Section 3.1</a> above, as assigned based on
DNS RRTYPE Allocation Policy, are allocated by Expert Review if they
meet the two requirements listed below. There will be a pool of a
small number of Experts appointed by the IESG. Each application will
be ruled on by an Expert selected by IANA. In any case where the
selected Expert is unavailable or states they have a conflict of
interest, IANA may select another Expert from the pool.
Some guidelines for the Experts are given in <a href="#section-3.1.2">Section 3.1.2</a>. RRTYPEs
that do not meet the requirements below may nonetheless be allocated
by IETF Standards Action as modified by [<a href="./rfc4020" title=""Early IANA Allocation of Standards Track Code Points"">RFC4020</a>].
1. A complete template as specified in <a href="#appendix-A">Appendix A</a> has been posted for
three weeks to the [email protected] mailing list before
the Expert Review decision.
Note that partially completed or draft templates may be posted
directly by the applicant for comment and discussion, but the
formal posting to start the three week period is made by the
Expert.
2. The RR for which an RRTYPE code is being requested is either (a) a
data TYPE that can be handled as an Unknown RR as described in
[<a href="./rfc3597" title=""Handling of Unknown DNS Resource Record (RR) Types"">RFC3597</a>] or (b) a Meta-Type whose processing is optional, i.e.,
it is safe to simply discard RRs with that Meta-Type in queries or
responses.
Note that such RRs may include additional section processing,
provided such processing is optional.
<span class="grey">Eastlake Best Current Practice [Page 8]</span>
<span id="page-9" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
No less than three weeks and no more than six weeks after a completed
template has been formally posted to [email protected], the
selected Expert shall post a message, explicitly accepting or
rejecting the application, to IANA, [email protected], and
the email address provided by the applicant. If the Expert does not
post such a message, the application shall be considered rejected but
may be re-submitted to IANA.
IANA shall maintain a public archive of approved templates.
<span class="h4"><a class="selflink" id="section-3.1.2" href="#section-3.1.2">3.1.2</a>. DNS RRTYPE Expert Guidelines</span>
The selected DNS RRTYPE Expert is required to monitor discussion of
the proposed RRTYPE, which may occur on the [email protected]
mailing list, and may consult with other technical experts as
necessary. The Expert should normally reject any RRTYPE allocation
request that meets one or more of the following criterion:
1. Was documented in a manner that was not sufficiently clear to
evaluate or implement.
2. The proposed RRTYPE or RRTYPEs affect DNS processing and do not
meet the criteria in point 2 of <a href="#section-3.1.1">Section 3.1.1</a> above.
3. The documentation of the proposed RRTYPE or RRTYPEs is incomplete.
(Additional documentation can be provided during the public
comment period or by the Expert.)
4. Application use as documented makes incorrect assumptions about
DNS protocol behavior, such as wild cards, CNAME, DNAME, etc.
5. An excessive number of RRTYPE values is being requested when the
purpose could be met with a smaller number or with Private Use
values.
<span class="h4"><a class="selflink" id="section-3.1.3" href="#section-3.1.3">3.1.3</a>. Special Note on the OPT RR</span>
The OPT (OPTion) RR (RRTYPE 41) and its IANA Considerations are
specified in [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>]. Its primary purpose is to extend the
effective field size of various DNS fields including RCODE, label
type, OpCode, flag bits, and RDATA size. In particular, for
resolvers and servers that recognize it, it extends the RCODE field
from 4 to 12 bits.
<span class="grey">Eastlake Best Current Practice [Page 9]</span>
<span id="page-10" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h4"><a class="selflink" id="section-3.1.4" href="#section-3.1.4">3.1.4</a>. The AFSDB RR Subtype Field</span>
The AFSDB RR [<a href="./rfc1183" title=""New DNS RR Definitions"">RFC1183</a>] is a CLASS-insensitive RR that has the same
RDATA field structure as the MX RR, but the 16-bit unsigned integer
field at the beginning of the RDATA is interpreted as a subtype as
follows:
Decimal
Hexadecimal
0
0x0000 - Reserved; allocation requires IETF Standards Action.
1
0x0001 - Andrews File Service v3.0 Location Service [<a href="./rfc1183" title=""New DNS RR Definitions"">RFC1183</a>].
2
0x0002 - DCE/NCA root cell directory node [<a href="./rfc1183" title=""New DNS RR Definitions"">RFC1183</a>].
3 - 65,279
0x0003 - 0xFEFF - Allocation by IETF Review.
65,280 - 65,534
0xFF00 - 0xFFFE - Private Use.
65,535
0xFFFF - Reserved; allocation requires IETF Standards Action.
<span class="h3"><a class="selflink" id="section-3.2" href="#section-3.2">3.2</a>. RR CLASS IANA Considerations</span>
There are currently two subcategories of DNS CLASSes: normal,
data-containing classes and QCLASSes that are only meaningful in
queries or updates.
DNS CLASSes have been little used but constitute another dimension of
the DNS distributed database. In particular, there is no necessary
relationship between the name space or root servers for one data
CLASS and those for another data CLASS. The same DNS NAME can have
completely different meanings in different CLASSes. The label types
are the same, and the null label is usable only as root in every
CLASS. As global networking and DNS have evolved, the IN, or
Internet, CLASS has dominated DNS use.
As yet there has not be a requirement for "meta-CLASSes". That would
be a CLASS to designate transient data associated with a particular
DNS message, which might be usable in queries. However, it is
possible that there might be a future requirement for one or more
"meta-CLASSes".
<span class="grey">Eastlake Best Current Practice [Page 10]</span>
<span id="page-11" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
CLASSes have mnemonics that must be completely disjoint from the
mnemonics used for RRTYPEs and that must match the following regular
expression:
[A-Z][A-Z0-9-]*
The current CLASS assignments and considerations for future
assignments are as follows:
Decimal
Hexadecimal
0
0x0000 - Reserved; assignment requires an IETF Standards Action.
1
0x0001 - Internet (IN).
2
0x0002 - Available for assignment by IETF Review as a data CLASS.
3
0x0003 - Chaos (CH) [<a href="#ref-Moon1981" title=""Chaosnet"">Moon1981</a>].
4
0x0004 - Hesiod (HS) [<a href="#ref-Dyer1987" title=""Hesiod"">Dyer1987</a>].
5 - 127
0x0005 - 0x007F - Available for assignment by IETF Review for data
CLASSes only.
128 - 253
0x0080 - 0x00FD - Available for assignment by IETF Review for
QCLASSes and meta-CLASSes only.
254
0x00FE - QCLASS NONE [<a href="./rfc2136" title=""Dynamic Updates in the Domain Name System (DNS UPDATE)"">RFC2136</a>].
255
0x00FF - QCLASS * (ANY) [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>].
256 - 32,767
0x0100 - 0x7FFF - Assigned by IETF Review.
32,768 - 57,343
0x8000 - 0xDFFF - Assigned for data CLASSes only, based on
Specification Required as defined in [<a href="./rfc5226" title="">RFC5226</a>].
<span class="grey">Eastlake Best Current Practice [Page 11]</span>
<span id="page-12" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
57,344 - 65,279
0xE000 - 0xFEFF - Assigned for QCLASSes and meta-CLASSes only, based
on Specification Required as defined in [<a href="./rfc5226" title="">RFC5226</a>].
65,280 - 65,534
0xFF00 - 0xFFFE - Private Use.
65,535
0xFFFF - Reserved; can only be assigned by an IETF Standards Action.
<span class="h3"><a class="selflink" id="section-3.3" href="#section-3.3">3.3</a>. Label Considerations</span>
DNS NAMEs are sequences of labels [<a href="./rfc1035" title=""Domain names - implementation and specification"">RFC1035</a>].
<span class="h4"><a class="selflink" id="section-3.3.1" href="#section-3.3.1">3.3.1</a>. Label Types</span>
At the present time, there are two categories of label types: data
labels and compression labels. Compression labels are pointers to
data labels elsewhere within an RR or DNS message and are intended to
shorten the wire encoding of NAMEs.
The two existing data label types are sometimes referred to as Text
and Binary. Text labels can, in fact, include any octet value
including zero-value octets, but many current uses involve only
[<a href="#ref-US-ASCII" title=""USA Standard Code for Information Interchange"">US-ASCII</a>]. For retrieval, Text labels are defined to treat ASCII
upper and lower case letter codes as matching [<a href="./rfc4343" title=""Domain Name System (DNS) Case Insensitivity Clarification"">RFC4343</a>]. Binary
labels are bit sequences [<a href="./rfc2673" title=""Binary Labels in the Domain Name System"">RFC2673</a>]. The Binary label type is
Experimental [<a href="./rfc3363" title=""Representing Internet Protocol version 6 (IPv6) Addresses in the Domain Name System (DNS)"">RFC3363</a>].
IANA considerations for label types are given in [<a href="./rfc2671" title=""Extension Mechanisms for DNS (EDNS0)"">RFC2671</a>].
<span class="h4"><a class="selflink" id="section-3.3.2" href="#section-3.3.2">3.3.2</a>. Label Contents and Use</span>
The last label in each NAME is "ROOT", which is the zero-length
label. By definition, the null or ROOT label cannot be used for any
other NAME purpose.
NAMEs are local to a CLASS. The Hesiod [<a href="#ref-Dyer1987" title=""Hesiod"">Dyer1987</a>] and Chaos
[<a href="#ref-Moon1981" title=""Chaosnet"">Moon1981</a>] CLASSes are for essentially local use. The IN, or
Internet, CLASS is thus the only DNS CLASS in global use on the
Internet at this time.
A somewhat out-of-date description of name allocation in the IN Class
is given in [<a href="./rfc1591" title=""Domain Name System Structure and Delegation"">RFC1591</a>]. Some information on reserved top-level domain
names is in <a href="https://www.rfc-editor.org/bcp/bcp32">BCP 32</a> [<a href="./rfc2606" title=""Reserved Top Level DNS Names"">RFC2606</a>].
<span class="grey">Eastlake Best Current Practice [Page 12]</span>
<span id="page-13" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. Security Considerations</span>
This document addresses IANA considerations in the allocation of
general DNS parameters, not security. See [<a href="./rfc4033" title=""DNS Security Introduction and Requirements"">RFC4033</a>], [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>], and
[<a href="./rfc4035" title=""Protocol Modifications for the DNS Security Extensions"">RFC4035</a>] for secure DNS considerations.
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>. IANA Considerations</span>
This document consists entirely of DNS IANA Considerations and
includes the following changes from its predecessor [<a href="./rfc2929" title=""Domain Name System (DNS) IANA Considerations"">RFC2929</a>]. It
affects the DNS Parameters registry and its subregistries, which are
available from <a href="http://www.iana.org">http://www.iana.org</a>.
1. In the Domain Name System "Resource record (RR) TYPES and QTYPEs"
registry, it changes most "IETF Consensus" and all "Specification
Required" allocation policies for RRTYPEs to be "DNS TYPE
Allocation Policy" and changes the policy for RRTYPE 0xFFFF to be
"IETF Standards Action". Remaining instances of "IETF Consensus"
are changed to "IETF Review", per [<a href="./rfc5226" title="">RFC5226</a>]. It also specifies
the "DNS TYPE Allocation Policy", which is based on Expert Review
with additional provisions and restrictions, including the
submittal of a completed copy of the template in <a href="#appendix-A">Appendix A</a> to
[email protected], in most cases, and requires
"IETF Standards Action" as modified by [<a href="./rfc4020" title=""Early IANA Allocation of Standards Track Code Points"">RFC4020</a>] in other cases.
IANA shall establish a process for accepting such templates,
selecting an Expert from those appointed to review such template
form applications, archiving, and making available all approved
RRTYPE allocation templates. It is the duty of the selected
Expert to post the formal application template to the
[email protected] mailing list. See <a href="#section-3.1">Section 3.1</a> and
<a href="#appendix-A">Appendix A</a> for more details.
2. For OpCodes (see <a href="#section-2.2">Section 2.2</a>), it changes "IETF Standards Action"
allocation requirements to add "as modified by [<a href="./rfc4020" title=""Early IANA Allocation of Standards Track Code Points"">RFC4020</a>]".
3. It changes the allocation status of RCODE 0xFFFF to be "IETF
Standards Action required". See <a href="#section-2.3">Section 2.3</a>.
4. It adds an IANA allocation policy for the AFSDB RR Subtype field,
which requires the creation of a new registry. See <a href="#section-3.1.4">Section 3.1.4</a>.
5. It splits Specification Required CLASSes into data CLASSes and
query or meta CLASSes. See <a href="#section-3.2">Section 3.2</a>.
<span class="grey">Eastlake Best Current Practice [Page 13]</span>
<span id="page-14" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
<span class="h2"><a class="selflink" id="appendix-A" href="#appendix-A">Appendix A</a>. RRTYPE Allocation Template</span>
DNS RRTYPE PARAMETER ALLOCATION TEMPLATE
When ready for formal consideration, this template is to be submitted
to IANA for processing by emailing the template to
[email protected].
A. Submission Date:
B. Submission Type:
[ ] New RRTYPE
[ ] Modification to existing RRTYPE
C. Contact Information for submitter:
Name:
Email Address:
International telephone number:
Other contact handles:
(Note: This information will be publicly posted.)
D. Motivation for the new RRTYPE application?
Please keep this part at a high level to inform the Expert and
reviewers about uses of the RRTYPE. Remember most reviewers
will be DNS experts that may have limited knowledge of your
application space.
E. Description of the proposed RR type.
This description can be provided in-line in the template, as an
attachment, or with a publicly available URL:
F. What existing RRTYPE or RRTYPEs come closest to filling that
need and why are they unsatisfactory?
G. What mnemonic is requested for the new RRTYPE (optional)?
Note: This can be left blank and the mnemonic decided after the
template is accepted.
H. Does the requested RRTYPE make use of any existing IANA
Registry or require the creation of a new IANA sub-registry in
DNS Parameters?
If so, please indicate which registry is to be used or created.
If a new sub-registry is needed, specify the allocation policy
for it and its initial contents. Also include what the
modification procedures will be.
<span class="grey">Eastlake Best Current Practice [Page 14]</span>
<span id="page-15" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
I. Does the proposal require/expect any changes in DNS
servers/resolvers that prevent the new type from being
processed as an unknown RRTYPE (see [<a href="./rfc3597" title=""Handling of Unknown DNS Resource Record (RR) Types"">RFC3597</a>])?
J. Comments:
Normative References
[<a id="ref-RFC1034">RFC1034</a>] Mockapetris, P., "Domain names - concepts and
facilities", STD 13, <a href="./rfc1034">RFC 1034</a>, November 1987.
[<a id="ref-RFC1035">RFC1035</a>] Mockapetris, P., "Domain names - implementation and
specification", STD 13, <a href="./rfc1035">RFC 1035</a>, November 1987.
[<a id="ref-RFC1996">RFC1996</a>] Vixie, P., "A Mechanism for Prompt Notification of Zone
Changes (DNS NOTIFY)", <a href="./rfc1996">RFC 1996</a>, August 1996.
[<a id="ref-RFC2136">RFC2136</a>] Vixie, P., Ed., Thomson, S., Rekhter, Y., and J. Bound,
"Dynamic Updates in the Domain Name System (DNS UPDATE)",
<a href="./rfc2136">RFC 2136</a>, April 1997.
[<a id="ref-RFC2181">RFC2181</a>] Elz, R. and R. Bush, "Clarifications to the DNS
Specification", <a href="./rfc2181">RFC 2181</a>, July 1997.
[<a id="ref-RFC2671">RFC2671</a>] Vixie, P., "Extension Mechanisms for DNS (EDNS0)", <a href="./rfc2671">RFC</a>
<a href="./rfc2671">2671</a>, August 1999.
[<a id="ref-RFC2845">RFC2845</a>] Vixie, P., Gudmundsson, O., Eastlake 3rd, D., and B.
Wellington, "Secret Key Transaction Authentication for
DNS (TSIG)", <a href="./rfc2845">RFC 2845</a>, May 2000.
[<a id="ref-RFC2930">RFC2930</a>] Eastlake 3rd, D., "Secret Key Establishment for DNS (TKEY
RR)", <a href="./rfc2930">RFC 2930</a>, September 2000.
[<a id="ref-RFC3425">RFC3425</a>] Lawrence, D., "Obsoleting IQUERY", <a href="./rfc3425">RFC 3425</a>, November
2002.
[<a id="ref-RFC3597">RFC3597</a>] Gustafsson, A., "Handling of Unknown DNS Resource Record
(RR) Types", <a href="./rfc3597">RFC 3597</a>, September 2003.
[<a id="ref-RFC4020">RFC4020</a>] Kompella, K. and A. Zinin, "Early IANA Allocation of
Standards Track Code Points", <a href="https://www.rfc-editor.org/bcp/bcp100">BCP 100</a>, <a href="./rfc4020">RFC 4020</a>, February
2005.
[<a id="ref-RFC4033">RFC4033</a>] Arends, R., Austein, R., Larson, M., Massey, D., and S.
Rose, "DNS Security Introduction and Requirements", <a href="./rfc4033">RFC</a>
<a href="./rfc4033">4033</a>, March 2005.
<span class="grey">Eastlake Best Current Practice [Page 15]</span>
<span id="page-16" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
[<a id="ref-RFC4034">RFC4034</a>] Arends, R., Austein, R., Larson, M., Massey, D., and S.
Rose, "Resource Records for the DNS Security Extensions",
<a href="./rfc4034">RFC 4034</a>, March 2005.
[<a id="ref-RFC4035">RFC4035</a>] Arends, R., Austein, R., Larson, M., Massey, D., and S.
Rose, "Protocol Modifications for the DNS Security
Extensions", <a href="./rfc4035">RFC 4035</a>, March 2005.
[<a id="ref-RFC4635">RFC4635</a>] Eastlake 3rd, D., "HMAC SHA (Hashed Message
Authentication Code, Secure Hash Algorithm) TSIG
Algorithm Identifiers", <a href="./rfc4635">RFC 4635</a>, August 2006.
[<a id="ref-RFC5226">RFC5226</a>] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", <a href="https://www.rfc-editor.org/bcp/bcp26">BCP 26</a>, <a href="./rfc5226">RFC 5226</a>,
May 2008.
[<a id="ref-US-ASCII">US-ASCII</a>] ANSI, "USA Standard Code for Information Interchange",
X3.4, American National Standards Institute: New York,
1968.
Informative References
[<a id="ref-Dyer1987">Dyer1987</a>] Dyer, S., and F. Hsu, "Hesiod", Project Athena Technical
Plan - Name Service, April 1987.
[<a id="ref-Moon1981">Moon1981</a>] Moon, D., "Chaosnet", A.I. Memo 628, Massachusetts
Institute of Technology Artificial Intelligence
Laboratory, June 1981.
[<a id="ref-RFC1183">RFC1183</a>] Everhart, C., Mamakos, L., Ullmann, R., and P.
Mockapetris, "New DNS RR Definitions", <a href="./rfc1183">RFC 1183</a>, October
1990.
[<a id="ref-RFC1591">RFC1591</a>] Postel, J., "Domain Name System Structure and
Delegation", <a href="./rfc1591">RFC 1591</a>, March 1994.
[<a id="ref-RFC2606">RFC2606</a>] Eastlake 3rd, D. and A. Panitz, "Reserved Top Level DNS
Names", <a href="https://www.rfc-editor.org/bcp/bcp32">BCP 32</a>, <a href="./rfc2606">RFC 2606</a>, June 1999.
[<a id="ref-RFC2673">RFC2673</a>] Crawford, M., "Binary Labels in the Domain Name System",
<a href="./rfc2673">RFC 2673</a>, August 1999.
[<a id="ref-RFC2929">RFC2929</a>] Eastlake 3rd, D., Brunner-Williams, E., and B. Manning,
"Domain Name System (DNS) IANA Considerations", <a href="https://www.rfc-editor.org/bcp/bcp42">BCP 42</a>,
<a href="./rfc2929">RFC 2929</a>, September 2000.
[<a id="ref-RFC2931">RFC2931</a>] Eastlake 3rd, D., "DNS Request and Transaction Signatures
( SIG(0)s )", <a href="./rfc2931">RFC 2931</a>, September 2000.
<span class="grey">Eastlake Best Current Practice [Page 16]</span>
<span id="page-17" ></span>
<span class="grey"><a href="./rfc5395">RFC 5395</a> DNS IANA Considerations November 2008</span>
[<a id="ref-RFC3363">RFC3363</a>] Bush, R., Durand, A., Fink, B., Gudmundsson, O., and T.
Hain, "Representing Internet Protocol version 6 (IPv6)
Addresses in the Domain Name System (DNS)", <a href="./rfc3363">RFC 3363</a>,
August 2002.
[<a id="ref-RFC4343">RFC4343</a>] Eastlake 3rd, D., "Domain Name System (DNS) Case
Insensitivity Clarification", <a href="./rfc4343">RFC 4343</a>, January 2006.
Author's Address
Donald E. Eastlake 3rd
Stellar Switches
155 Beaver Street
Milford, MA 01757 USA
Phone: +1-508-634-2066 (h)
EMail: [email protected]
Eastlake Best Current Practice [Page 17]
Annotations
Select text to annotate