INTERNET-DRAFT                      L. Masinter, J. Gettys, B. Carpenter
draft-masinter-url-ipv6-00
Expires six months after publication date                 March 12, 1998

                    Using IPv6 Addresses in URLs

Status of this Memo

   This document is an Internet-Draft.  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.''

   To learn the current status of any Internet-Draft, please check the
   ``1id-abstracts.txt'' listing contained in the Internet-Drafts
   Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net
   (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East
   Coast), or ftp.isi.edu (US West Coast).

Copyright Notice

   Copyright (C) The Internet Society (1997).  All Rights Reserved.

Abstract

   The normal textual representation for IPv6 addresses as a set
   of colon-separated hexadecimal numbers does not work well with
   most deployed URL-parsing software. This document describes an
   alternate format which will pass unharmed through most URL-parsing
   software.

1. Introduction

   The normal textual representation for IPv6 addresses as a set of
   colon-separated hexadecimal numbers does not work well with most
   deployed URL-parsing software. This document describes an alternate
   format which will pass unharmed through most URL-parsing software.

2. Background

   The standard representation for IPv6 addresses in text [IPV6ADDR]
   uses embedded colons ":"; in addition, it has been suggested that
   square brackets "[]" be used isolate the address from any
   additional text. Thus, an IPv6 address might be written
   "[ABCD:EF01::2345:10.9.8.7]".

   Unfortunately, using this IPv6 syntax within URLs [URISYNTAX] would
   be disruptive of many applications. The colon is used normally to
   separate the host name or address from an (optional) port number;
   in some addresses, a colon followed by a decimal number could
   ambiguously be interpreted as a port designator or part of the IPv6
   address.  Square brackets are not normally allowed in URLs, and may
   be used as a delimiter around the entire URL.

   Even if there were no ambiguity, this syntax is incompatible with a
   very large number of deployed applications that parse (but do not
   resolve) URLs, including many CGI scripts, robots, search engines,
   and so forth.

   In addition, common operating system scripting languages have a
   special interpretation for square brackets. While it is believed
   that the use of IPv6 addresses instead of host names will be much
   rarer than the use of IPv4 addresses, the use is envisioned in
   emergency situations, e.g., when the domain name system is not
   functioning: having the syntax be incompatible with operating
   system command syntax would deny access to network operators just
   in times when it is needed the most.

   One of the most important characteristics of Uniform Resource
   Locators is that they are Uniform: the same syntax is used by all
   applications. Having different representations for different
   applications would be confusing and counter-productive.

3. Syntax

   The safest way to embed IPv6 addresses in URLs is to use a syntax
   which will look like a domain name to otherwise unaware software.

   The syntax is best described as a transformation of the
   normal IPv6 syntax:

   a) replace every colon ":" with a "-"
   b) append ".ipv6" to the end.

   Thus, an HTTP service available at port 70 of IPv6 address
   "ABCD:EF01::2345:10.9.8.7" could be written as

        http://ABCD-EF01--2345-10.9.8.7.ipv6:70/

   This syntax should always be used. Internet software that resolves
   host names and addresses in URLs should be modified to recognize
   the "ipv6" pseudo-domain.

4. IANA considerations

   The Internet Assigned Names Authority is requested to reserve
   the "ipv6" pseudo-domain for the purpose outlined in this memo.

5. References

[URISYNTAX] R. Fielding, L. Masinter, T. Berners-Lee, "Uniform
Resource Identifiers: Generic Syntax", draft-fielding-uri-syntax-02.txt,
March, 1998.

[IPV6ADDR] R. Hinden, S. Deering. "IP Version 6 Addressing Architecture",
draft-ietf-ipngwg-addr-arch-v2-06.txt, January, 1998.


6. Authors' Addresses

   Larry Masinter
   Xerox Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, CA 94034, USA
   Fax: +1 650 812 4365
   EMail: masinter@parc.xerox.com

   James Gettys
   MIT Laboratory for Computer Science
   545 Technology Square
   Cambridge, MA 02139, USA
   Fax: +1 617 258 8682
   Email: jg@w3.org

   Brian Carpenter
   IBM United Kingdom Laboratories
   MP 185, Hursley Park
   Winchester, Hampshire SO21 2JN, UK
   Email: brian@hursley.ibm.com


7. Full Copyright Statement

   Copyright (C) The Internet Society (1997).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain
   it or assist in its implementation may be prepared, copied,
   published and distributed, in whole or in part, without restriction
   of any kind, provided that the above copyright notice and this
   paragraph are included on all such copies and derivative works.
   However, this document itself may not be modified in any way, such
   as by removing the copyright notice or references to the Internet
   Society or other Internet organizations, except as needed for the
   purpose of developing Internet standards in which case the
   procedures for copyrights defined in the Internet Standards process
   must be followed, or as required to translate it into languages
   other than English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is 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.