]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
new draft
authorMark Andrews <marka@isc.org>
Thu, 1 May 2003 22:09:42 +0000 (22:09 +0000)
committerMark Andrews <marka@isc.org>
Thu, 1 May 2003 22:09:42 +0000 (22:09 +0000)
doc/draft/draft-ietf-dnsext-insensitive-03.txt [moved from doc/draft/draft-ietf-dnsext-insensitive-02.txt with 72% similarity]

similarity index 72%
rename from doc/draft/draft-ietf-dnsext-insensitive-02.txt
rename to doc/draft/draft-ietf-dnsext-insensitive-03.txt
index c3d21c0f710f4895382fa47a549b9dd0c83a6c9a..60260c3105d71d65fe3e4894ce3a68a80e1a9f75 100644 (file)
@@ -1,13 +1,13 @@
 
 INTERNET-DRAFT                                    Donald E. Eastlake 3rd
 Clarifies STD0013                                  Motorola Laboratories
-Expires August 2003                                        February 2003
+Expires September 2003                                        April 2003
 
 
 
        Domain Name System (DNS) Case Insensitivity Clarification
        ------ ---- ------ ----- ---- ------------- -------------
-                 <draft-ietf-dnsext-insensitive-02.txt>
+                 <draft-ietf-dnsext-insensitive-03.txt>
 
                          Donald E. Eastlake 3rd
 
@@ -46,7 +46,7 @@ Abstract
 
 
 
-Copyright (C) 2003 The Internet Society. All Rights Reserved.
+
 
 
 
@@ -63,8 +63,9 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 Acknowledgements
 
    The contributions to this document of Rob Austein, Olafur
-   Gudmundsson, Daniel J. Anderson, Alan Barrett, Dana, Andrew Main, and
-   Scott Seligman are gratefully acknowledged.
+   Gudmundsson, Daniel J. Anderson, Alan Barrett, Marc Blanchet, Dana,
+   Andreas Gustafsson, Andrew Main, and Scott Seligman are gratefully
+   acknowledged.
 
 
 
@@ -89,11 +90,12 @@ Table of Contents
       4.1 DNS Output Case Preservation...........................6
       4.2 DNS Input Case Preservation............................6
       4.3 Wildcard Matching......................................7
-      5. Security Considerations.................................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..................................10
 
@@ -110,8 +112,6 @@ Table of Contents
 
 
 
-
-
 D. Eastlake 3rd                                                 [Page 2]
 \f
 
@@ -123,10 +123,9 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    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] which have been
-   specified as being treated in a case insensitive fashion. This
-   document clarifies the meaning of "case insensitive" for this
-   application.
+   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
@@ -138,7 +137,7 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 
    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 after the at-sign, "@") or be numeric as in the in-addr.arpa
    part of the DNS name space. For example,
 
        foo.example.net.
@@ -154,20 +153,21 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    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 defined as 8-bit bytes and all
-   values are allowed. Most applications, however, interprete them
-   as ASCII characters.
+   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
 
-   An escape is needed for all octet values outside of the inclusive
-   range of 0x21 ("!") to 0x7E ("~"). That is to say, all octet values in
-   the two inclusive ranges 0x00 to 0x20 and 0x7F to 0xFF.
+   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 an
-   ASCII printing graphic is to show them as a back-slash followed by the
 
 
 D. Eastlake 3rd                                                 [Page 3]
@@ -176,11 +176,17 @@ D. Eastlake 3rd                                                 [Page 3]
 INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
-   value of the octet as an unsigned integer represented by exactly three
-   decimal digits.  The same convention can be used for printing ASCII
-   characters.  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.
+   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
@@ -188,24 +194,17 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    considered as a decimal number and the second octet being the
    character code for the fourth decimal digit.
 
