--- 1/draft-ietf-dnsext-2929bis-01.txt 2006-03-24 01:12:21.000000000 +0100 +++ 2/draft-ietf-dnsext-2929bis-02.txt 2006-03-24 01:12:21.000000000 +0100 @@ -1,39 +1,40 @@ INTERNET-DRAFT Donald E. Eastlake 3rd -Obsoletes RFC 2929, Updates RFC 1183 Motorola Laboratories -Expires: February 2006 August 2005 +Obsoletes RFC 2929 Motorola Laboratories +Updates RFCs 1183 and 3597 +Expires: September 2006 March 2006 Domain Name System (DNS) IANA Considerations - ------ ---- ------ ----- ---- -------------- - + ------ ---- ------ ----- ------------------- + Status of This Document By submitting this Internet-Draft, each author represents that any 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 aware will be disclosed, in accordance with Section 6 of BCP 79. Distribution of this draft is unlimited. It is intended to become the new BCP 42 obsoleting RFC 2929. Comments should be sent to the DNS Working Group mailing list . Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference - material or to cite them other than a "work in progress." + material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html Abstract Internet Assigned Number Authority (IANA) parameter assignment @@ -49,46 +50,49 @@ Table of Contents..........................................2 1. Introduction............................................3 2. DNS Query/Response Headers..............................3 2.1 One Spare Bit?.........................................4 2.2 Opcode Assignment......................................4 2.3 RCODE Assignment.......................................5 3. DNS Resource Records....................................6 3.1 RR TYPE IANA Considerations............................7 3.1.1 DNS TYPE Allocation Policy...........................8 - 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.1.2 Expert Review DNS TYPE Expert Review Template........8 + 3.1.3 Special Note on the OPT RR...........................9 + 3.1.4 The AFSDB RR Subtype Field...........................9 + 3.2 RR CLASS IANA Considerations..........................10 3.3 RR NAME Considerations................................11 - 4. Security Considerations................................11 + 4. Security Considerations................................12 - Appendix: Changes from RFC 2929...........................12 + Additional IPR Provisions.................................13 - Copyright and Disclaimer..................................13 - Normative References......................................13 - Informative References....................................14 + Appendix: Changes from RFC 2929...........................14 - Authors Addresses.........................................16 - Expiration and File Name..................................16 + Copyright and Disclaimer..................................15 + Normative References......................................15 + Informative References....................................16 + + Author's Address..........................................18 + Expiration and File Name..................................18 1. Introduction The Domain Name System (DNS) provides replicated distributed secure hierarchical databases which hierarchically store "resource records" (RRs) under domain names. DNS data is structured into CLASSes and zones which can be independently maintained. See [RFC 1034, 1035, 2136, 2181, 4033] familiarity with which is assumed. - This document provides, either directly or by reference, general IANA - parameter assignment considerations applying across DNS query and - response headers and all RRs. There may be additional IANA + This document provides, either directly or by reference, the general + IANA parameter assignment considerations applying across DNS query + and response headers and all RRs. There may be additional IANA 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 for such considerations if they have been defined, except for AFSDB RR considerations [RFC 1183] which are included herein. This RFC obsoletes [RFC 2929]. IANA currently maintains a web page of DNS parameters. See . "IETF Standards Action", "IETF Consensus", "Specification Required", @@ -125,22 +129,22 @@ many 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 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. These fields have the same structure and data type for - Update but are instead the counts for the zone (ZOCOUNT), + Update [RFC 2136]. 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. 2.1 One Spare Bit? 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. @@ -221,21 +225,21 @@ All RRs have the same top level format shown in the figure below taken from [RFC 1035]: 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 | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--| @@ -247,166 +251,185 @@ resource record pertains. NAMEs are specific to a CLASS as described in section 3.2. NAMEs consist of an ordered sequence of one or more labels each of which has a label type [RFC 1035, 2671]. TYPE is a two octet unsigned integer containing one of the RR TYPE codes. See section 3.1. CLASS is a two octet unsigned integer containing one of the RR CLASS codes. See section 3.2. - TTL is a four octet (32 bit) bit unsigned integer that specifies 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. + TTL is a four octet (32 bit) 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. 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. 3.1 RR TYPE IANA Considerations There are three subcategories of RR TYPE numbers: data TYPEs, QTYPEs, and MetaTYPEs. Data TYPEs are the primary means of storing data. QTYPES can only be used in queries. Meta-TYPEs designate transient data associated with - an particular DNS message and in some cases can also be used in + a particular DNS message and in some cases can also be used in queries. Thus far, data TYPEs have been assigned from 1 upwards plus the block from 100 through 103 while Q and Meta Types have been assigned from 255 downwards except for the OPT Meta-RR which is assigned TYPE 41. There have been DNS implementations which made caching decisions based on the top bit of the bottom byte of the RR TYPE. There are currently three Meta-TYPEs assigned: OPT [RFC 2671], TSIG [RFC 2845], and TKEY [RFC 2930]. There are currently five QTYPEs assigned: * (all), MAILA, MAILB, AXFR, and IXFR. Considerations for the allocation of new RR TYPEs are as follows: Decimal Hexadecimal 0 0x0000 - TYPE zero is used as a special indicator for the SIG RR [RFC - 2535] and in other circumstances and must never be allocated - for ordinary use. + 2931, 4034] and in other circumstances and must never be + allocated for ordinary use. 1 - 127 0x0001 - 0x007F - remaining TYPEs in this range are assigned for data TYPEs by the DNS TYPE Allocation Policy as specified in section 3.1.1. 128 - 255 0x0080 - 0x00FF - remaining TYPEs in this rage are assigned for Q and Meta TYPEs by the DNS TYPE Allocation Policy as specified in section 3.1.1. 256 - 32,767 - 0x0100 - 0x7FFF - assigned for data, Q, or Meta TYPE use by the DNS - TYPE Allocation Policy as specified in section 3.1.1. + 0x0100 - 0x7FFF - assigned for data TYPEs by the DNS TYPE Allocation + Policy as specified in section 3.1.1. 32,768 - 65,279 - 0x8000 - 0xFEFF - Specification Required as defined in [RFC 2434]. + 0x8000 - 0xFEFF - assigned for Q or Meta TYPEs by the DNS TYPE + Allocation Policy as specified in section 3.1.1.. - 65,280 - 65534 + 65,280 - 65,534 0xFF00 - 0xFFFE - Private Use. 65,535 0xFFFF - Reserved, can only be assigned by an IETF Standards Action. 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. + Allocation Policy are allocated by Expert Review if they meet the two + requirements listed below. If they do not meet these requirements, + they are allocated by IETF Standards Action as modified by [RFC + 4020]. - Partial or draft templates may be posted with the intend of - soliciting feedback. + A complete template as specified in Section 3.1.2 has been posted for + three weeks to the namedroppers@ops.ietf.org mailing list before + the Expert Review. + Note that partially completed or draft templates may be posted + for comment. + + 2. The RR for which a TYPE code is being requested must be either (a) + a data TYPE which can be handled as an Unknown RR as described in + [RFC 3597] or (b) a Meta TYPE who processing is optional, i.e., + which it is safe to simply discard. + Note that such RRs may include additional section processing + provided such processing is optional. + +3.1.2 Expert Review DNS TYPE Expert Review Template DNS RR TYPE PARAMETER ALLOCATION TEMPLATE Date: - Name and email of originator: + Name, email, and telephone number of originator: - Pointer to internet-draft or other document giving a detailed - description of the protocol use of the new RR Type: + Pointer to internet-draft or other public 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 need is the new RR TYPE intended to satisfy? - What existing RR TYPE(s) come closest to filling that need and why are - they unsatisfactory? + 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? + Does the proposed RR TYPE require special handling within the + DNS different from an Unknown RR TYPE? Comments: -3.1.2 Special Note on the OPT RR +3.1.3 Special Note on the OPT RR The OPT (OPTion) RR, number 41, is specified in [RFC 2671]. 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. -3.1.3 The AFSDB RR Subtype Field +3.1.4 The AFSDB RR Subtype Field The AFSDB RR [RFC 1183] 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 - Allocation requires IETF Standards Action. + 0x0000 - Reserved, allocation requires IETF Standards Action. 1 0x0001 - Andrews File Service v3.0 Location Service [RFC 1183]. 2 0x0002 - DCE/NCA root cell directory node [RFC 1183]. 3 - 65,279 0x0003 - 0xFEFF - Allocation by IETF Consensus. 65,280 - 65,534 0xFF00 - 0xFFFE - Private Use. 65,535 0xFFFF - Reserved, allocation requires IETF Standards Action. 3.2 RR CLASS IANA Considerations + There are 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 CLASS and - those for another CLASS. The same name can have completely different - meanings in different CLASSes; however, the label types are the same - and the null label is usable only as root in every CLASS. However, - as global networking and DNS have evolved, the IN, or Internet, CLASS - has dominated DNS use. + relationship between the name space or root servers for one data + CLASS and those for another data CLASS. The same 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. - There are two subcategories of DNS CLASSes: normal data containing - classes and QCLASSes that are only meaningful in queries or updates. + 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 and which might be usable in queries. However, it is + possible that their might be a future requirement for one or more + "meta-CLASSes". The current CLASS assignments and considerations for future assignments are as follows: Decimal Hexadecimal 0 0x0000 - Reserved, assignment requires an IETF Standards Action. @@ -421,101 +444,134 @@ 4 0x0004 - Hesiod (HS) [Dyer 1987]. 5 - 127 0x0005 - 0x007F - available for assignment by IETF Consensus for data CLASSes only. 128 - 253 0x0080 - 0x00FD - available for assignment by IETF Consensus for - QCLASSes only. + QCLASSes and meta-CLASSes only. 254 0x00FE - QCLASS None [RFC 2136]. 255 0x00FF - QCLASS Any [RFC 1035]. 256 - 32,767 0x0100 - 0x7FFF - Assigned by IETF Consensus. - 32,768 - 65,279 - 0x8000 - 0xFEFF - Assigned based on Specification Required as defined - in [RFC 2434]. + 32,768 - 57,343 + 0x8000 - 0xDFFF - Assigned for data CLASSes only based on + Specification Required as defined in [RFC 2434]. + + 57,344 - 65,279 + 0xE000 - 0XFEFF - Assigned for QCLASSes and meta-CLASSes only based + on Specification Required as defined in [RFC 2434]. 65,280 - 65,534 0xFF00 - 0xFFFE - Private Use. 65,535 0xFFFF - Reserved, can only be assigned by an IETF Standards Action. 3.3 RR NAME Considerations DNS NAMEs are sequences of labels [RFC 1035]. The last label in each NAME is "ROOT" which is the zero length label. By definition, the null or ROOT label can not be used for any other NAME purpose. 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 most + in fact, include any octet value including zero value octets but many current uses involve only [US-ASCII]. For retrieval, Text labels are defined to treat ASCII upper and lower case letter codes as matching - [insensitive]. Binary labels are bit sequences [RFC 2673]. The - Binary label type is Experimental [RFC 3363]. + [RFC 4343]. Binary labels are bit sequences [RFC 2673]. The Binary + label type is Experimental [RFC 3363]. IANA considerations for label types are given in [RFC 2671]. NAMEs are local to a CLASS. The Hesiod [Dyer 1987] and Chaos [Moon 1981] CLASSes are essentially for 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 [RFC 1591]. Some information on reserved top level domain names is in BCP 32 [RFC 2606]. 4. Security Considerations This document addresses IANA considerations in the allocation of general DNS parameters, not security. See [RFC 4033, 4034, 4035] for secure DNS considerations. +Additional IPR Provisions + + The IETF takes no position regarding the validity or scope of any + Intellectual Property Rights or other rights that might be claimed to + pertain to the implementation or use of the technology described in + this document or the extent to which any license under such rights + might or might not be available; nor does it represent that it has + made any independent effort to identify any such rights. Information + on the procedures with respect to rights in RFC documents can be + found in BCP 78 and BCP 79. + + Copies of IPR disclosures made to the IETF Secretariat and any + assurances of licenses to be made available, or the result of an + attempt made to obtain a general license or permission for the use of + such proprietary rights by implementers or users of this + specification can be obtained from the IETF on-line IPR repository at + http://www.ietf.org/ipr. + + The IETF invites any interested party to bring to its attention any + copyrights, patents or patent applications, or other proprietary + rights that may cover technology that may be required to implement + this standard. Please address the information to the IETF at ietf- + ipr@ietf.org. + Appendix: Changes from RFC 2929 RFC Editor: This Appendix should be deleted for publication. Changes from RFC 2929 to this draft: - 1. Changed many "IETF Consensus" for RR TYPEs to be "DNS TYPE - Allocation Policy" and add the specification of that policy. Change - some remaining "IETF Standards Action" allocation requirements to say - "as modified by [RFC 4020]". + 1. Changed most "IETF Consensus" and "Specification Required" + allocation policies for RR TYPEs to be "DNS TYPE Allocation Policy" + and add the specification of that policy. Change some remaining "IETF + Standards Action" allocation requirements to say "as modified by [RFC + 4020]". - 2. Updated various RFC references. + 2. Updated numerous RFC references. 3. Mentioned that the Binary label type is now Experimental and IQuery is Obsolete. - 4. Changed allocation status of RR Type 0xFFFF and RCODE 0xFFFF to be + 4. Changed allocation status of RR TYPE 0xFFFF and RCODE 0xFFFF to be IETF Standards Action required. 5. Add an IANA allocation policy for the AFSDB RR Subtype field. - 6. Addition of reference to case insensitive draft. + 6. Addition of reference to case insensitive RFC [RFC 4343], Unknown + RRs RFC [RFC 3597], and SIG(0) RFC [RFC 2931]. + + 7. Split Specification Required CLASSes into data CLASSes and query + or meta CLASSes. Copyright and Disclaimer - Copyright (C) The Internet Society (2005). This document is subject to + Copyright (C) The Internet Society (2006). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. @@ -557,20 +613,23 @@ [RFC 2930] - Eastlake, D., "Secret Key Establishment for DNS (TKEY RR)", September 2000. [RFC 3363] - Bush, R., Durand, A., Fink, B., Gudmundsson, O., and T. Hain, "Representing Internet Protocol version 6 (IPv6) Addresses in the Domain Name System (DNS)", RFC 3363, August 2002. [RFC 3425] - Lawrence, D., "Obsoleting IQUERY", RFC 3425, November 2002. + [RFC 3597] - Gustafsson, A., "Handling of Unknown DNS Resource Record + (RR) Types", RFC 3597, September 2003. + [RFC 4020] - Kompella, K. and A. Zinin, "Early IANA Allocation of Standards Track Code Points", BCP 100, RFC 4020, February 2005. [RFC 4033] - Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "DNS Security Introduction and Requirements", RFC 4033, 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. @@ -587,36 +646,38 @@ [Dyer 1987] - Dyer, S., and F. Hsu, "Hesiod", Project Athena Technical Plan - Name Service, April 1987, [Moon 1981] - D. Moon, "Chaosnet", A.I. Memo 628, Massachusetts Institute of Technology Artificial Intelligence Laboratory, June 1981. [RFC 1591] - Postel, J., "Domain Name System Structure and Delegation", RFC 1591, March 1994. + [RFC 2606] - Eastlake, D. and A. Panitz, "Reserved Top Level DNS + Names", RFC 2606, June 1999. + [RFC 2929] - Eastlake 3rd, D., Brunner-Williams, E., and B. Manning, "Domain Name System (DNS) IANA Considerations", BCP 42, RFC 2929, September 2000. - [RFC 2606] - Eastlake, D. and A. Panitz, "Reserved Top Level DNS - Names", RFC 2606, June 1999. + [RFC 2931] - Eastlake, E., "DNS Request and Transaction Signatures ( + SIG(0)s )", RFC 2931, September 2000. - [insensitive] - Eastlake, D., "Domain Name System (DNS) Case - Insensitivity Clarification", draft-ietf-dnsext-insensitive-*.txt, - work in progress. + [RFC 4343] - Eastlake, D., "Domain Name System (DNS) Case + Insensitivity Clarification", RFC 4343, December 2005. -Authors Addresses +Author's Address Donald E. Eastlake 3rd Motorola Laboratories 155 Beaver Street Milford, MA 01757 USA Telephone: +1-508-786-7554 (w) email: Donald.Eastlake@motorola.com Expiration and File Name - This draft expires February 2006. + This draft expires September 2006. - Its file name is draft-ietf-dnsext-2929bis-01.txt. + Its file name is draft-ietf-dnsext-2929bis-02.txt.