summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc5527.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc5527.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc5527.txt')
-rw-r--r--doc/rfc/rfc5527.txt563
1 files changed, 563 insertions, 0 deletions
diff --git a/doc/rfc/rfc5527.txt b/doc/rfc/rfc5527.txt
new file mode 100644
index 0000000..7e28415
--- /dev/null
+++ b/doc/rfc/rfc5527.txt
@@ -0,0 +1,563 @@
+
+
+
+
+
+
+Network Working Group M. Haberler
+Request for Comments: 5527 IPA
+Category: Informational O. Lendl
+ enum.at
+ R. Stastny
+ Unaffiliated
+ May 2009
+
+
+ Combined User and Infrastructure ENUM in the e164.arpa Tree
+
+Status of This Memo
+
+ This memo provides information for the Internet community. It does
+ not specify an Internet standard of any kind. Distribution of this
+ memo is unlimited.
+
+Copyright Notice
+
+ Copyright (c) 2009 IETF Trust and the persons identified as the
+ document authors. All rights reserved.
+
+ This document is subject to BCP 78 and the IETF Trust's Legal
+ Provisions Relating to IETF Documents in effect on the date of
+ publication of this document (http://trustee.ietf.org/license-info).
+ Please review these documents carefully, as they describe your rights
+ and restrictions with respect to this document.
+
+Abstract
+
+ This memo defines an interim solution for Infrastructure ENUM in
+ order to allow a combined User and Infrastructure ENUM implementation
+ in e164.arpa as a national choice. This interim solution will be
+ deprecated after implementation of the long-term solution.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Haberler, et al. Informational [Page 1]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+Table of Contents
+
+ 1. Introduction ....................................................2
+ 2. Terminology .....................................................3
+ 3. Interim Solution ................................................3
+ 4. The Algorithm ...................................................4
+ 5. Determining the Position of the Branch ..........................5
+ 6. Transition to the Long-Term Solution ............................6
+ 7. Examples ........................................................7
+ 8. Security Considerations .........................................8
+ 9. Acknowledgments .................................................9
+ 10. References .....................................................9
+ 10.1. Normative References ......................................9
+ 10.2. Informative References ....................................9
+
+1. Introduction
+
+ ENUM (E.164 Number Mapping, [RFC3761]) is a system that transforms
+ E.164 numbers [E164] into domain names and then queries the DNS
+ (Domain Name Service) [RFC1034] for NAPTR (Naming Authority Pointer)
+ records [RFC3401] in order to look up which services are available
+ for a specific domain name.
+
+ ENUM, as defined in RFC 3761 (User ENUM), is not well suited for the
+ purpose of interconnection by carriers and voice-service providers,
+ as can be seen by the use of various private tree arrangements based
+ on ENUM mechanisms.
+
+ Infrastructure ENUM is defined as the use of the technology in RFC
+ 3761 [RFC3761] by the carrier-of-record (voice service provider)
+ [RFC5067] for a specific E.164 number [E164] in order to publish a
+ mapping of this telephone number to one or more Uniform Resource
+ Identifiers (URIs) [RFC3986].
+
+ Other voice service providers can query the DNS for this mapping and
+ use the resulting URIs as input into their call-routing algorithm.
+ These URIs are separate from any URIs that the end-user who registers
+ an E.164 number in ENUM may wish to associate with that E.164 number.
+
+ The requirements, terms, and definitions for Infrastructure ENUM are
+ defined in [RFC5067].
+
+ Using the same E.164 number to domain mapping techniques for other
+ applications under a different, internationally agreed-upon apex
+ (instead of e164.arpa) is straightforward on the technical side.
+ This process of defining the Dynamic Delegation Discovery System
+ (DDDS) [RFC3401] application for Infrastructure ENUM is defined in
+ [RFC5526]. This is the long-term solution.
+
+
+
+Haberler, et al. Informational [Page 2]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ This document presents an interim solution for Infrastructure ENUM
+ and a mechanism for transitioning to the long-term solution. The
+ interim solution is based on establishing a branch in the e164.arpa
+ tree, which resolvers may locate by following the algorithm described
+ in Section 4. The location of the branch is dependent upon country-
+ code length, and thus resolvers must determine the position of the
+ branch based on the method described in Section 5. Finally,
+ Section 6 provides a way that implementations following the
+ procedures of Sections 4 and 5 may be seamlessly redirected to the
+ long-term solution, when it becomes available.
+
+2. Terminology
+
+ 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 BCP 14, RFC 2119
+ [RFC2119].
+
+3. Interim Solution
+
+ The agreements to establish the long-term solution may take some
+ time. It was therefore decided to develop an interim solution that
+ can be used by individual countries to implement an interoperable
+ Infrastructure ENUM tree immediately. The interim solution will be
+ deprecated when the long-term solution [RFC5526] is deployed. It is
+ therefore also required that the interim solution includes a smooth
+ migration path to the long-term solution.
+
+ It is also required that existing ENUM clients querying User ENUM as
+ defined in RFC 3761 [RFC3761] continue to work without any
+ modification.
+
+ Because of various reasons (e.g., potentially different delegation
+ points, different reliability requirements, and use of DNS
+ wildcards), sharing a single domain name between the user itself and
+ the respective carrier for a given number is not possible. Hence, a
+ different domain name must be used to store infrastructure ENUM
+ information.
+
+ In order to avoid the delays associated with the long-term solution,
+ the existing delegations and agreements around e164.arpa need to be
+ leveraged.
+
+ The method most easily fulfilling the requirements is to branch off
+ the e164.arpa tree into a subdomain at the country-code delegation
+ level below e164.arpa and deploy an Infrastructure ENUM subtree
+ underneath, without touching User ENUM semantics at all.
+
+
+
+
+Haberler, et al. Informational [Page 3]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ This allows countries using a dedicated country code to introduce the
+ interim solution as a national matter to the concerned National
+ Regulation Authority (NRA). The governing body of a shared country
+ code and the owner of a global network code can also choose to
+ implement this solution within their area of responsibility.
+
+ Under this approach, ITU-T (International Telecommunication Union /
+ Telecommunication Standardization Sector), IETF, and IAB involvement
+ is only lightweight, e.g., to recommend the proper algorithm defined
+ here to enable international interoperability.
+
+4. The Algorithm
+
+ RFC 3761 defines ENUM as a Dynamic Delegation Discovery System (DDDS)
+ application according to RFC 3401 [RFC3401]. As such, ENUM defines
+ the following components of the DDDS algorithm:
+
+ 1. Application Unique String
+
+ 2. First Well-Known Rule
+
+ 3. Expected Output
+
+ 4. Valid Databases
+
+ The "Valid Databases" part contains the transformation of an E.164
+ telephone number into a domain name. Section 2.4 of RFC 3761 uses
+ the following 4-step algorithm for this:
+
+ 1. Remove all characters with the exception of the digits.
+
+ 2. Put dots (".") between each digit.
+
+ 3. Reverse the order of the digits.
+
+ 4. Append the string ".e164.arpa" to the end.
+
+ The interim solution for Infrastructure ENUM uses a modified version
+ of this algorithm:
+
+ 1. Determine the proper POSITION parameter for this E.164 number
+ according to the algorithm in Section 5 of this document.
+
+ 2. Build an ordered list of single-digit strings from all digits
+ appearing in the telephone number. All non-digit characters are
+ ignored.
+
+
+
+
+
+Haberler, et al. Informational [Page 4]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ 3. Insert a string consisting of "i" into this list, after POSITION
+ strings. If the list of strings was shorter than POSITION
+ elements, then report an error.
+
+ 4. Reverse the order of the list.
+
+ 5. Append the string "e164.arpa" to the end of the list.
+
+ 6. Create a single domain name by joining the list together with
+ dots (".") between each string.
+
+ This is the only point where the interim Infrastructure ENUM (I-ENUM)
+ solution differs from straight RFC 3761 ENUM. All other parts of
+ User ENUM, including the enumservices registrations, apply to I-ENUM
+ as well.
+
+5. Determining the Position of the Branch
+
+ In order to allow for the deployment of this interim solution
+ independent of IAB/ITU-T/RIPE-NCC negotiations, the branching label
+ "i" cannot be inserted in the Tier-0 zone (i.e., the e164.arpa zone
+ itself) currently managed by RIPE NCC. This condition acts as a
+ lower bound on the choice of the POSITION parameter.
+
+ For international E.164-numbers for geographic areas (Section 6.2.1
+ of [E164]) and for international E.164-numbers for global services
+ (Section 6.2.2 of [E164]), the most sensible choice for POSITION is
+ the number of digits in the country code of the number in question.
+ This places the branch directly under the country-code level within
+ the e164.arpa ENUM tree.
+
+ For international E.164-number for networks (Section 6.2.3 of
+ [E164]), the appropriate choice for POSITION is the combined length
+ of the CC (Country Code) and IC (Identification Code) fields.
+
+ For international E.164-number for groups of countries (Section 6.2.4
+ of [E164]), the value for POSITION is 4.
+
+ The authoritative source for up-to-date country code and network
+ Identification Code allocations is published by the ITU-T as a
+ complement to the recommendation E.164 [E164]. The current version
+ of this complement is available from the ITU website under "ITU-T /
+ Service Publications".
+
+ Please note that country code 1 of the North American Numbering Plan
+ (NANP) does not fall under the ITU classification of "groups of
+ countries", but is a "shared country code" for a geographic area.
+ Thus, the POSITION parameter for the NANP is 1.
+
+
+
+Haberler, et al. Informational [Page 5]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ As of 2007, the POSITION value for a specific E.164 number can be
+ determined with the following algorithm:
+
+ o If the number starts with 1 or 7, then POSITION is 1.
+
+ o If the number is in one of the following 2-digit country codes,
+ then POSITION is 2: 20, 27, 30-34, 36, 39, 40, 41, 43-49, 51-58,
+ 60-66, 81, 82, 84, 86, 90-95, or 98.
+
+ o If the number starts with 388 or 881, then POSITION is 4.
+
+ o If the number starts with 878 or 882, then POSITION is 5.
+
+ o If the number starts with 883 and the next digit is < 5, then
+ POSITION is 6.
+
+ o If the number starts with 883 and the next digit is >= 5, then
+ POSITION is 7.
+
+ o In all other cases, POSITION is 3.
+
+ Given the fact that the ITU-T recently allocated only 3-digit country
+ codes, there are no more spare 1- and 2-digit country codes and
+ existing 1- and 2-digit country codes are extremely unlikely to be
+ recovered, the above list of existing 1- and 2-digit country codes
+ can be considered very stable. The only problem may be for a country
+ that has split, as happened recently, for example, to Yugoslavia.
+
+ Regarding network codes, up to 2007, the ITU-T has only allocated 1-
+ and 2-digit ICs. Assignments of 3- and 4-digit ICs started in May
+ 2007 in the +883 country code. Any further change in the ITU-T
+ policy in this respect will need to be reflected in the above
+ algorithm.
+
+6. Transition to the Long-Term Solution
+
+ The proposed long-term solution for Infrastructure ENUM [RFC5526] is
+ the establishment of a new zone apex for that tree. This apex will
+ play the same role as "e164.arpa" does for User ENUM.
+
+ It is unrealistic to assume that all countries and all ENUM clients
+ will manage to migrate from the interim solution to the long-term
+ solution at a single point in time. It is thus necessary to plan for
+ an incremental transition.
+
+ In order to achieve this, clients using the interim solution need to
+ be redirected to the long-term I-ENUM tree for all country codes that
+ have already switched to the long-term solution. This SHOULD be done
+
+
+
+Haberler, et al. Informational [Page 6]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ by placing DNAME [RFC2672] records at the branch (the "i") label
+ pointing to the appropriate domain name in the long-term I-ENUM tree.
+ All descendants at that branch label location where the DNAME record
+ is inserted MUST be removed, as required by Section 3 of RFC 2672.
+
+ Therefore, ALL entities involved in making or answering DNS queries
+ for I-ENUM MUST fully support the DNAME record type and its
+ semantics. In particular, entities involved in I-ENUM lookups MUST
+ correctly handle responses containing synthesized CNAMEs that may be
+ generated as a consequence of DNAME processing by any other element
+ in resolution, typically an iterative mode resolving name server.
+
+ These entities MUST also apply adequate measures to detect loops and
+ prevent non-terminating resolutions because of improperly configured
+ DNAME records or combinations of DNAME and CNAME records.
+
+ Note: Some caching name server implementations are known to handle
+ DNAMEs incorrectly. In the worst case, such bugs could stay
+ undetected until a country transitions to the long-term solution.
+ Therefore, ensuring full DNAME support from the start (and carefully
+ testing that it actually works) is important.
+
+ The domain name for the branch location and its DNAME record SHOULD
+ be removed once the transition to the long-term solution is completed
+ and all entities involved in I-ENUM have migrated to the new zone
+ apex for I-ENUM.
+
+7. Examples
+
+ These are two examples of how E.164 numbers translate to
+ Infrastructure ENUM domains according to the interim solution.
+
+ +1 21255501234 4.3.2.1.0.5.5.5.2.1.2.i.1.e164.arpa
+ +44 2079460123 3.2.1.0.6.4.9.7.0.2.i.4.4.e164.arpa
+
+ Here is the list of the intermediate steps for the second example to
+ visualize how the algorithm defined in Section 4 operates on "+44
+ 2079460123":
+
+ 1. "+44 2079460123" is within a 2-digit country code; thus, POSITION
+ is 2.
+
+ 2. The list of strings is
+ ("4","4","2","0","7","9","4","6","0","1","2","3")
+
+ 3. POSITION is 2; thus, "i" is inserted between the second and the
+ third string, yielding:
+ ("4","4","i","2","0","7","9","4","6","0","1","2","3")
+
+
+
+Haberler, et al. Informational [Page 7]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+ 4. Reversing the list gives:
+ ("3","2","1","0","6","4","9","7","0","2","i","4","4")
+
+ 5. Appending "e164.arpa" yields:
+ ("3","2","1","0","6","4","9","7","0","2","i","4","4","e164.arpa")
+
+ 6. Concatenation with dots yields:
+ "3.2.1.0.6.4.9.7.0.2.i.4.4.e164.arpa"
+
+ After the introduction of the long-term Infrastructure ENUM solution,
+ using, for example, "ienum.example.net" as the new apex for I-ENUM,
+ the administrators of +44 can implement a smooth transition by
+ putting the following DNAME record in their zone:
+
+ i.4.4.e164.arpa. IN DNAME 4.4.ienum.example.net.
+
+ This way, clients using the interim I-ENUM solution end up querying
+ the same tree as clients implementing the long-term solution.
+
+8. Security Considerations
+
+ Privacy issues have been raised regarding the unwarranted disclosure
+ of user information that would result from publishing Infrastructure
+ ENUM information in the public DNS. For instance, such disclosure
+ could be used for harvesting numbers in service or obtaining unlisted
+ numbers.
+
+ Given that number-range allocation is public information, we believe
+ the easiest way to cope with such concerns is to fully unroll
+ allocated number ranges in the Infrastructure ENUM subtree, wherever
+ such privacy concerns exist. Whether or not a number is served would
+ be exposed by the carrier-of-record when an attempt is made to
+ contact the corresponding URI. We assume this to be an authenticated
+ operation, which would not leak information to unauthorized parties.
+
+ Entering all numbers in an allocated number range, whether serviced
+ or not, or whether listed or unlisted, will prevent mining attempts
+ for such number attributes.
+
+ The result will be that the information in the public DNS will mirror
+ number-range allocation information, but no more. Infrastructure
+ ENUM will not tell you more than you can get by just dialing numbers.
+
+ The URI pointing to the destination network of the carrier-of-record
+ should also not disclose any privacy information about the identity
+ of the end-user. It is therefore recommended to use either
+ anonymized UserIDs or the E.164 number itself in the user part of the
+ URI, such as in sip:+441632960084@example.com.
+
+
+
+Haberler, et al. Informational [Page 8]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+9. Acknowledgments
+
+ We gratefully acknowledge suggestions and improvements by Jason
+ Livingood and Tom Creighton of Comcast, Penn Pfautz of AT&T, Lawrence
+ Conroy of Roke Manor Research, Jim Reid, and Alexander Mayrhofer of
+ enum.at.
+
+10. References
+
+10.1. Normative References
+
+ [E164] ITU-T, "The International Public Telecommunication Number
+ Plan", Recommendation E.164, February 2005.
+
+ [RFC1034] Mockapetris, P., "Domain names - concepts and facilities",
+ STD 13, RFC 1034, November 1987.
+
+ [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
+ Requirement Levels", BCP 14, RFC 2119, March 1997.
+
+ [RFC2672] Crawford, M., "Non-Terminal DNS Name Redirection",
+ RFC 2672, August 1999.
+
+ [RFC3401] Mealling, M., "Dynamic Delegation Discovery System (DDDS)
+ Part One: The Comprehensive DDDS", RFC 3401, October 2002.
+
+ [RFC3761] Faltstrom, P. and M. Mealling, "The E.164 to Uniform
+ Resource Identifiers (URI) Dynamic Delegation Discovery
+ System (DDDS) Application (ENUM)", RFC 3761, April 2004.
+
+ [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
+ Resource Identifier (URI): Generic Syntax", STD 66,
+ RFC 3986, January 2005.
+
+10.2. Informative References
+
+ [RFC5067] Lind, S. and P. Pfautz, "Infrastructure ENUM
+ Requirements", RFC 5067, November 2007.
+
+ [RFC5526] Livingood, J., Pfautz, P., and R. Stastny, "The E.164 to
+ Uniform Resource Identifiers (URI) Dynamic Delegation
+ Discovery System (DDDS) Application for Infrastructure
+ ENUM", RFC 5526, April 2007.
+
+
+
+
+
+
+
+
+Haberler, et al. Informational [Page 9]
+
+RFC 5527 Combined User and Infrastructure ENUM May 2009
+
+
+Authors' Addresses
+
+ Michael Haberler
+ Internet Foundation Austria
+ Karlsplatz 1/2/9
+ Wien 1010
+ Austria
+
+ Phone: +43 664 4213465
+ EMail: ietf@mah.priv.at
+ URI: http://www.nic.at/ipa/
+
+ Otmar Lendl
+ enum.at GmbH
+ Karlsplatz 1/2/9
+ Wien A-1010
+ Austria
+
+ Phone: +43 1 5056416 33
+ EMail: otmar.lendl@enum.at
+ URI: http://www.enum.at/
+
+
+ Richard Stastny
+ Unaffiliated
+ Anzbachgasse 43
+ 1140 Vienna
+ Austria
+
+ Phone: +43 664 420 4100
+ EMail: richardstastny@gmail.com
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Haberler, et al. Informational [Page 10]
+