📄 draft-ietf-idn-iptr-02.txt
字号:
INTERNET-DRAFT Hongbo Shidraft-ietf-idn-iptr-02.txt Waseda University17 May 2001 Jiang Ming LiangExpires: 17 November 2001 i-DNS.net Internationalized PTR Resource Record (IPTR)Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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.htmlAbstract This draft attempts to address the problem of how an IP address SHOULD be properly mapped to a set of Internationalized Domain Names(IDNs). It is currently unspecified how a PTR record can be used for this purpose. In addition, the syntax of the PTR resource record may be too restrictive for such a mapping in a more culturally meaningful context. This document suggests a new TYPE called IPTR using EDNS0 and a mechanism to combined language information with such a mapping.1. Introduction Reverse mapping is a very important and essential function in the DNS. In today's Domain Name System, PTR RRs are used to support address- to-domain mappings. However, a current PTR RR does not provide support for proper address-to-IDN mappings, without certain modifications. Modifying the PTR structure will also affect the current reverseShi, Jiang [Page 1]INTERNET-DRAFT Internationalized PTR Resource Record 17 May 2001 mapping architecture. This document describes a new RR TYPE named IPTR to provide address-to-IDN mappings and it also specifies that on receiving of a IPTR query a name server should respond with all the corresponding IPTR RRs in one response. In short, "one IP several IDNs".1.1 Terminology The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED", and "MAY" in this document are to be interpreted as described in RFC 2119 [RFC2119].1.2 Background and Designs When Internationalized Domain Names come into wide use, an Internet host is likely to have domain names in different languages. In today's Internet, even thought the [RFC2181] redefine the consideration of PTR, because of the design of the PTR mapping algorithm and implementation of most resolvers, IP address to domain names mapping is still limited to "one IP one domain name". For example, BIND treats PTRs specially so that the normal sorting preference (e.g. cyclic/random) doesn't apply. But as usual, "fixed" order is always used. So a client that is querying a BIND server and doesn't look beyond the first PTR RR, no matter how many times it queries the name. In other words, PTR RRset is different from A RRset, where the first record in the RRset might differ from query to query. This is more restrictive in a world of IDNs, for choosing some names in a particular language. Briefly, according to the use of PTR, it is no meaning of returning an IDN in an unknown language. The authors also believe that putting language information into address-to-name mappings will be benifitial to future applications. The design purpose of the IPTR RR type is to provide a mechanism that can map an IP address to the corresponding IDN per language. It also means that IPTR suggests a new mapping algorithm for the reverse mapping by using an language information. CNAME MUST continue to work for IPTR as it works now for PTR records. The behavior of a resolver on the use of IPTR will be specified in a seperate draft or a later version of this draft.1.3 Functional Description DNS query and responses involving IPTR type MUST have the followingShi, Jiang [Page 2]INTERNET-DRAFT Internationalized PTR Resource Record 17 May 2001 properties: - When the QTYPE is IPTR, the corresponding IDNs SHOULD be returned in one response. - The characters in the label MUST be encoded using UTF-8 [RFC2279]. - The entire label MUST be encoded EDNS [RFC2671]. - An exceptional handling of PTR for the IDN is REQUIRED.2. IPTR definition The structure of an IPTR RR is somewhat like the MX RR. In addtion to the IP address in the IN-ADDR.ARPA domain and the domain name field (similar to a PTR RR), a new field called LANGUAGE has been defined. A domain name in an IPTR RR MUST be encoded in UTF8. And IDN in this document MUST be NAMEPREPPED. [NAMEPREP] Below is an example of an IPTR RR: 1.2.3.4.IN-ADDR.ARPA. IPTR "LANGUAGE" "name-in-utf8" [RFC1766] describes the ISO 639/ISO 3166 conventions. A language name is always written in lower case, while country codes are written in upper case. At here, the "LANGUAGE" field in an IPTR RR SHOULD be done in a case-insensitive manner and MUST follow the conventions defined in [RFC1766]. For Example: 4.3.2.1.IN-ADDR.ARPA. IPTR "zh-CN" "name-in-utf8" 4.3.2.1.IN-ADDR.ARPA. IPTR "zh-TW" "name-in-utf8" 4.3.2.1.IN-ADDR.ARPA. IPTR "ja-JP" "name-in-utf8" 4.3.2.1.IN-ADDR.ARPA. IPTR "ko-KR" "name-in-utf8" The notion of canonical names and aliases described in 3.6.2 [RFC1034], and 10.2 [RFC2181] MUST be preserved for IPTR record types. An IPTR RR SHOULD be limited to one primary IDN per LANGUAGE, similar to the a PTR RR.3. IPTR on IPv6Shi, Jiang [Page 3]INTERNET-DRAFT Internationalized PTR Resource Record 17 May 2001 Mapping IPv6 to IDNs can be similarly supported. This document recom- mands to continue using the IP6.INT domain defined in [RFC1886] for IPTR mappings. For example, the lookup corresponding to the address 4321:0:1:2:3:4:567:89ab would be: b.a.9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.IP6.INT. IPTR "LANGUAGE" "name-in-utf8"4. Packet format for IPTR EDNS0[RFC2671] is REQUIRED to implement IPTR. 0 1 2 3 4 bits 0 1 2 3 4 5 6 7 8 9 0 1...9 0...8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 ... +-+-+-+-+-+-+-+-+-+-//-+-+-//-+-+-+-+-+-+-+-+-+-+-+-+-+-//-+-+-+ |0 1| ELT | LANGUAGE | Size | IDN label... | +-+-+-+-+-+-+-+-+-+-//-+-+-//-+-+-+-+-+-+-+-+-+-+-+-+-+-//-+-+-+ LANGUAGE: An argument for IPTR to define the kind of language used in the following IDN label. The size is 2 octets. ELT: To be defined in [IDNE].5. Coexistence5.1 IDN Consideration IPTR described above is based on "a set of IDNs", strictly speaking, a set of canonical IDNs. On the other hand, confusion about IDN, such as "IDN MUST exist with ASCII domain name" has led to a belief that PTR record should have exactly RRs in its RRSet. In short, the phenomenon "IDN ONLY" will exist. Thus, the exceptional handling of PTR is REQUIRED. On the other hand, IDN is still RECOMMENDED to exist with more than one ASCII domain name.5.2 PTR Extension In the case of "IDN ONLY", if IPTR RR is not NULL, PTR RR MUST contain a domain name in ACE to coexist with those IDN unaware systems. Else a "Syntax Error" message SHOULD be sent back, when an administrator con- figures DNS zone files.5.3 IPTR and PTR It is a kind of backward compatible handle for those IDN unaware sys- tems that can not provide the IPTR function. Besides, if a client canShi, Jiang [Page 4]INTERNET-DRAFT Internationalized PTR Resource Record 17 May 2001 not find the corresponding LANGUAGE IDN finally, then the correspond- ing PTR RR SHOULD be used as the answer.6. IPTR query/response When the QTYPE is IPTR in a query, all of the corresponding IPTR RRs SHOULD be returned in one response. DNS messages are limited to 512 octets or less in size when sent over UDP. Therefore, if all the RRs cannot fit in one UDP packet, this draft describe two solutions. One is for recent environment and the other is for the near future.6.1 Transport Today, DNS queries and responses are carried in UDP datagrams or over TCP connections.[RFC1034] specifies, IPTR RRSet is RECOMMENDED to be returned in one response. The size of a DNS message could exceed 512 octets, when multiple RRs are present. Therefore, this draft makes the two following recommendations. - "Use UDP first, if UDP is not large enough then change to TCP" is RECOMMENDED. The server MUST send back the response with the TC bit set. Then the resolver SHOULD resend the query using TCP on server port
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -