⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 draft-ietf-dnsext-insensitive-03.txt

📁 bind-3.2.
💻 TXT
📖 第 1 页 / 共 2 页
字号:
INTERNET-DRAFT                                    Donald E. Eastlake 3rdClarifies STD0013                                  Motorola LaboratoriesExpires September 2003                                        April 2003       Domain Name System (DNS) Case Insensitivity Clarification       ------ ---- ------ ----- ---- ------------- -------------                 <draft-ietf-dnsext-insensitive-03.txt>                         Donald E. Eastlake 3rdStatus of This Document   Distribution of this document is unlimited. Comments should be sent   to the DNSEXT working group at namedroppers@ops.ietf.org.   This document is an Internet-Draft and is in full conformance with   all provisions of Section 10 of RFC 2026.  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 as "work in progress."   The list of current Internet-Drafts can be accessed at   http://www.ietf.org/ietf/1id-abstracts.txt   The list of Internet-Draft Shadow Directories can be accessed at   http://www.ietf.org/shadow.html.Abstract   Domain Name System (DNS) names are "case insensitive". This document   explains exactly what that means and provides a clear specification   of the rules. This clarification should not have any interoperability   consequences.D. Eastlake 3rd                                                 [Page 1]INTERNET-DRAFT                                    DNS Case InsensitivityAcknowledgements   The contributions to this document of Rob Austein, Olafur   Gudmundsson, Daniel J. Anderson, Alan Barrett, Marc Blanchet, Dana,   Andreas Gustafsson, Andrew Main, and Scott Seligman are gratefully   acknowledged.Table of Contents      Status of This Document....................................1      Abstract...................................................1      Acknowledgements...........................................2      Table of Contents..........................................2      1. Introduction............................................3      2. Case Insensitivity of DNS Labels........................3      2.1 Escaping Unusual DNS Label Octets......................3      2.2 Example Labels with Escapes............................4      2.3 Name Lookup Case Insensitivity.........................4      2.4 Original DNS Label Types...............................5      3. Additional DNS Case Insensitivity Considerations........5      3.1 CLASS Case Insensitivity Considerations................5      3.2 Extended Label Type Case Insensitivity Considerations..5      4. Case on Input and Output................................6      4.1 DNS Output Case Preservation...........................6      4.2 DNS Input Case Preservation............................6      4.3 Wildcard Matching......................................7      5. Internationalized Domain Names..........................7      6. Security Considerations.................................7      Normative References.......................................9      Informative References.....................................9      -02 to -03 Changes........................................10      Author's Address..........................................10      Expiration and File Name..................................10D. Eastlake 3rd                                                 [Page 2]INTERNET-DRAFT                                    DNS Case Insensitivity1. Introduction   The Domain Name System (DNS) is the global hierarchical replicated   distributed database system for Internet addressing, mail proxy, and   other information. Each node in the DNS tree has a name consisting of   zero or more labels [STD 13][RFC 1591, 2606] that are treated in a   case insensitive fashion. This document clarifies the meaning of   "case insensitive" for the DNS.   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this   document are to be interpreted as described in [RFC 2119].2. Case Insensitivity of DNS Labels   DNS was specified in the era of [ASCII]. DNS names were expected to   look like most host names or Internet email address right halves (the   part after the at-sign, "@") or be numeric as in the in-addr.arpa   part of the DNS name space. For example,       foo.example.net.       aol.com.       www.gnu.ai.mit.edu.   or  69.2.0.192.in-addr.arpa.   Case varied alternatives to the above would be DNS names like       Foo.ExamplE.net.       AOL.COM.       WWW.gnu.AI.mit.EDU.   or  69.2.0.192.in-ADDR.ARPA.   The individual octets of which DNS names consist are not limited to   valid ASCII character codes. They are as 8-bit bytes and all values   are allowed. Many applications, however, interprete them as ASCII   characters.2.1 Escaping Unusual DNS Label Octets   In Master Files [STD 13] and other human readable and writable ASCII   contexts, an escape is needed for the byte value for period (0x2E,   ".") and all octet values outside of the inclusive range of 0x21 ("!")   to 0x7E ("~"). That is to say, 0x2E and all octet values in the two   inclusive ranges 0x00 to 0x20 and 0x7F to 0xFF.   One typographic convention for octets that do not correspond to anD. Eastlake 3rd                                                 [Page 3]INTERNET-DRAFT                                    DNS Case Insensitivity   ASCII printing graphic is to use a back-slash followed by the value of   the octet as an unsigned integer represented by exactly three decimal   digits.   The same convention can be used for printing ASCII characters so that   they will be treated as a normal label character.  This includes the   back-slash character used in this convention itself and the special   label separator period (".") which can be expressed as \092 and \046   respectively. It is advisable to avoid using a backslash to quote an   immediately following non-printing ASCII character code to avoid   implementation difficulties.   A back-slash followed by only one or two decimal digits is   undefined. A back-slash followed by four decimal digits produces two   octets, the first octet having the value of the first three digits   considered as a decimal number and the second octet being the   character code for the fourth decimal digit.2.2 Example Labels with Escapes   The first example below shows embedded spaces and a period (".")   within a label. The second one show a 5 octet label where the second   octet has all bits zero, the third is a backslahs,   and the fourth octet has all bits one.         Donald\032E\.\032Eastlake\0323rd.example.   and   a\000\\\255z.example.2.3 Name Lookup Case Insensitivity   The design decision was made that comparisons on name lookup for DNS   queries should be case insensitive [STD 13]. That is to say, a lookup   string octet with a value in the inclusive range of 0x41 to 0x5A, the   upper case ASCII letters, MUST match the identical value and also   match the corresponding value in the inclusive range 0x61 to 0x7A,   the lower case ASCII letters. And a lookup string octet with a lower   case ASCII letter value MUST similarly match the identical value and   also match the corresponding value in the upper case ASCII letter   range.   (Historical Note: the terms "upper case" and "lower case" were   invented after movable type.  The terms originally referred to the   two font trays for storing, in partitioned areas, the different   physical type elements.  Before movable type, the nearest equivalent   terms were "majuscule" and "minuscule".)D. Eastlake 3rd                                                 [Page 4]INTERNET-DRAFT                                    DNS Case Insensitivity   One way to implement this rule would be, when comparing octets, to   subtract 0x20 from all octets in the inclusive range 0x61 to 0x7A   before the comparison. Such an operation is commonly known as "case   folding" but implementation via case folding is not required. Note   that the DNS case insensitivity does NOT correspond to the case   folding specified in iso-8859-1 or iso-8859-2. For example, the   octets 0xDD (\221) and 0xFD (\253) do NOT match although in other   contexts, where they are interpreted as the upper and lower case   version of "Y" with an acute accent, they might.2.4 Original DNS Label Types   DNS labels in wire encoded names have a type associated with them.   The original DNS standard [RFC 1035] had only two types. ASCII   labels, with a length of from zero to 63 octets and indirect labels   which consist of an offset pointer to a name location elsewhere in   the wire encoding on a DNS message. (The ASCII label of length zero   is reserved for use as the name of the root node of the name tree.)   ASCII labels follow the ASCII case conventions described above.   Indirect labels are, in effect, replaced by the name to which they   point which is then treated with the case insensitivity rules in this   document.3. Additional DNS Case Insensitivity Considerations   This section clarifies the effect of DNS CLASS and extended Label   Type on case insensitivity.3.1 CLASS Case Insensitivity Considerations   As described in [STD 13] and [RFC 2929], DNS has an additional axis   for data location called CLASS. The only CLASS in global use at this   time is the "IN" or Internet CLASS.   The handling of DNS label case is not CLASS dependent.3.2 Extended Label Type Case Insensitivity Considerations   DNS was extended by [RFC 2671] to have additional label type numbers   available. (The only such type defined so far is the BINARY type [RFC   2673].)D. Eastlake 3rd                                                 [Page 5]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -