RFC 2732
Format for Literal IPv6 Addresses in URL's
Format for Literal IPv6 Addresses in URL's β¨
Network Working Group π RFC 2732, Standards Track, December 1999 π Authors: R. Hinden (Nokia), B. Carpenter (IBM), and L. Masinter (AT&T) π― This one updates RFC 2396 π
Status of This Memo
okay so this doc is a Standards Track protocol for the Internet community, and it's basically asking everyone to talk about it and suggest fixes π¬ If you want to know where it sits in the official standardization process, check the current "Internet Official Protocol Standards" (STD 1) π Distribution is unlimited, so share it wherever πΈ
Copyright Notice
Β© The Internet Society (1999). All Rights Reserved. π
Abstract
this doc defines how literal IPv6 addresses should look inside URLs so web browsers can use them π The format is already in the IPv6 versions of some seriously popular browsers, including Microsoft Internet Explorer, Mozilla, and Lynx π It's also meant to be used in the IPv6 version of the service location protocol β¨
It also includes an update to the generic URI syntax from RFC 2396 [URL]. It defines a syntax for IPv6 addresses and lets you use "[" and "]" inside a URI, but only for this reserved purpose π¦
1. Introduction π§
the textual form of literal IPv6 addresses in [ARCH] doesn't play nicely with URLs π Both use ":" and "." as delimiters, so things get messy. This doc sets the URL format for literal IPv6 addresses for web browsers. The big goal is easy "cut" and "paste", with as little editing of the literal address as possible π
Like the abstract says, the format is already in the IPv6 versions of Microsoft Internet Explorer, Mozilla, and Lynx, and it's also meant for the IPv6 version of the service location protocol π«Ά
1.1 Requirements
ok the key words are MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, wherever they show up in this doc. They're interpreted as described in [KEYWORDS] π
World Wide Web browsers SHOULD implement the IPv6 literal format in URLs defined here π Other apps and protocols that use URLs MAY use this format too π
2. Literal IPv6 Address Format in URL's Syntax π
to put a literal IPv6 address in a URL, you should wrap it in "[" and "]" characters π Here are some example literal IPv6 addresses:
FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
1080:0:0:0:8:800:200C:4171
3ffe:2a00:100:7031::1
1080::8:800:200C:417A
::192.9.5.5
::FFFF:129.144.52.38
2010:836B:4179::836B:4179
and here's how they'd look as URLs π¦
http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html
http://[1080:0:0:0:8:800:200C:417A]/index.html
http://[3ffe:2a00:100:7031::1]
http://[1080::8:800:200C:417A]/foo
http://[::192.9.5.5]/ipng
http://[::FFFF:129.144.52.38]:80/index.html
http://[2010:836B:4179::836B:4179]
3. Changes to RFC 2396 π§
this doc updates the generic URI syntax from RFC 2396 [URL] π It defines a syntax for IPv6 addresses and lets "[" and "]" show up in a URI, but only for this reserved purpose π
Here are the changes to the RFC 2396 syntax:
(1) The 'host' non-terminal gets an IPv6 option added πΈ
host = hostname | IPv4address | IPv6reference
ipv6reference = "[" IPv6address "]"
where IPv6address is defined as in RFC2373 [ARCH] β¨
(2) The definition of 'IPv4address' gets replaced with the one from RFC 2373, because it correctly says an IPv4address is at most three decimal digits per segment π’
(3) "[" and "]" get added to the 'reserved' set π
reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
"$" | "," | "[" | "]"
and they get removed from the 'unwise' set π
unwise = "{" | "}" | "|" | "\" | "^" | "`"
4. Security Considerations π
β οΈ Using this approach to represent literal IPv6 addresses in URLs does not introduce any known new security concerns. β οΈ
5. IANA Considerations π
None.
6. Authors' Addresses π
Robert M. Hinden
Nokia
313 Fairchild Drive
Mountain View, CA 94043
USA
Phone: +1 650 625 2004
EMail: hinden@iprg.nokia.com
Web: http://www.iprg.nokia.com/~hinden
Brian E. Carpenter
IBM
iCAIR, Suite 150
1890 Maple Avenue
Evanston IL 60201
USA
EMail: brian@icair.org
Larry Masinter
AT&T Labs
75 Willow Road
Menlo Park, CA 94025
EMail: LMM@acm.org
Web: http://larry.masinter.net
7. References π
[ARCH] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 2373, July 1998.
[STD-PROC] Bradner, S., The Internet Standards Process -- Revision 3,
BCP 9, RFC 2026, October 1996.
[URL] Fielding, R., Masinter, L. and T. Berners-Lee, "Uniform
Resource Identifiers: Generic Syntax", RFC 2396, August
1998.
8. Full Copyright Statement β
Β© The Internet Society (1999). All Rights Reserved.
this doc and its translations can be copied and shared, and derivative works that comment on or explain it, or help implement it, can be made, copied, published, and distributed, in whole or in part, with no restrictions, as long as the copyright notice and this paragraph are included on every copy and derivative π«Ά But the doc itself can't be modified in any way, such as by removing the copyright notice or the references to the Internet Society or other Internet orgs. The exceptions are developing Internet standards (in which case the Internet Standards process copyright procedures must be followed) or translating it into languages other than English π
The permissions above are perpetual and won't be revoked by the Internet Society or its successors or assigns π
This doc and the info in it are provided on an "AS IS" basis, and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE π
Acknowledgement π·
Funding for the RFC Editor function is currently provided by the Internet Society π«Ά
π¦ where this page comes from
- ietf: rfc2732 1999-12
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms