draft-ietf-dnsext-2929bis-00.txt   draft-ietf-dnsext-2929bis-01.txt 
INTERNET-DRAFT Donald E. Eastlake 3rd INTERNET-DRAFT Donald E. Eastlake 3rd
Obsoletes RFC 2929, Updates RFC 1183 Motorola Laboratories Obsoletes RFC 2929, Updates RFC 1183 Motorola Laboratories
Expires: January 2006 July 2005 Expires: February 2006 August 2005
Domain Name System (DNS) IANA Considerations Domain Name System (DNS) IANA Considerations
------ ---- ------ ----- ---- -------------- ------ ---- ------ ----- ---- --------------
<draft-ietf-dnsext-2929bis-00.txt> <draft-ietf-dnsext-2929bis-01.txt>
Status of This Document Status of This Document
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Distribution of this draft is unlimited. It is intended to become Distribution of this draft is unlimited. It is intended to become
the new BCP 42 obsoleting RFC 2929. Comments should be sent to the the new BCP 42 obsoleting RFC 2929. Comments should be sent to the
skipping to change at page 2, line 13 skipping to change at page 2, line 13
bits, and AFSDB subtypes. bits, and AFSDB subtypes.
Table of Contents Table of Contents
Status of This Document....................................1 Status of This Document....................................1
Abstract...................................................1 Abstract...................................................1
Table of Contents..........................................2 Table of Contents..........................................2
1. Introduction............................................3 1. Introduction............................................3
1.1 The DNS Special Allocation Policy......................3 2. DNS Query/Response Headers..............................3
2. DNS Query/Response Headers..............................4 2.1 One Spare Bit?.........................................4
2.1 One Spare Bit?.........................................5 2.2 Opcode Assignment......................................4
2.2 Opcode Assignment......................................5
2.3 RCODE Assignment.......................................5 2.3 RCODE Assignment.......................................5
3. DNS Resource Records....................................6 3. DNS Resource Records....................................6
3.1 RR TYPE IANA Considerations............................8 3.1 RR TYPE IANA Considerations............................7
3.1.1 Special Note on the OPT RR...........................9 3.1.1 DNS TYPE Allocation Policy...........................8
3.1.2 The AFSDB RR Subtype Field...........................9 3.1.2 Special Note on the OPT RR...........................9
3.1.3 The AFSDB RR Subtype Field...........................9
3.2 RR CLASS IANA Considerations...........................9 3.2 RR CLASS IANA Considerations...........................9
3.3 RR NAME Considerations................................11 3.3 RR NAME Considerations................................11
4. Security Considerations................................11 4. Security Considerations................................11
Appendix A: DNS Special Allocation Template...............12
Appendix B: Changes from RFC 2929.........................13 Appendix: Changes from RFC 2929...........................12
Copyright and Disclaimer..................................14 Copyright and Disclaimer..................................13
Normative References......................................14 Normative References......................................13
Informative References....................................15 Informative References....................................14
Author's Address..........................................17 Authors Addresses.........................................16
Expiration and File Name..................................17 Expiration and File Name..................................16
1. Introduction 1. Introduction
The Domain Name System (DNS) provides replicated distributed secure The Domain Name System (DNS) provides replicated distributed secure
hierarchical databases which hierarchically store "resource records" hierarchical databases which hierarchically store "resource records"
(RRs) under domain names. DNS data is structured into CLASSes and (RRs) under domain names. DNS data is structured into CLASSes and
zones which can be independently maintained. See [RFC 1034, 1035, zones which can be independently maintained. See [RFC 1034, 1035,
2136, 2181, 4033] familiarity with which is assumed. 2136, 2181, 4033] familiarity with which is assumed.
This document provides, either directly or by reference, general IANA This document provides, either directly or by reference, general IANA
parameter assignment considerations applying across DNS query and parameter assignment considerations applying across DNS query and
response headers and all RRs. There may be additional IANA response headers and all RRs. There may be additional IANA
considerations that apply to only a particular RR type or considerations that apply to only a particular RR type or
query/response opcode. See the specific RFC defining that RR type or query/response opcode. See the specific RFC defining that RR type or
query/response opcode for such considerations if they have been query/response opcode for such considerations if they have been
defined, except for AFSDB RR considerations [RFC 1183] which are defined, except for AFSDB RR considerations [RFC 1183] which are
included herein. This RFC replaces [RFC 2929]. included herein. This RFC obsoletes [RFC 2929].
IANA currently maintains a web page of DNS parameters. See IANA currently maintains a web page of DNS parameters. See
<http://www.iana.org/numbers.htm>. <http://www.iana.org/numbers.htm>.
"IETF Standards Action", "IETF Consensus", "Specification Required", "IETF Standards Action", "IETF Consensus", "Specification Required",
and "Private Use" are as defined in [RFC 2434]. and "Private Use" are as defined in [RFC 2434].
1.1 The DNS Special Allocation Policy
Many DNS parameters are allocated by IANA based on the DNS special
policy. This policy authorizes IANA allocation base on meeting any of
the following three criteria:
1. An IETF Standards Action.
2. Approval as an Experimental Protocol.
3. As provided in [RFC 4020] for Early Allocation except that the
criteria in Section 2 of [RFC 4020] are completely replaced by the
following criteria:
3.a: The format, semantics, processing, and other rules related to
handling the protocol entities defined by the code points (the
"specifications") are adequately described in an Internet draft
that is intended to become Standards Track or Experimental.
3.b: The Template provided in Appendix A has been completed and
posted to the namedroppers@ops.ietf.org mailing list no more
than three months before the allocation action. In addition, if
the Template is new or incorporates any changes from a previously
posted template for the same allocation, at least two weeks must
elapse after the template is posted before the allocation action.
3.c: There is sufficient interest in and need for early (pre-RFC)
implementation and deployment in the community as determined by
either
3.c.i: working group consensus and approval by the working group
Area Director, or
3.c.ii: for a non-working-group draft, approval by two Area
Directors.
2. DNS Query/Response Headers 2. DNS Query/Response Headers
The header for DNS queries and responses contains field/bits in The header for DNS queries and responses contains field/bits in the
the following diagram taken from [RFC 2136, 2929]: following diagram taken from [RFC 2136, 2929]:
1 1 1 1 1 1 1 1 1 1 1 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ID | | ID |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|QR| Opcode |AA|TC|RD|RA| Z|AD|CD| RCODE | |QR| Opcode |AA|TC|RD|RA| Z|AD|CD| RCODE |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| QDCOUNT/ZOCOUNT | | QDCOUNT/ZOCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ANCOUNT/PRCOUNT | | ANCOUNT/PRCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| NSCOUNT/UPCOUNT | | NSCOUNT/UPCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ARCOUNT | | ARCOUNT |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
The ID field identifies the query and is echoed in the response The ID field identifies the query and is echoed in the response so
so they can be matched. they can be matched.
The QR bit indicates whether the header is for a query or a The QR bit indicates whether the header is for a query or a response.
response.
The AA, TC, RD, RA, AD, and CD bits are each theoretically The AA, TC, RD, RA, AD, and CD bits are each theoretically meaningful
meaningful only in queries or only in responses, depending on only in queries or only in responses, depending on the bit. However,
the bit. However, many DNS implementations copy the query many DNS implementations copy the query header as the initial value
header as the initial value of the response header without of the response header without clearing bits. Thus any attempt to
clearing bits. Thus any attempt to use a "query" bit with a use a "query" bit with a different meaning in a response or to define
different meaning in a response or to define a query meaning for a query meaning for a "response" bit is dangerous given existing
a "response" bit is dangerous given existing implementation. implementation. Such meanings may only be assigned by an IETF
Such meanings may only be assigned by an IETF Standards Action. Standards Action.
The unsigned fields query count (QDCOUNT), answer count The unsigned fields query count (QDCOUNT), answer count (ANCOUNT),
(ANCOUNT), authority count (NSCOUNT), and additional information authority count (NSCOUNT), and additional information count (ARCOUNT)
count (ARCOUNT) express the number of records in each section express the number of records in each section for all opcodes except
for all opcodes except Update. These fields have the same Update. These fields have the same structure and data type for
structure and data type for Update but are instead the counts Update but are instead the counts for the zone (ZOCOUNT),
for the zone (ZOCOUNT), prerequisite (PRCOUNT), update prerequisite (PRCOUNT), update (UPCOUNT), and additional information
(UPCOUNT), and additional information (ARCOUNT) sections. (ARCOUNT) sections.
2.1 One Spare Bit? 2.1 One Spare Bit?
There have been ancient DNS implementations for which the Z bit There have been ancient DNS implementations for which the Z bit being
being on in a query meant that only a response from the primary on in a query meant that only a response from the primary server for
server for a zone is acceptable. It is believed that current a zone is acceptable. It is believed that current DNS
DNS implementations ignore this bit. implementations ignore this bit.
Assigning a meaning to the Z bit requires an IETF Standards Assigning a meaning to the Z bit requires an IETF Standards Action.
Action.
2.2 Opcode Assignment 2.2 Opcode Assignment
Currently DNS OpCodes are assigned as follows: Currently DNS OpCodes are assigned as follows:
OpCode Name Reference OpCode Name Reference
0 Query [RFC 1035] 0 Query [RFC 1035]
1 IQuery (Inverse Query, Obsolete) [RFC 3425] 1 IQuery (Inverse Query, Obsolete) [RFC 3425]
2 Status [RFC 1035] 2 Status [RFC 1035]
3 available for assignment 3 available for assignment
4 Notify [RFC 1996] 4 Notify [RFC 1996]
5 Update [RFC 2136] 5 Update [RFC 2136]
6-15 available for assignment 6-15 available for assignment
New OpCode assignments require an IETF Standards Action modified New OpCode assignments require an IETF Standards Action as modified
by [RFC 4020]. by [RFC 4020].
2.3 RCODE Assignment 2.3 RCODE Assignment
It would appear from the DNS header above that only four bits of It would appear from the DNS header above that only four bits of
RCODE, or response/error code are available. However, RCODEs RCODE, or response/error code are available. However, RCODEs can
can appear not only at the top level of a DNS response but also appear not only at the top level of a DNS response but also inside
inside OPT RRs [RFC 2671], TSIG RRs [RFC 2845], and TKEY RRs OPT RRs [RFC 2671], TSIG RRs [RFC 2845], and TKEY RRs [RFC 2930].
[RFC 2930]. The OPT RR provides an eight bit extension The OPT RR provides an eight bit extension resulting in a 12 bit
resulting in a 12 bit RCODE field and the TSIG and TKEY RRs have RCODE field and the TSIG and TKEY RRs have a 16 bit RCODE field.
a 16 bit RCODE field.
Error codes appearing in the DNS header and in these three RR Error codes appearing in the DNS header and in these three RR types
types all refer to the same error code space with the single all refer to the same error code space with the single exception of
exception of error code 16 which has a different meaning in the error code 16 which has a different meaning in the OPT RR from its
OPT RR from its meaning in other contexts. See table below. meaning in other contexts. See table below.
RCODE Name Description Reference RCODE Name Description Reference
Decimal Decimal
Hexadecimal Hexadecimal
0 NoError No Error [RFC 1035] 0 NoError No Error [RFC 1035]
1 FormErr Format Error [RFC 1035] 1 FormErr Format Error [RFC 1035]
2 ServFail Server Failure [RFC 1035] 2 ServFail Server Failure [RFC 1035]
3 NXDomain Non-Existent Domain [RFC 1035] 3 NXDomain Non-Existent Domain [RFC 1035]
4 NotImp Not Implemented [RFC 1035] 4 NotImp Not Implemented [RFC 1035]
5 Refused Query Refused [RFC 1035] 5 Refused Query Refused [RFC 1035]
skipping to change at page 6, line 30 skipping to change at page 5, line 41
9 NotAuth Server Not Authoritative for zone [RFC 2136] 9 NotAuth Server Not Authoritative for zone [RFC 2136]
10 NotZone Name not contained in zone [RFC 2136] 10 NotZone Name not contained in zone [RFC 2136]
11 - 15 Available for assignment 11 - 15 Available for assignment
16 BADVERS Bad OPT Version [RFC 2671] 16 BADVERS Bad OPT Version [RFC 2671]
16 BADSIG TSIG Signature Failure [RFC 2845] 16 BADSIG TSIG Signature Failure [RFC 2845]
17 BADKEY Key not recognized [RFC 2845] 17 BADKEY Key not recognized [RFC 2845]
18 BADTIME Signature out of time window [RFC 2845] 18 BADTIME Signature out of time window [RFC 2845]
19 BADMODE Bad TKEY Mode [RPC 2930] 19 BADMODE Bad TKEY Mode [RPC 2930]
20 BADNAME Duplicate key name [RPF 2930] 20 BADNAME Duplicate key name [RPF 2930]
21 BADALG Algorithm not supported [RPF 2930] 21 BADALG Algorithm not supported [RPF 2930]
22 - 3,840 Available for assignment
0x0016 - 0x0F00
3,841 - 4,095 Private Use
0x0F01 - 0x0FFF
4,096 - 5,7343 Available for assignment
0x1000 - 0xDFFF
57,344 - 65,534 Specification Required
0xE000 - 0xFFFE
65,535 Reserved
0xFFFF
Assignment of new RCODE listed above as "Available for 22 - 3,840
assignment" requires an IETF Standards Action modified by [RFC 0x0016 - 0x0F00 Available for assignment
4020]. Assignment of RCODE 65,535 requires an IETF Standards
Action. 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 Consensus.
3. DNS Resource Records 3. DNS Resource Records
All RRs have the same top level format shown in the figure below All RRs have the same top level format shown in the figure below
taken from [RFC 1035]: taken from [RFC 1035]:
1 1 1 1 1 1 1 1 1 1 1 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| | | |
skipping to change at page 7, line 27 skipping to change at page 6, line 36
| TTL | | TTL |
| | | |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| RDLENGTH | | RDLENGTH |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--| +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--|
/ RDATA / / RDATA /
/ / / /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
NAME is an owner name, i.e., the name of the node to which this 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 resource record pertains. NAMEs are specific to a CLASS as described
described in section 3.2. NAMEs consist of an ordered sequence in section 3.2. NAMEs consist of an ordered sequence of one or more
of one or more labels each of which has a label type [RFC 1035, labels each of which has a label type [RFC 1035, 2671].
2671].
TYPE is a two octet unsigned integer containing one of the RR TYPE is a two octet unsigned integer containing one of the RR TYPE
TYPE codes. See section 3.1. codes. See section 3.1.
CLASS is a two octet unsigned integer containing one of the RR CLASS is a two octet unsigned integer containing one of the RR CLASS
CLASS codes. See section 3.2. codes. See section 3.2.
TTL is a four octet (32 bit) bit unsigned integer that specifies TTL is a four octet (32 bit) bit unsigned integer that specifies the
the number of seconds that the resource record may be cached number of seconds that the resource record may be cached before the
before the source of the information should again be consulted. source of the information should again be consulted. Zero is
Zero is interpreted to mean that the RR can only be used for the interpreted to mean that the RR can only be used for the transaction
transaction in progress. in progress.
RDLENGTH is an unsigned 16 bit integer that specifies the length RDLENGTH is an unsigned 16 bit integer that specifies the length in
in octets of the RDATA field. octets of the RDATA field.
RDATA is a variable length string of octets that constitutes the RDATA is a variable length string of octets that constitutes the
resource. The format of this information varies according to the resource. The format of this information varies according to the TYPE
TYPE and in some cases the CLASS of the resource record. and in some cases the CLASS of the resource record.
3.1 RR TYPE IANA Considerations 3.1 RR TYPE IANA Considerations
There are three subcategories of RR TYPE numbers: data TYPEs, There are three subcategories of RR TYPE numbers: data TYPEs, QTYPEs,
QTYPEs, and MetaTYPEs. and MetaTYPEs.
Data TYPEs are the primary means of storing data. QTYPES can Data TYPEs are the primary means of storing data. QTYPES can only be
only be used in queries. Meta-TYPEs designate transient data used in queries. Meta-TYPEs designate transient data associated with
associated with an particular DNS message and in some cases can an particular DNS message and in some cases can also be used in
also be used in queries. Thus far, data TYPEs have been queries. Thus far, data TYPEs have been assigned from 1 upwards plus
assigned from 1 upwards plus the block from 100 through 103 the block from 100 through 103 while Q and Meta Types have been
while Q and Meta Types have been assigned from 255 downwards assigned from 255 downwards except for the OPT Meta-RR which is
except for the OPT Meta-RR which is assigned TYPE 41. There assigned TYPE 41. There have been DNS implementations which made
have been DNS implementations which made caching decisions based caching decisions based on the top bit of the bottom byte of the RR
on the top bit of the bottom byte of the RR TYPE. TYPE.
There are currently three Meta-TYPEs assigned: OPT [RFC 2671], There are currently three Meta-TYPEs assigned: OPT [RFC 2671], TSIG
TSIG [RFC 2845], and TKEY [RFC 2930]. [RFC 2845], and TKEY [RFC 2930].
There are currently five QTYPEs assigned: * (all), MAILA, MAILB, There are currently five QTYPEs assigned: * (all), MAILA, MAILB,
AXFR, and IXFR. AXFR, and IXFR.
Considerations for the allocation of new RR TYPEs are as Considerations for the allocation of new RR TYPEs are as follows:
follows:
Decimal Decimal
Hexadecimal Hexadecimal
0 0
0x0000 - TYPE zero is used as a special indicator for the SIG RR 0x0000 - TYPE zero is used as a special indicator for the SIG RR [RFC
[RFC 2535] and in other circumstances and must never be 2535] and in other circumstances and must never be allocated
allocated for ordinary use. for ordinary use.
1 - 127 1 - 127
0x0001 - 0x007F - remaining TYPEs in this range are assigned for 0x0001 - 0x007F - remaining TYPEs in this range are assigned for data
data TYPEs by the DNS Special Allocation Policy. TYPEs by the DNS TYPE Allocation Policy as specified in
section 3.1.1.
128 - 255 128 - 255
0x0080 - 0x00FF - remaining TYPEs in this rage are assigned for 0x0080 - 0x00FF - remaining TYPEs in this rage are assigned for Q and
Q and Meta TYPEs by the DNS Special Allocation Policy. Meta TYPEs by the DNS TYPE Allocation Policy as specified in
section 3.1.1.
256 - 32,767 256 - 32,767
0x0100 - 0x7FFF - assigned for data, Q, or Meta TYPE use by the 0x0100 - 0x7FFF - assigned for data, Q, or Meta TYPE use by the DNS
DNS Special Allocation Policy. TYPE Allocation Policy as specified in section 3.1.1.
32,768 - 65,279 32,768 - 65,279
0x8000 - 0xFEFF - Specification Required as defined in [RFC 0x8000 - 0xFEFF - Specification Required as defined in [RFC 2434].
2434].
65,280 - 65534 65,280 - 65534
0xFF00 - 0xFFFE - Private Use. 0xFF00 - 0xFFFE - Private Use.
65,535 65,535
0xFFFF - can only be assigned by an IETF Standards Action. 0xFFFF - Reserved, can only be assigned by an IETF Standards Action.
3.1.1 Special Note on the OPT RR 3.1.1 DNS TYPE Allocation Policy
Parameter values specified above as assigned based on DNS TYPE
Allocation Policy. That is, Expert Review with the additional
requirement that the review be based on a complete template as
specified below which has been posted for three weeks to the
namedroppers@ops.ietf.org mailing list.
Partial or draft templates may be posted with the intend of
soliciting feedback.
DNS RR TYPE PARAMETER ALLOCATION TEMPLATE
Date:
Name and email of originator:
Pointer to internet-draft or other document giving a detailed
description of the protocol use of the new RR Type:
What need is the new RR TYPE intended to fix?
What existing RR TYPE(s) come closest to filling that need and why are
they unsatisfactory?
Does the proposed RR TYPR require special handling within the DNS
different from an Unknown RR TYPE?
Comments:
3.1.2 Special Note on the OPT RR
The OPT (OPTion) RR, number 41, is specified in [RFC 2671]. Its The OPT (OPTion) RR, number 41, is specified in [RFC 2671]. Its
primary purpose is to extend the effective field size of various primary purpose is to extend the effective field size of various DNS
DNS fields including RCODE, label type, OpCode, flag bits, and fields including RCODE, label type, OpCode, flag bits, and RDATA
RDATA size. In particular, for resolvers and servers that size. In particular, for resolvers and servers that recognize it, it
recognize it, it extends the RCODE field from 4 to 12 bits. extends the RCODE field from 4 to 12 bits.
3.1.2 The AFSDB RR Subtype Field 3.1.3 The AFSDB RR Subtype Field
The AFSDB RR [RFC 1183] is a CLASS insensitive RR that has the The AFSDB RR [RFC 1183] is a CLASS insensitive RR that has the same
same RDATA field structure as the MX RR but the 16 bit unsigned RDATA field structure as the MX RR but the 16 bit unsigned integer
integer field at the beginning of the RDATA is interpreted as a field at the beginning of the RDATA is interpreted as a subtype as
subtype as follows: follows:
Decimal Decimal
Hexadecimal Hexadecimal
0 0
0x0000 - Allocation requires IETF Standards Action. 0x0000 - Allocation requires IETF Standards Action.
1 1
0x0001 - Andrews File Service v3.0 Location Service [RFC 1183]. 0x0001 - Andrews File Service v3.0 Location Service [RFC 1183].
2 2
0x0002 - DCE/NCA root cell directory node [RFC 1183]. 0x0002 - DCE/NCA root cell directory node [RFC 1183].
3 - 65,279 3 - 65,279
0x0003 - 0xFEFF - Allocation by the DNS Special Allocation 0x0003 - 0xFEFF - Allocation by IETF Consensus.
Policy.
65,280 - 65,534 65,280 - 65,534
0xFF00 - 0xFFFE - Private Use. 0xFF00 - 0xFFFE - Private Use.
65,535 65,535
0xFFFF - Allocation requires IETF Standards Action. 0xFFFF - Reserved, allocation requires IETF Standards Action.
3.2 RR CLASS IANA Considerations 3.2 RR CLASS IANA Considerations
DNS CLASSes have been little used but constitute another DNS CLASSes have been little used but constitute another dimension of
dimension of the DNS distributed database. In particular, there the DNS distributed database. In particular, there is no necessary
is no necessary relationship between the name space or root relationship between the name space or root servers for one CLASS and
servers for one CLASS and those for another CLASS. The same those for another CLASS. The same name can have completely different
name can have completely different meanings in different meanings in different CLASSes; however, the label types are the same
CLASSes; however, the label types are the same and the null and the null label is usable only as root in every CLASS. However,
label is usable only as root in every CLASS. However, as global as global networking and DNS have evolved, the IN, or Internet, CLASS
networking and DNS have evolved, the IN, or Internet, CLASS has has dominated DNS use.
dominated DNS use.
There are two subcategories of DNS CLASSes: normal data There are two subcategories of DNS CLASSes: normal data containing
containing classes and QCLASSes that are only meaningful in classes and QCLASSes that are only meaningful in queries or updates.
queries or updates.
The current CLASS assignments and considerations for future The current CLASS assignments and considerations for future
assignments are as follows: assignments are as follows:
Decimal Decimal
Hexadecimal Hexadecimal
0 0
0x0000 - assignment requires an IETF Standards Action. 0x0000 - Reserved, assignment requires an IETF Standards Action.
1 1
0x0001 - Internet (IN). 0x0001 - Internet (IN).
2 2
0x0002 - available for assignment by the DNS Special Allocation 0x0002 - Available for assignment by IETF Consensus as a data CLASS.
Policy as a data CLASS.
3 3
0x0003 - Chaos (CH) [Moon 1981]. 0x0003 - Chaos (CH) [Moon 1981].
4 4
0x0004 - Hesiod (HS) [Dyer 1987]. 0x0004 - Hesiod (HS) [Dyer 1987].
5 - 127 5 - 127
0x0005 - 0x007F - available for assignment by the DNS Special 0x0005 - 0x007F - available for assignment by IETF Consensus for data
Allocation Policy for data CLASSes only. CLASSes only.
128 - 253 128 - 253
0x0080 - 0x00FD - available for assignment by the DNS Special 0x0080 - 0x00FD - available for assignment by IETF Consensus for
Allocation Policy for QCLASSes only. QCLASSes only.
254 254
0x00FE - QCLASS None [RFC 2136]. 0x00FE - QCLASS None [RFC 2136].
255 255
0x00FF - QCLASS Any [RFC 1035]. 0x00FF - QCLASS Any [RFC 1035].
256 - 32,767 256 - 32,767
0x0100 - 0x7FFF - assigned by the DNS Special Allocation Policy. 0x0100 - 0x7FFF - Assigned by IETF Consensus.
32,768 - 65,279 32,768 - 65,279
0x8000 - 0xFEFF - assigned based on Specification Required as 0x8000 - 0xFEFF - Assigned based on Specification Required as defined
defined in [RFC 2434]. in [RFC 2434].
65,280 - 65,534 65,280 - 65,534
0xFF00 - 0xFFFE - Private Use. 0xFF00 - 0xFFFE - Private Use.
65,535 65,535
0xFFFF - can only be assigned by an IETF Standards Action. 0xFFFF - Reserved, can only be assigned by an IETF Standards Action.
3.3 RR NAME Considerations 3.3 RR NAME Considerations
DNS NAMEs are sequences of labels [RFC 1035]. The last label in DNS NAMEs are sequences of labels [RFC 1035]. The last label in each
each NAME is "ROOT" which is the zero length label. By NAME is "ROOT" which is the zero length label. By definition, the
definition, the null or ROOT label can not be used for any other null or ROOT label can not be used for any other NAME purpose.
NAME purpose.
At the present time, there are two categories of label types, At the present time, there are two categories of label types, data
data labels and compression labels. Compression labels are labels and compression labels. Compression labels are pointers to
pointers to data labels elsewhere within an RR or DNS message data labels elsewhere within an RR or DNS message and are intended to
and are intended to shorten the wire encoding of NAMEs. The two shorten the wire encoding of NAMEs. The two existing data label
existing data label types are sometimes referred to as Text and types are sometimes referred to as Text and Binary. Text labels can,
Binary. Text labels can, in fact, include any octet value in fact, include any octet value including zero value octets but most
including zero value octets but most current uses involve only current uses involve only [US-ASCII]. For retrieval, Text labels are
[US-ASCII]. For retrieval, Text labels are defined to treat defined to treat ASCII upper and lower case letter codes as matching
ASCII upper and lower case letter codes as matching
[insensitive]. Binary labels are bit sequences [RFC 2673]. The [insensitive]. Binary labels are bit sequences [RFC 2673]. The
Binary label type is Experimental [RFC 3363]. Binary label type is Experimental [RFC 3363].
IANA considerations for label types are given in [RFC 2671]. IANA considerations for label types are given in [RFC 2671].
NAMEs are local to a CLASS. The Hesiod [Dyer 1987] and Chaos NAMEs are local to a CLASS. The Hesiod [Dyer 1987] and Chaos [Moon
[Moon 1981] CLASSes are essentially for local use. The IN or 1981] CLASSes are essentially for local use. The IN or Internet
Internet CLASS is thus the only DNS CLASS in global use on the CLASS is thus the only DNS CLASS in global use on the Internet at
Internet at this time. this time.
A somewhat out-of-date description of name allocation in the IN A somewhat out-of-date description of name allocation in the IN Class
Class is given in [RFC 1591]. Some information on reserved top is given in [RFC 1591]. Some information on reserved top level
level domain names is in BCP 32 [RFC 2606]. domain names is in BCP 32 [RFC 2606].
4. Security Considerations 4. Security Considerations
This document addresses IANA considerations in the allocation of This document addresses IANA considerations in the allocation of
general DNS parameters, not security. See [RFC 4033, 4034, general DNS parameters, not security. See [RFC 4033, 4034, 4035] for
4035] for secure DNS considerations. secure DNS considerations.
Appendix A: DNS Special Allocation Template
A DNS Special Allocation Policy is specified in Section 1.1
above as a modification to the Early Allocation Policy specified
in [RFC 4020]. This DNS Special Allocation Policy is then
applied to some DNS parameters as described elsewhere in this
document. As essential element of this policy is the posting of
the template below to the namedroppers@ops.ietf.org mailing
list.
Partially completed templates may be posted for the purpose of
soliciting feedback and templates may be revised and reposted.
It is intended that the working group chair determining
consensus to request allocation or the principle author of the
ID for non-WG IDs or their designate compose and post the
template.
DNS PARAMETER SPECIAL EARLY ALLOCATION TEMPLATE
Origin Section
Date:
Name of Internet-Draft:
Name and email of IETF WG or principal ID author:
Authority Section
Name and email of approving AD:
For WG draft, name and email of WG chair who determined consensus:
For non-WG draft, name and email of 2nd approving AD:
Parameter Section
Kind of Parameter (RR Type, CLASS, or AFSDB subtype):
Suggested value:
For an RR Type, please answer the following questions:
TBD
For a CLASS, please answer the following questions:
TBD
For an AFSDB subtype, please answer the following questions:
TBD
Comments Appendix: Changes from RFC 2929
Appendix B: Changes from RFC 2929
RFC Editor: This Appendix B should be deleted for publication. RFC Editor: This Appendix should be deleted for publication.
Changes from RFC 2929 to this draft: Changes from RFC 2929 to this draft:
1. Changed many "IETF Consensus" and some "IETF Standards 1. Changed many "IETF Consensus" for RR TYPEs to be "DNS TYPE
Action" allocation requirements changed to be "DNS Special Allocation Policy" and add the specification of that policy. Change
Allocation Policy" and add the specification of that policy. some remaining "IETF Standards Action" allocation requirements to say
Change most, but not all, remaining "IETF Standards Action" "as modified by [RFC 4020]".
allocation requirements to say "as modified by [RFC 4020]".
2. Updated various RFC references. 2. Updated various RFC references.
3. Mentioned that the Binary label type is now Experimental and 3. Mentioned that the Binary label type is now Experimental and
IQuery is Obsolete. IQuery is Obsolete.
4. Changed allocation status of RR Type 0xFFFF and RCODE 0xFFFF 4. Changed allocation status of RR Type 0xFFFF and RCODE 0xFFFF to be
to be IETF Standards Action required. IETF Standards Action required.
5. Change allocation status of the upper one eighth of the
current RCODE space (except 0xFFFF) to be Specification
Required.
6. Add an IANA allocation policy for the AFSDB RR Subtype field. 5. Add an IANA allocation policy for the AFSDB RR Subtype field.
7. Addition of reference to case insensitive draft. 6. Addition of reference to case insensitive draft.
Copyright and Disclaimer Copyright and Disclaimer
Copyright (C) The Internet Society (2005). This document is Copyright (C) The Internet Society (2005). This document is subject to
subject to the rights, licenses and restrictions contained in the rights, licenses and restrictions contained in BCP 78, and except
BCP 78, and except as set forth therein, the authors retain all as set forth therein, the authors retain all their rights.
their rights.
This document and the information contained herein are provided This document and the information contained herein are provided on an
on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
FOR A PARTICULAR PURPOSE.
Normative References Normative References
[RFC 1034] - Mockapetris, P., "Domain Names - Concepts and [RFC 1034] - Mockapetris, P., "Domain Names - Concepts and
Facilities", STD 13, RFC 1034, November 1987. Facilities", STD 13, RFC 1034, November 1987.
[RFC 1035] - Mockapetris, P., "Domain Names - Implementation and [RFC 1035] - Mockapetris, P., "Domain Names - Implementation and
Specifications", STD 13, RFC 1035, November 1987. Specifications", STD 13, RFC 1035, November 1987.
[RFC 1183] - Everhart, C., Mamakos, L., Ullmann, R., and P. [RFC 1183] - Everhart, C., Mamakos, L., Ullmann, R., and P.
Mockapetris, "New DNS RR Definitions", RFC 1183, October 1990. Mockapetris, "New DNS RR Definitions", RFC 1183, October 1990.
[RFC 1996] - Vixie, P., "A Mechanism for Prompt Notification of [RFC 1996] - Vixie, P., "A Mechanism for Prompt Notification of Zone
Zone Changes (DNS NOTIFY)", RFC 1996, August 1996. Changes (DNS NOTIFY)", RFC 1996, August 1996.
[RFC 2136] - Vixie, P., Thomson, S., Rekhter, Y. and J. Bound, [RFC 2136] - Vixie, P., Thomson, S., Rekhter, Y. and J. Bound,
"Dynamic Updates in the Domain Name System (DNS UPDATE)", RFC "Dynamic Updates in the Domain Name System (DNS UPDATE)", RFC 2136,
2136, April 1997. April 1997.
[RFC 2181] - Elz, R. and R. Bush, "Clarifications to the DNS [RFC 2181] - Elz, R. and R. Bush, "Clarifications to the DNS
Specification", RFC 2181, July 1997. Specification", RFC 2181, July 1997.
[RFC 2434] - Narten, T. and H. Alvestrand, "Guidelines for [RFC 2434] - Narten, T. and H. Alvestrand, "Guidelines for Writing an
Writing an IANA Considerations Section in RFCs", BCP 26, RFC IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998.
2434, October 1998.
[RFC 2671] - Vixie, P., "Extension mechanisms for DNS (EDNS0)", [RFC 2671] - Vixie, P., "Extension mechanisms for DNS (EDNS0)", RFC
RFC 2671, August 1999. 2671, August 1999.
[RFC 2673] - Crawford, M., "Binary Labels in the Domain Name [RFC 2673] - Crawford, M., "Binary Labels in the Domain Name System",
System", RFC 2673, August 1999. RFC 2673, August 1999.
[RFC 2845] - Vixie, P., Gudmundsson, O., Eastlake, D. and B. [RFC 2845] - Vixie, P., Gudmundsson, O., Eastlake, D. and B.
Wellington, "Secret Key Transaction Authentication for DNS Wellington, "Secret Key Transaction Authentication for DNS (TSIG)",
(TSIG)", RFC 2845, May 2000. RFC 2845, May 2000.
[RFC 2930] - Eastlake, D., "Secret Key Establishment for DNS [RFC 2930] - Eastlake, D., "Secret Key Establishment for DNS (TKEY
(TKEY RR)", September 2000. RR)", September 2000.
[RFC 3363] - Bush, R., Durand, A., Fink, B., Gudmundsson, O., [RFC 3363] - Bush, R., Durand, A., Fink, B., Gudmundsson, O., and T.
and T. Hain, "Representing Internet Protocol version 6 (IPv6) Hain, "Representing Internet Protocol version 6 (IPv6) Addresses in
Addresses in the Domain Name System (DNS)", RFC 3363, August the Domain Name System (DNS)", RFC 3363, August 2002.
[RFC 3425] - Lawrence, D., "Obsoleting IQUERY", RFC 3425, November
2002. 2002.
[RFC 3425] - Lawrence, D., "Obsoleting IQUERY", RFC 3425, [RFC 4020] - Kompella, K. and A. Zinin, "Early IANA Allocation of
November 2002. Standards Track Code Points", BCP 100, RFC 4020, February 2005.
[RFC 4020] - Kompella, K. and A. Zinin, "Early IANA Allocation [RFC 4033] - Arends, R., Austein, R., Larson, M., Massey, D., and S.
of Standards Track Code Points", BCP 100, RFC 4020, February Rose, "DNS Security Introduction and Requirements", RFC 4033, March
2005. 2005.
[RFC 4033] - Arends, R., Austein, R., Larson, M., Massey, D., [RFC 4034] - Arends, R., Austein, R., Larson, M., Massey, D., and S.
and S. Rose, "DNS Security Introduction and Requirements", RFC Rose, "Resource Records for the DNS Security Extensions", RFC 4034,
4033, March 2005. March 2005.
[RFC 4034] - Arends, R., Austein, R., Larson, M., Massey, D.,
and S. Rose, "Resource Records for the DNS Security Extensions",
RFC 4034, March 2005.
[RFC 4044] - Arends, R., Austein, R., Larson, M., Massey, D., [RFC 4044] - Arends, R., Austein, R., Larson, M., Massey, D., and S.
and S. Rose, "Protocol Modifications for the DNS Security Rose, "Protocol Modifications for the DNS Security Extensions", RFC
Extensions", RFC 4035, March 2005. 4035, March 2005.
[US-ASCII] - ANSI, "USA Standard Code for Information [US-ASCII] - ANSI, "USA Standard Code for Information Interchange",
Interchange", X3.4, American National Standards Institute: New X3.4, American National Standards Institute: New York, 1968.
York, 1968.
Informative References Informative References
[Dyer 1987] - Dyer, S., and F. Hsu, "Hesiod", Project Athena [Dyer 1987] - Dyer, S., and F. Hsu, "Hesiod", Project Athena
Technical Plan - Name Service, April 1987, Technical Plan - Name Service, April 1987,
[Moon 1981] - D. Moon, "Chaosnet", A.I. Memo 628, Massachusetts [Moon 1981] - D. Moon, "Chaosnet", A.I. Memo 628, Massachusetts
Institute of Technology Artificial Intelligence Laboratory, June Institute of Technology Artificial Intelligence Laboratory, June
1981. 1981.
[RFC 1591] - Postel, J., "Domain Name System Structure and [RFC 1591] - Postel, J., "Domain Name System Structure and
Delegation", RFC 1591, March 1994. Delegation", RFC 1591, March 1994.
[RFC 2929] - Eastlake 3rd, D., Brunner-Williams, E., and B. [RFC 2929] - Eastlake 3rd, D., Brunner-Williams, E., and B. Manning,
"Domain Name System (DNS) IANA Considerations", BCP 42, RFC 2929,
Manning, "Domain Name System (DNS) IANA Considerations", BCP 42, September 2000.
RFC 2929, September 2000.
[RFC 2606] - Eastlake, D. and A. Panitz, "Reserved Top Level DNS [RFC 2606] - Eastlake, D. and A. Panitz, "Reserved Top Level DNS
Names", RFC 2606, June 1999. Names", RFC 2606, June 1999.
[insensitive] - Eastlake, D., "Domain Name System (DNS) Case [insensitive] - Eastlake, D., "Domain Name System (DNS) Case
Insensitivity Clarification", draft-ietf-dnsext- Insensitivity Clarification", draft-ietf-dnsext-insensitive-*.txt,
insensitive-*.txt, work in progress. work in progress.
Author's Address Authors Addresses
Donald E. Eastlake 3rd Donald E. Eastlake 3rd
Motorola Laboratories Motorola Laboratories
155 Beaver Street 155 Beaver Street
Milford, MA 01757 USA Milford, MA 01757 USA
Telephone: +1-508-786-7554 (w) Telephone: +1-508-786-7554 (w)
email: Donald.Eastlake@motorola.com email: Donald.Eastlake@motorola.com
Expiration and File Name Expiration and File Name
This draft expires January 2006. This draft expires February 2006.
Its file name is draft-ietf-dnsext-2929bis-00.txt. Its file name is draft-ietf-dnsext-2929bis-01.txt.
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/