-   Octets, other than those corresponding to the ASCII digits 0 through
-   9, can also be protected from recognition, so that they will be
-   treated as a normal label character, by a second convention:
-   preceding them with a back-slash. This is the most commonly used
-   technique for protecting back slash ("\") and period ("."). However,
-   it is advisable to avoid using this on other than printing ASCII
-   characters to avoid implementation difficulties.
-
 
 
 2.2 Example Labels with Escapes
 
    The first example below shows embedded spaces and a period (".")
-   within a label. The second one show a 4 octet label where the second
-   octet has all bits zero and the third octet has all bits one.
+   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.
-   or  a\000\255z.example.
+         Donald\032E\.\032Eastlake\0323rd.example.
+   and   a\000\\\255z.example.
 
 
 
@@ -222,10 +221,11 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    range.
 
    (Historical Note: the terms "upper case" and "lower case" were
-   invented after movable type became wide spread for printing.  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
+   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]
@@ -234,8 +234,6 @@ D. Eastlake 3rd                                                 [Page 4]
 INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
-   "minuscule".)
-
    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
@@ -243,7 +241,7 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    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
+   contexts, where they are interpreted as the upper and lower case
    version of "Y" with an acute accent, they might.
 
 
@@ -284,6 +282,8 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 
    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]
@@ -292,8 +292,6 @@ D. Eastlake 3rd                                                 [Page 5]
 INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
-   2673].)
-
    The ASCII case insensitivity conventions, or case folding, only apply
    to ASCII labels, that is to say, label type 0x0, whether appearing
    directly or invoked by indirect labels.
@@ -304,7 +302,7 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 
    While ASCII label comparisons are case insensitive, case MUST be
    preserved on output, except when output is optimized by the use of
-   indirect labels, and preserved when possible on input.
+   indirect labels, and preserved when convenient on input.
 
 
 
@@ -333,15 +331,17 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    [STD 13]. DNS Dynamic update has been added as a source of DNS data
    [RFC 2136, 3007]. When a node in the DNS name tree is created by such
    input, no case conversion is done and the case of ASCII labels is
-   preserved if they are for nodes being created. However, no change is
-   made in the name label on nodes that already exist in the DNS data
-   being augmented or updated. It is quite common for higher level nodes
-   to already exist.
+   preserved if they are for nodes being created. However, when a name
+   label is input for a node that already exist in DNS data being
+   augmented or updated, the situation is more complex. Implemenations
+   may retain the case first input for such a label or allow new input
+   to override the old case or maintain separate copies preserving the
+   input case.
 
    For example, if data with owner name "foo.bar.example" is input and
    then later data with owner name "xyz.BAR.example" is input, the name
-   of the label on the "bar.example" node, i.e. "bar", is not changed to
-   "BAR". Thus later retrieval of data stored under "xyz.bar.example" in
+   of the label on the "bar.example" node, i.e. "bar", might or might
+   not be changed to "BAR" or the actual input case could be preserved.
 
 
 D. Eastlake 3rd                                                 [Page 6]
@@ -350,12 +350,13 @@ D. Eastlake 3rd                                                 [Page 6]
 INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
-   this case can easily result is obtaining data with "xyz.BAR.example".
-   The same considerations apply when inputting multiple data records
-   with owner names differing only in case. From the example above, if
-   an "A" record is stored under owner name "xyz.BAR.example" and then a
-   second "A" record under "XYZ.BAR.example", the second will be stored
-   at the node with the first (lower case initial label) name.
+   Thus later retrieval of data stored under "xyz.bar.example" in this
+   case can easily result is obtaining data with "xyz.BAR.example".  The
+   same considerations apply when inputting multiple data records with
+   owner names differing only in case. From the example above, if an "A"
+   record is stored under owner name "xyz.BAR.example" and then a second
+   "A" record under "XYZ.BAR.example", the second MAY be stored with the
+   first (lower case initial label) name.
 
    Note that the order of insertion into a server database of the DNS
    name tree nodes that appear in a Master File is not defined so that
@@ -377,15 +378,38 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
 
-5. Security Considerations
+5. Internationalized Domain Names
+
+   A scheme has been adopted for "internationalized domain names" and
+   "internationalized labels" as described in [RFC 3490, 3454, 3491, and
+   3492]. It makes most of [UNICODE] available through a separate
+   application level transformation from internationalized domain name
+   to DNS domain name and from DNS domain name to internationalized
+   domain name. Any case insensitivity that internationalized domain
+   names and labels have varies depending on the script and is handled
+   entirely as part of the transformation described in [RFC 3454] and
+   [RFC 3491] which should be seen for further details.  This is not a
+   part of the DNS as standardized in STD 13.
+
+
+
+6. Security Considerations
 
    The equivalence of certain DNS label types with case differences, as
    clarified in this document, can lead to security problems. For
    example, a user could be confused by believing two domain names
    differing only in case were actually different names.
 
