Internet-Draft | Reserve ALT TLD | April 2023 |
Kumari & Hoffman | Expires 12 October 2023 | [Page] |
This document reserves a TLD label, "alt" to be used in non-DNS contexts. It also provides advice and guidance to developers developing alternative namespaces.¶
[ This document is being collaborated on in Github at <https://github.com/wkumari/draft-wkumari-dnsop-alt-tld>. The most recent version of the document, open issues, etc should all be available here. The authors (gratefully) accept pull requests. ]¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
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."¶
This Internet-Draft will expire on 12 October 2023.¶
Copyright (c) 2023 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 (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
Many Internet protocols need to name entities. Names that look like DNS names (a series of labels separated with dots) have become common, even in systems that are not part of the global DNS administered by IANA. This document reserves the top-level label "alt" (short for "alternative") as a special-use domain name ([RFC6761]). This top-level label can be used as the final (rightmost) label to signify that the name is not rooted in the global DNS, and that it should not be resolved using the DNS protocol.¶
In Section 3.1, the IANA is requested to add the .alt name to the "Special-Use Domain Name" registry. IANA sets aside names in that registry, as described in https://www.iana.org/domains/reserved.¶
Throughout the rest of this document, the top-level "alt" label is shown as ".alt" to match the common presentation form of DNS names.¶
The techniques in this document are primarily intended to address some of the issues discussed in [RFC8244], which contains additional background on the issues with special use domain names.¶
In this document, ".alt" was chosen for the special-use domain name instead of something like "alt.arpa" so that systems that use the name do not have to worry that a parent of their name would be resolved if the name leaked to the Internet. Historically, some systems that want to use non-DNS names wanted the entire name to be not in the DNS, and reserving ".alt" fulfills that use case.¶
This document assumes familiarity with DNS terms; please see [RFC8499]. Terminology that is specific to this document is:¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
This document reserves the .alt label for use as an unmanaged pseudo-TLD namespace. The .alt label can be used in any domain name as a pseudo-TLD to signify that this is an alternative (non-DNS) namespace, and should not be looked up in a DNS context.¶
This document uses ".alt" for the pseudo-TLD in the presentation format for the DNS, corresponding to a 0x03616c7400 suffix in DNS wire format. The on-the-wire formats for non-DNS protocols might be different.¶
Because names beneath .alt are in an alternative namespace, they have no significance in the regular DNS context. DNS stub and recursive resolvers do not need to look them up in the DNS context.¶
DNS resolvers that serve the DNS protocol and non-DNS protocols at the same time might consider .alt like a DNS entry in the "Transport-Independent Locally-Served DNS Zone Registry" that is part of IANA's "Locally-Served DNS Zones" registry, except that .alt is always used to denote names that are to be resolved by non-DNS protocols. Note that this document does not request adding .alt to these registries because .alt, by definition, is not a DNS name.¶
Note that using .alt as a pseudo-TLD does not mandate how the non-DNS protocol will handle the name. To maximize compatibility with existing applications, it is suggested, but not required, that non-DNS protocols using names that end in .alt follow DNS name syntax. If the non-DNS protocol has a wire format like the DNS wire format, it might append the null label at the end of the name, but it also might not. This document does not make any suggestion for how non-DNS protocols deal with the wire format of their names.¶
Groups wishing to create new alternative namespaces may create their alternative namespace under a label that names their namespace under the .alt pseudo-TLD. This document defines neither a registry nor governance model for the .alt namespace, as it is not managed by the IETF or IANA. There is no guarantee of unambiguous mappings from names to name resolution mechanisms. Mitigation or resolution of collisions that occur under .alt are outside the scope of this document and outside the IETF's remit. Users are advised to consider the associated risks when using names under .alt.¶
Regardless of the expectations above, names in the .alt pseudo-TLD will leak outside the context in which they are valid. Decades of experience show that such names will appear at recursive resolvers, and will thus also appear at the root servers for the global DNS.¶
Sending traffic to the root servers that is known to always elicit an NXDOMAIN response, such as queries for names ending in .alt, wastes resources on both the resolver and the root server. Caching resolvers performing aggressive use of DNSSEC- validated caches (described in [RFC8198]) may mitigate this by synthesizing negative answers from cached NSEC records for names under .alt. Similarly, caching resolvers using QNAME minimization (described in [RFC9156]) will cause less of this traffic to the root servers because the negative responses will cover all names under .alt.¶
Currently deployed projects and protocols that are using pseudo-TLDs are recommended to move under the .alt pseudo-TLD, but this is not a requirement. Rather, the .alt pseudo-TLD is being reserved so that current and future projects of a similar nature have a designated place to create alternative resolution namespaces that will not conflict with the regular DNS context.¶
The IANA is requested to add the .alt name to the "Special-Use Domain Name" registry ([RFC6761]), and reference this document.¶
This section exists to meet the requirements of [RFC6761]. The questions posed in RFC 6761 were largely written assuming a DNS resolution system, and so some of the questions are not especially relevant or well suited.¶
1. Users might or might not recognize that names in the .alt pseudo-TLD as special.¶
2. Application software that uses alternative namespaces in the .alt pseudo-TLD are expected to have their own processing rules for their own names, probably in specialized resolver APIs, libraries, and/or application software. Application software that is not specifically designed to use names in the .alt pseudo-TLD are not expected to make their software recognize these names as special.¶
3. Writers of name resolution APIs and libraries that are specifically designed to implement resolution of an alternative name resolution system are expected to recognize names in the .alt pseudo-TLD as special and thus perform resolution of those names. The exact mechanism used by the name resolution APIs and libraries will obviously depend on the particular alternative resolution system. Regular DNS resolution APIs and libraries are not expected to recognize or treat names in the .alt pseudo-TLD differently.¶
4. Caching DNS servers SHOULD NOT recognize names in the .alt pseudo-TLD as special and SHOULD NOT perform any special handling with them.¶
5. Authoritative DNS servers SHOULD NOT recognize names in the .alt pseudo-TLD as special and should not perform any special handling with them.¶
6. DNS server operators will treat names in the .alt pseudo-TLD as they would names in any other TLD not in the global DNS. DNS server operators MAY be aware that queries for name ending in .alt are not DNS names, and queries for those names were leaked into the DNS context. This information can be useful for support or debugging purposes.¶
7. DNS registries/registrars for the global DNS will never register names in the .alt pseudo-TLD because .alt will not exist in the global DNS root.¶
This document reserves .alt to be used to indicate that a name is not a DNS name. Unfortunately, these queries will undoubtedly leak into the global DNS. This is a general problem with alternative namespaces and not confined to names ending in .alt.¶
For example, a value such as "example.alt" could easily cause a privacy issue for any names in that namespace that are leaked to the Internet. In addition, if a name ending in .alt is sufficiently unique, long-lasting, and frequently leaks into the global DNS, then regardless of how the value is constructed, that value can act similar to a web cookie with all the associated downsides of (re-)identification.¶
Because names in the .alt pseudo-TLD are explicitly outside of the DNS context, it is impossible to rely on any DNS-related security considerations. Care must be taken when mapping the pseudo-TLD into its corresponding non-DNS name resolution system in order to get whatever security is offered by that system.¶
We would like to thank Joe Abley, Mark Andrews, Erik Auerswald, Roy Arends, Ray Bellis, Vittorio Bertola, Marc Blanchet, John Bond, Stephane Bortzmeyer, David Cake, Vint Cerf, David Conrad, Steve Crocker, Vladimir Cunat, Brian Dickson, Ralph Droms, Robert Edmonds, Patrik Faltstrom, Bernd Fix, Christian Grothoff, Olafur Gudmundsson, Ted Hardie, Bob Harold, Wes Hardaker, Geoff Huston, Joel Jaeggli, John C Klensin, Eliot Lear, Barry Leiba, Ted Lemon, Edward Lewis, John Levine, George Michaelson, Ed Pascoe, Libor Peltan, Jim Reid, Martin Schanzenbach, Ben Schwartz, Arturo Servin, Peter Thomassen, Paul Vixie, Duane Wessels, Paul Wouters, and Suzanne Woolf for feedback.¶
This document was many years in the making, and we would like to sincerely apologize for anyone who we forgot to credit.¶
We would also like to thank Rob Wilton for serving as Responsible AD for this document.¶
In addition, Andrew Sullivan was an author from adoption (2015) through version 14 (2021).¶
[RFC Editor: Please remove this section before publication ]¶
From -22 to -23:¶
From -21 to -22:¶
From -20 to -21:¶
From -19 to -20:¶
From -18 to -19:¶
From -16 to -18:¶
From -15 to -16:¶
From -14 to -15:¶
From -13 to -14:¶
From -12 to -13:¶
From -08 to -12:¶
From -07 to -08:¶
From -06 to -07:¶
From -07.2 to -07.3 (GitHub point release):¶
From -07.1 to -07.2 (Github point release):¶
From -06 to -07.1 (https://github.com/wkumari/draft-wkumari-dnsop-alt-tld/tree/7988fcf06100f7a17f21e6993b781690b5774472):¶
From -05 to -06:¶
From -04 to -05:¶
From -03 to -04:¶
From -02 to -03:¶
From -01 to -02:¶
From -00 to 01:¶
From Individual-06 to DNSOP-00¶
From -05 to -06¶
From -04 to -05¶
From -03 to -04¶
From -02 to -03¶
From -01 to -02¶
From -00 to -01.¶