[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01 02

Network Working Group                                          B. Fenner
Internet-Draft                                     AT&T Labs -- Research
Expires: April 24, 2006                                        M. Duerst
                                               World Wide Web Consortium
                                                        October 21, 2005

   Formats for IPv6 Scope Zone Identifiers in Literal Address Formats

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   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-

   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."

   The list of current Internet-Drafts can be accessed at

   The list of Internet-Draft Shadow Directories can be accessed at

   This Internet-Draft will expire on April 24, 2006.

Copyright Notice

   Copyright (C) The Internet Society (2005).


   This document specifies the format to be used when specifying a zone
   identifier with a literal IPv6 address in URIs and IRIs, and in SMTP
   and Internet Mail Messages.  While this combination is expected to be
   needed rarely, it is useful to specify the exact syntax.

Fenner & Duerst          Expires April 24, 2006                 [Page 1]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

1.  Introduction

   RFC 3986 [RFC3986] defines the IPv6address production for the rare
   case that a literal IPv6 address is required in a URI.  IRIs
   [RFC3987] copy this syntax.  The IPv6 Scoping Architecture [RFC4007]
   describes the syntax for specifying a zone ID to disambiguate an
   ambiguous scoped address.  Unfortunately, the IPv6address production
   does not permit the format including the zone ID, so this document
   defines a method to specify a zone ID with a literal IPv6 address in
   URIs and IRIs.

   The Simple Mail Transfer Protocol [RFC2821]'s IPv6-address-literal
   production provides the same ability for SMTP, so this document
   defines a similar syntax to specify a zone ID with a literal IPv6
   address for SMTP.

   While part of the reason for the deprecation of Site-Local scoped
   addresses [RFC3879] was due to applications needing to know about
   scope zones, the formats described in this document do not have the
   problem described in section 2.1 of that document - specifically,
   they always contain the zone ID, so are never ambiguous.

2.  Format in URIs and IRIs

   The IPvFuture production in URIs and IRIs was created to allow for
   flexibility in defining new IP address formats.  We use this
   flexibility in this format, to add a previously unanticipated address
   format for IPv6.  Therefore, strings matching this grammar also match
   the IPvFuture production in URIs and IRIs.  While the form specified
   in the IPv6 Scoping Architecture [RFC4007] uses a percent ("%") to
   separate the zone ID from the address, this form separates the zone
   ID from the address using an plus sign ("+"), to avoid the special
   meaning of the percent ("%") in URIs.

   ; An address matching IPv6scoped-literal also matches
   ; the URI/IRI spec's IP-literal with IPvFuture
   IPv6scoped-literal = "[v1." IPv6scoped-address "]"
   IPv6scoped-address = IPv6address "+" IPv6zone-id
   IPv6zone-id = 1*( unreserved / sub-delims / ":" )

3.  Format in SMTP

   Although it usage is expected to be even more rare, there may be a
   reason to use a zone ID in an IPv6 literal address in SMTP.  An
   addition to the ABNF grammar used in the Simple Mail Transfer

Fenner & Duerst          Expires April 24, 2006                 [Page 2]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

   Protocol [RFC2821] follows.

   ; An address matching IPv6-address-scoped-literal
   ; also matches RFC 2821's General-address-literal production
   IPv6-address-scoped-literal: "IPv6z:" IPv6-addr "+" 1*dcontent

   (Note: while it's possible to use "%" in the SMTP case, we use "+" in
   order to align the SMTP and URI syntaxes.)

4.  Limitations

   The usefulness of a URI or IRI using a literal scoped address is
   obviously limited to systems within the same scope.  The addition of
   the zone identifier further limits the usefulness to the system for
   which the URI or IRI was generated, since zone IDs are completely
   local to a given host.  Therefore, care must be taken to not pass
   these URIs blindly between systems.  When both systems are aware of
   the relevant Zone IDs, e.g., an SNMP manager that is aware of the
   zone ID configuration of an agent, it is acceptable to pass these
   URIs between systems.

   Caution should be used when storing these URIs or IRIs in files.  It
   is recommended to use an FQDN instead of a literal IPv6 address in a
   URL, whenever an FQDN is available.

5.  IANA Considerations

   IANA is requested to assign the "IPv6z" tag identifying a domain
   literal.  This registry may not have been created yet; it is
   described in [RFC2821] but this will be the first assignment.

   This is also the first use of the IPvFuture extension mechanism
   described in [RFC3986]; that RFC did not create a registry for these
   mechanisms.  Should there be one?

6.  Security Considerations

   RFC 3986 [RFC3986] describes security considerations for URIs; this
   specification does not add any new security considerations.

7.  Acknowledgements

   Margaret Wasserman first pointed out that the original literal IPv6

Fenner & Duerst          Expires April 24, 2006                 [Page 3]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

   form didn't support zone IDs.  This document was created based on
   discussions between Steve Bellovin, Brian Carpenter, Roy Fielding,
   Ted Hardie, Larry Masinter, and Thomas Narten.  Further revisions
   were based on feedback from the IPv6 working group and the IETF
   applications area.

8.  Normative References

   [RFC2234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 2234, November 1997.

   [RFC2821]  Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
              April 2001.

   [RFC3879]  Huitema, C. and B. Carpenter, "Deprecating Site Local
              Addresses", RFC 3879, September 2004.

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66,
              RFC 3986, January 2005.

   [RFC3987]  Duerst, M. and M. Suignard, "Internationalized Resource
              Identifiers (IRIs)", RFC 3987, January 2005.

   [RFC4007]  Deering, S., Haberman, B., Jinmei, T., Nordmark, E., and
              B. Zill, "IPv6 Scoped Address Architecture", RFC 4007,
              March 2005.

Appendix A.  To Do

   o  Pick another character if necessary from URI chars available: - .
      _ ~ ! $ & ' ( ) * + , ; =

   o  Check with Keith if text saying why not to use this is sufficient

   o  Expand text on 2821 usage?

   o  Resolve URI IPv6zone-id vs. SMTP dcontent (make sure they allow
      more or less the same things); compare with grammar in scoping-
      arch (more or less no restrictions there?)

      *  IPv6zone-id = 1*( unreserved / sub-delims / ":" ) = unreserved
         = ALPHA / DIGIT / "-" / "." / "_" / "~" , sub-delims = "!" /
         "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="

      *  Atom = 1*atext = atext = ALPHA / DIGIT / ; Any character except
         controls, "!" / "#" / ; SP, and specials. "$" / "%" / ; Used

Fenner & Duerst          Expires April 24, 2006                 [Page 4]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

         for atoms "&" / "'" / "*" / "+" / "-" / "/" / "=" / "?" / "^" /
         "_" / "`" / "{" / "|" / "}" / "~"

      *  dcontent = dtext/quoted-pair; dtext = NO-WS-CTL / ; Non white
         space controls %d33-90 / ; The rest of the US-ASCII %d94-126 ;
         characters not including "[", ; "]", or "\"

      *  scoping-arch just says "An implementation MAY support other
         kinds [than numerical -wcf] of non-null strings as <zone_id>.
         However, the strings must not conflict with the delimiter

   U = URI
   S = SMTP Atom
   A = scoping-arch
         sp     !     "     #     $     %     &     '
          A?    ASU   A     AS    ASU   AS    ASU   ASU
          (     )     *     +     ,     -     .     /
          AU    AU    ASU   ASU   AU    ASU   AU    AS
          0     1     2     3     4     5     6     7
          ASU   ASU   ASU   ASU   ASU   ASU   ASU   ASU
          8     9     :     ;     <     =     >     ?
          ASU   ASU   AU    AU    A     ASU   A     AS
          @     A     B     C     D     E     F     G
          A     ASU   ASU   ASU   ASU   ASU   ASU   ASU
          H     I     J     K     L     M     N     O
          ASU   ASU   ASU   ASU   ASU   ASU   ASU   ASU
          P     Q     R     S     T     U     V     W
          ASU   ASU   ASU   ASU   ASU   ASU   ASU   ASU
          X     Y     Z     [     \     ]     ^     _
          ASU   ASU   ASU   A     A     A     AS    ASU
          `     a     b     c     d     e     f     g
          AS    ASU   ASU   ASU   ASU   ASU   ASU   ASU
          h     i     j     k     l     m     n     o
          ASU   ASU   ASU   ASU   ASU   ASU   ASU   ASU
          p     q     r     s     t     u     v     w
          ASU   ASU   ASU   ASU   ASU   ASU   ASU   ASU
          x     y     z     {     |     }     ~     del
          ASU   ASU   ASU   AS    AS    AS    ASU   -

      *  so: we can't use SMTP Atom - use 1*dcontent. can we get away
         with updating [RFC4007] to add something like zone-id =
         1*(ALPHA / DIGIT / "-" / "." / "_" / "~" / "!" / "$" / "&" /
         "'" / "(" / ")" / "*" / "+" / "," / ";" / "=" / ":")?  (This is
         (I think) the expansion of IPv6zone-id; which is a superset of

Fenner & Duerst          Expires April 24, 2006                 [Page 5]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

   o  Check with w3c URI

   o  Check with [who did Brian suggest in Paris?]

   o  Check with apps area

Appendix B.  Change Log

B.1.  Changes from -01 to -02

      Changed "v6" to "v1", since the version number is of the literal
      form, not of the address.

      Changed "_" to "+", since an underscore disappears when underlined
      as URLs are wont to be.

      Added section on SMTP IPv6z:

      Removed list of tradeoffs.

Fenner & Duerst          Expires April 24, 2006                 [Page 6]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

Authors' Addresses

   Bill Fenner
   AT&T Labs -- Research
   75 Willow Rd
   Menlo Park, California  94025

   Phone: +1 650-330-7893
   Email: fenner@research.att.com

   Martin Duerst
   World Wide Web Consortium
   5322 Endo
   Fujisawa, Kanagawa  252-8520

   Phone: +81 466 49 1170
   Email: duerst@w3.org

Fenner & Duerst          Expires April 24, 2006                 [Page 7]

Internet-Draft      IPv6 Scope Zones in Literal Addrs       October 2005

Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at

Disclaimer of Validity

   This document and the information contained herein are provided on an

Copyright Statement

   Copyright (C) The Internet Society (2005).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.


   Funding for the RFC Editor function is currently provided by the
   Internet Society.

Fenner & Duerst          Expires April 24, 2006                 [Page 8]

Html markup produced by rfcmarkup 1.107, available from http://tools.ietf.org/tools/rfcmarkup/