+
+
+D. Eastlake 3rd                                                 [Page 7]
+\f
+
+INTERNET-DRAFT                                    DNS Case Insensitivity
+
+
    Furthermore, a domain name may be used in contexts other than the
-   DNS.  It could be used as an index into some case sensitive data base
+   DNS.  It could be used as a case sensitive index into some data base
    system. Or it could be interpreted as binary data by some integrity
    or authentication code system. These problems can usually be handled
    by using a standardized or "canonical" form of the DNS ASCII type
@@ -400,14 +424,6 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
    this would be quite rare, on a system with case sensitive email
    address local parts, an attempt to store two "RP" records that
    differed only in case would probably produce unexpected results that
-
-
-D. Eastlake 3rd                                                 [Page 7]
-\f
-
-INTERNET-DRAFT                                    DNS Case Insensitivity
-
-
    might have security implications. That is because the entire email
    address, including the possibly case sensitive local or left hand
    part, is encoded into a DNS name in a readable fashion where the case
@@ -432,22 +448,6 @@ INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 
 
 
@@ -492,7 +492,7 @@ Normative References
    specification", RFC 1035, November 1987.
 
    [UNKRR] - Andreas Gustafsson, "Handling of Unknown DNS RR Types",
-   draft-ietf-dnsext-unknown-rrs-04.txt, September 2002.
+   draft-ietf-dnsext-unknown-rrs-05.txt, March 2003.
 
 
 
@@ -513,8 +513,8 @@ Informative References
    [RFC 2673] - M. Crawford, "Binary Labels in the Domain Name System",
    August 1999.
 
-
-
+   [RFC 3454] - P. Hoffman, M. Blanchet, "Preparation of
+   Internationalized String ("stringprep")", December 2002.
 
 
 
@@ -524,53 +524,53 @@ D. Eastlake 3rd                                                 [Page 9]
 INTERNET-DRAFT                                    DNS Case Insensitivity
 
 
-Author's Address
-
-   Donald E. Eastlake 3rd
-   Motorola Laboratories
-   155 Beaver Street
-   Milford, MA 01757 USA
-
-   Telephone:   +1 508-851-8280 (w)
-                +1 508-634-2066 (h)
-   EMail:       Donald.Eastlake@motorola.com
-
-
-
-
-Expiration and File Name
-
-   This draft expires August 2003.
-
-   Its file name is draft-ietf-dnsext-insensitive-02.txt.
-
-
-
-
-
-
-
-
+   [RFC 3490] - P. Faltstrom, P. Hoffman, A. Costello,
+   "Internationalizing Domain Names in Applications (IDNA)", March 2003.
 
+   [RFC 3491] - P. Hoffman, M. Blanchet, "Nameprep: A Stringprep Profile
+   for Internationalized Domain Names (IDN)", March 2003.
 
+   [RFC 3492] - A. Costello, "Punycode: A Bootstring encoding of Unicode
+   for Internationalized Domain Names in Applications (IDNA)", March
+   2003.
 
+   [UNICODE] - The Unicode Consortium, "The Unicode Standard",
+   <http://www.unicode.org/unicode/standard/standard.html>.
 
 
 
+-02 to -03 Changes
 
+   The following changes were made between draft version -02 and -03:
 
+   1. Add internationalized domain name section and references.
 
+   2. Change to indicate that later input of a label for an existing DNS
+   name tree node may or may not be normalized to the earlier input or
+   override it or both may be preserved.
 
+   3. Numerous minor wording changes.
 
 
 
+Author's Address
 
+   Donald E. Eastlake 3rd
+   Motorola Laboratories
+   155 Beaver Street
+   Milford, MA 01757 USA
 
+   Telephone:   +1 508-851-8280 (w)
+                +1 508-634-2066 (h)
+   EMail:       Donald.Eastlake@motorola.com
 
 
 
+Expiration and File Name
 
+   This draft expires September 2003.
 
+   Its file name is draft-ietf-dnsext-insensitive-03.txt.