idnits 2.17.00 (12 Aug 2021) /tmp/idnits38394/draft-ietf-dnsop-alt-tld-13.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (21 June 2021) is 334 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 7719 (Obsoleted by RFC 8499) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 dnsop W. Kumari 3 Internet-Draft Google 4 Intended status: Informational A. Sullivan 5 Expires: 23 December 2021 Oracle 6 21 June 2021 8 The ALT Special Use Top Level Domain 9 draft-ietf-dnsop-alt-tld-13 11 Abstract 13 This document reserves a string (ALT) to be used as a TLD label in 14 non-DNS contexts. It also provides advice and guidance to developers 15 developing alternative namespaces. 17 [Ed note: Text inside square brackets ([]) is additional background 18 information, answers to frequently asked questions, general musings, 19 etc. They will be removed before publication. This document is 20 being collaborated on in Github at: https://github.com/wkumari/draft- 21 wkumari-dnsop-alt-tld. The most recent version of the document, open 22 issues, etc should all be available here. The authors (gratefully) 23 accept pull requests. ] 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on 23 December 2021. 42 Copyright Notice 44 Copyright (c) 2021 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 49 license-info) in effect on the date of publication of this document. 50 Please review these documents carefully, as they describe your rights 51 and restrictions with respect to this document. Code Components 52 extracted from this document must include Simplified BSD License text 53 as described in Section 4.e of the Trust Legal Provisions and are 54 provided without warranty as described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 59 1.1. Requirements notation . . . . . . . . . . . . . . . . . . 2 60 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 61 2. Background . . . . . . . . . . . . . . . . . . . . . . . . . 3 62 3. The ALT namespace . . . . . . . . . . . . . . . . . . . . . . 4 63 3.1. Choice of the ALT Name . . . . . . . . . . . . . . . . . 4 64 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 65 4.1. Domain Name Reservation Considerations . . . . . . . . . 5 66 5. Privacy Considerations . . . . . . . . . . . . . . . . . . . 6 67 6. Security Considerations . . . . . . . . . . . . . . . . . . . 7 68 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 69 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 70 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 71 8.2. Informative References . . . . . . . . . . . . . . . . . 8 72 Appendix A. Changes / Author Notes. . . . . . . . . . . . . . . 8 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 75 1. Introduction 77 Many protocols and systems need to name entities. Names that look 78 like DNS names (a series of labels separated with dots) have become 79 common, even in systems that are not part of the global DNS 80 administered by IANA. This document reserves the label "ALT" (short 81 for "Alternative") as a Special Use Domain ([RFC6761]). This label 82 is intended to be used as the final (rightmost) label to signify that 83 the name is not rooted in the DNS, and that it should not be resolved 84 using the DNS protocol. 86 1.1. Requirements notation 88 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 89 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 90 document are to be interpreted as described in [RFC2119]. 92 1.2. Terminology 94 This document assumes familiarity with DNS terms and concepts. 95 Please see [RFC1034] for background and concepts, and [RFC7719] for 96 terminology. Readers are also expected to be familiar with the 97 discussions in [RFC8244] 99 * DNS name: Domain names that are intended to be used with DNS 100 resolution, either in the global DNS or in some other context 102 * DNS context: The namespace anchored at the globally-unique DNS 103 root. This is the namespace or context that "normal" DNS uses. 105 * non-DNS context: Any other (alternative) namespace. 107 * pseudo-TLD: A label that appears in a fully-qualified domain name 108 in the position of a TLD, but which is not registered in the 109 global DNS. This term is not intended to be pejorative. 111 * TLD: The last visible label in either a fully-qualified domain 112 name or a name that is qualified relative to the root. See the 113 discussion in Section 2. 115 2. Background 117 The success of the DNS makes it a natural starting point for systems 118 that need to name entities in a non-DNS context. 120 In many cases, these systems build a DNS-style tree parallel to, but 121 separate from, the global DNS. They often use a pseudo-TLD to cause 122 resolution in the alternative namespace, using browser plugins, shims 123 in the name resolution process, or simply applications that perform 124 special handling of this particular alternative namespace. An 125 example of such a system is the Tor network's [Dingledine2004] use of 126 the ".onion" Special-Use Top-Level Domain Name (see [RFC7686]). 128 In many cases, the creators of these alternative namespaces have 129 chosen a convenient or descriptive string and started using it. 130 These strings are not registered anywhere nor are they part of the 131 DNS. However, to users and to some applications, they appear to be 132 TLDs; and issues may arise if they are looked up in the DNS. This 133 document suggests that name resolution libraries (stub resolvers) 134 recognize names ending in ".alt" as special, and not attempt to look 135 them up using the DNS protocol in order to limit the effects of 136 queries accidentally leaking into the DNS. 138 The techniques in this document are primarily intended to address the 139 "Experimental Squatting Problem", the "Land Rush Problem" and "Name 140 Collisions" issues discussed in [RFC8244] (which contains much 141 additional background, etc). 143 3. The ALT namespace 145 This document reserves the ALT label, using the [RFC6761] process, 146 for use as an unmanaged pseudo-TLD namespace. The ALT label MAY be 147 used in any domain name as a pseudo-TLD to signify that this is an 148 alternative (non-DNS) namespace, and should not be looked up in a DNS 149 context. 151 Alternative namespaces should differentiate themselves from other 152 alternative namespaces by choosing a name and using it in the label 153 position just before the pseudo-TLD (ALT). For example, a group 154 wishing to create a namespace for Friends Of Olaf might choose the 155 string "foo" and use any set of labels under foo.alt. 157 As names beneath ALT are in an alternative namespace, they have no 158 significance in the regular DNS context and so should not be looked 159 up in the DNS context. 161 Groups wishing to create new alternative namespaces may create their 162 alternative namespace under a label that names their namespace under 163 the ALT label. They should attempt to choose a label that they 164 expect to be unique and, ideally, descriptive. There is no IANA 165 registry for names under the ALT TLD - it is an unmanaged namespace, 166 and developers are responsible for dealing with any collisions that 167 may occur under .alt. Informal lists of namespaces under .alt may be 168 created to assist the developer community. 170 Currently deployed projects and protocols that are using pseudo-TLDs 171 may choose to move under the ALT TLD, but this is not a requirement. 172 Rather, the ALT TLD is being reserved so that current and future 173 projects of a similar nature have a designated place to create 174 alternative resolution namespaces that will not conflict with the 175 regular DNS context. 177 3.1. Choice of the ALT Name 179 A number of names other than "ALT" were considered and discarded. 180 While these are not DNS names, in order for this technique to be 181 effective the names need to continue to follow both the DNS format 182 and conventions (a prime consideration for alternative name formats 183 is that they can be entered in places that normally take DNS context 184 names); this rules out using suffixes that do not follow the usual 185 letter, digit, and hyphen label convention. 187 A short label was deemed desirable for a number of reasons, 188 including: 190 * this is a switch to other resolution contexts, some which may have 191 long labels (for example derived from public keys). 193 * some queries will undoubtedly leak into the DNS. As many of these 194 alternate resolution systems are specifically designed for 195 privacy, limiting how far they leak is desirable. 197 * as there are not protocol police, the label needs to be attractive 198 to implementors of alternate resolution contexts so that they are 199 willing to use this. 201 4. IANA Considerations 203 The IANA is requested to add the ALT string to the "Special-Use 204 Domain Name" registry ([RFC6761], and reference this document. 206 4.1. Domain Name Reservation Considerations 208 This section is to satisfy the requirement in Section 5 of RFC6761. 210 The string ".alt." (and names ending with the string .alt) are 211 special in the following ways: 213 1. Users are expected to know that strings that end in .alt behave 214 differently to normal DNS names. Users are expected to have 215 applications running on their machines that intercept strings of 216 the form .alt and perform special handing of them, or 217 that applications themselves will recognize the strings as 218 special, and perform special handling. If the user tries to 219 resolve a name of the form .alt without the 220 plugin installed (or in the wrong application), the 221 request will leak into the DNS, receive a negative response, and 222 the resolution will fail. 224 2. Writers of application software that implement a non-DNS 225 namespace are expected to intercept names of the form 226 .alt and perform application specific handing with 227 them. Other applications are not required to perform any special 228 handing (but may choose to provide helpful informational messages 229 if able). 231 3. Writers of name resolution APIs and libraries which operate in 232 the DNS context should not attempt to look these names up in the 233 DNS. If developers of other namespaces implement their namespace 234 through a "shim" or library, they will need to intercept and 235 perform their own handling. 237 4. Caching DNS servers SHOULD NOT recognize these names as special 238 and should not perform any special handling with them. 240 5. Authoritative DNS servers SHOULD NOT recognize these names as 241 special and should not perform any special handling with them. 243 6. DNS server operators SHOULD be aware that queries for names 244 ending in .alt are not DNS names, and were leaked into the DNS 245 context (for example, by a missing browser plugin). This 246 information may be useful for support or debugging purposes. 248 7. DNS Registries/Registrars MUST NOT grant requests to register 249 ".alt" names in the normal way to any person or entity. These 250 ".alt" names are defined by protocol specification to be 251 nonexistent, and they fall outside the set of names available for 252 allocation by registries/registrars. 254 Earlier versions of this document requested that .ALT be added to the 255 "Locally Served Zones" registry, and that a DNSSEC insecure 256 delegation (a delegation with no DS record) be created at the root. 257 Significant discussion on the DNSOP list (and an interim meeting) 258 generated the consensus that these names are specifically not DNS 259 names, and that them leaking into the DNS is an error. This means 260 that the current (non-delegated) response of NXDOMAIN is correct as 261 there is no DNS domain .alt, and so the document was updated to 262 remove these requests. 264 5. Privacy Considerations 266 This document reserves ALT to be used to indicate that a name is not 267 a DNS name, and so should not attempt to be resolved using the DNS. 268 Unfortunately, these queries will undoubtedly leak into the DNS - for 269 example, a user may receive an email containing a hostname which 270 should be resolved using a specific resolution context (implemented 271 by a specific application or resolution mechanism). If the user does 272 not have that particular application installed (and their stub 273 resolver library has not been updated to ignore queries for names 274 ending in .alt), it is likely that this will instead be resolved 275 using the DNS. This DNS query will likely be sent to the configured 276 iterative resolver. If this resolver does not have a cache entry for 277 this name (or, if the resolver implements [RFC8198], a entry for 278 .alt) this query will likely be sent to the DNS root servers. This 279 exposes the (leaked) query name to the operator of the resolver, the 280 operator of the queried DNS root server, and anyone watching queries 281 along the path. This is a general problem with alternative name 282 spaces and not confined to names ending in .alt. 284 6. Security Considerations 286 One of the motivations for the creation of the .alt pseudo-TLD is 287 that unmanaged labels in the managed root name space are subject to 288 unexpected takeover. This could occur if the manager of the root 289 name space decides to delegate the unmanaged label. 291 The unmanaged and "registration not required" nature of labels 292 beneath .alt provides the opportunity for an attacker to re-use the 293 chosen label and thereby possibly compromise applications dependent 294 on the special host name. 296 7. Acknowledgements 298 We would like to thank Joe Abley, Mark Andrews, Marc Blanchet, John 299 Bond, Stephane Bortzmeyer, David Cake, David Conrad, Steve Crocker, 300 Brian Dickson, Ralph Droms, Robert Edmonds, Patrik Faltstrom, Olafur 301 Gudmundsson, Bob Harold, Paul Hoffman, Joel Jaeggli, Ted Lemon, 302 Edward Lewis, John Levine, George Michaelson, Ed Pascoe, Jim Reid, 303 Arturo Servin, Paul Vixie, Suzanne Woolf for feedback. 305 Christian Grothoff was also very helpful. 307 8. References 309 8.1. Normative References 311 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 312 STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987, 313 . 315 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 316 Requirement Levels", BCP 14, RFC 2119, 317 DOI 10.17487/RFC2119, March 1997, 318 . 320 [RFC6761] Cheshire, S. and M. Krochmal, "Special-Use Domain Names", 321 RFC 6761, DOI 10.17487/RFC6761, February 2013, 322 . 324 [RFC7686] Appelbaum, J. and A. Muffett, "The ".onion" Special-Use 325 Domain Name", RFC 7686, DOI 10.17487/RFC7686, October 326 2015, . 328 [RFC7719] Hoffman, P., Sullivan, A., and K. Fujiwara, "DNS 329 Terminology", RFC 7719, DOI 10.17487/RFC7719, December 330 2015, . 332 8.2. Informative References 334 [Dingledine2004] 335 Dingledine, R., Mathewson, N., and P. Syverson, "Tor: The 336 Second-Generation Onion Router", , August 2004, 337 <>. 340 [RFC8198] Fujiwara, K., Kato, A., and W. Kumari, "Aggressive Use of 341 DNSSEC-Validated Cache", RFC 8198, DOI 10.17487/RFC8198, 342 July 2017, . 344 [RFC8244] Lemon, T., Droms, R., and W. Kumari, "Special-Use Domain 345 Names Problem Statement", RFC 8244, DOI 10.17487/RFC8244, 346 October 2017, . 348 Appendix A. Changes / Author Notes. 350 [RFC Editor: Please remove this section before publication ] 352 From -12 to -13: 354 * Just bumping versions to prevent expiration. 356 From -08 to -12: 358 * Just bumping versions to prevent expiration. 360 * Updated references (aggressive-nsec is now RFC 8198, draft-ietf- 361 dnsop-sutld-ps is now 8244). 363 From -07 to -08: 365 * Made it clear that this is only for non-DNS. 367 * As per Interim consensus, removed the "add this to local zones" 368 text. 370 * Added a Privacy Considerations section 372 * Grammar fix -- "alternative" is more correct than "alternate", 373 replaced. 375 From -06 to -07: 377 * Rolled up the GItHub releases in to a full release. 379 From -07.2 to -07.3 (GitHub point release): 381 Removed 'sandbox' at Stephane's suggestion - https://www.ietf.org/ 382 mail-archive/web/dnsop/current/msg18495.html 384 Suggested (in 4.1 bullet 3) that DNS libraries ignore these -- Bob 385 Harold - https://mailarchive.ietf.org/arch/msg/dnsop/ 386 a_ruPf8osSzi_hCzCqOxYLXhYoA 388 Added some pointers to the SUTLD document. 390 From -07.1 to -07.2 (Github point release): 392 * Reverted the string (at request of chairs). 394 * Added an editors note explaining the above. 396 * Removed some more background, editorializing, etc. 398 From -06 to -07.1 (https://github.com/wkumari/draft-wkumari-dnsop- 399 alt-tld/tree/7988fcf06100f7a17f21e6993b781690b5774472): 401 * Replaced ALT with at the suggestions of George. 403 From -05 to -06: 405 * Removed a large amount of background - we now have the (adopted) 406 tldr document for that. 408 * Made it clear that pseudo-TLD is not intended to be pejorative. 410 * Tried to make it cleat that this is something people can choose to 411 use - or not. 413 From -04 to -05: 415 * Version bump - we are waiting in the queue for progress on SUN, 416 bumping this to keep it alive. 418 From -03 to -04: 420 * 3 changes - the day, the month and the year (a bump to keep 421 alive). 423 From -02 to -03: 425 * Incorporate suggestions from Stephane and Paul Hoffman. 427 From -01 to -02: 429 * Merged a bunch of changes from Paul Hoffman. Thanks for sending a 430 git pull. 432 From -00 to 01: 434 * Removed the "delegated to new style AS112 servers" text -this was 435 legacy from the omnicient AS112 days. (Joe Abley) 437 * Removed the "Advice to implemntors" section. This used to 438 recommend that people used a subdomain of a domain in the DNS. It 439 was pointed out that this breaks things badly if the domain 440 expires. 442 * Added text about why we don't want to adminster a registry for 443 ALT. 445 From Individual-06 to DNSOP-00 447 * Nothing changed, simply renamed draft-wkumari-dnsop-alt-tld to 448 draft-ietf-dnsop-alt-tld 450 From -05 to -06 452 * Incorporated comments from a number of people, including a number 453 of suggestion heard at the IETF meeting in Dallas, and the DNSOP 454 Interim meeting in May, 2015. 456 * Removed the "Let's have an (optional) IANA registry for people to 457 (opportinistically) register their string, if they want that 458 option" stuff. It was, um, optional.... 460 From -04 to -05 462 * Went through and made sure that I'd captured the feedback 463 received. 465 * Comments from Ed Lewis. 467 * Filled in the "Domain Name Reservation Considerations" section of 468 RFC6761. 470 * Removed examples from .Onion. 472 From -03 to -04 473 * Incorporated some comments from Paul Hoffman 475 From -02 to -03 477 * After discussions with chairs, made this much more generic (not 478 purely non-DNS), and some cleanup. 480 From -01 to -02 482 * Removed some fluffy wording, tightened up the language some. 484 From -00 to -01. 486 * Fixed the abstract. 488 * Recommended that folk root their non-DNS namespace under a DNS 489 namespace that they control (Joe Abley) 491 Authors' Addresses 493 Warren Kumari 494 Google 495 1600 Amphitheatre Parkway 496 Mountain View, CA, 94043 497 United States of America 499 Email: warren@kumari.net 501 Andrew Sullivan 502 Oracle 503 150 Dow Street 504 Manchester, NH, 03101 505 United States of America 507 Email: asullivan@dyn.com