Dynamic Host Configuration Working                            D. Hankins
Group                                                                ISC
Internet-Draft                                              T. Mrugalski
Intended status: Standards Track         Gdansk University of Technology
Expires: June 24, 2010                                 December 21, 2009


Dynamic Host Configuration Protocol (DHCPv6) Options for Dual-Stack Lite
              draft-ietf-softwire-ds-lite-tunnel-option-00

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and 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-
   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on June 24, 2010.

Copyright Notice

   Copyright (c) 2009 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 in effect on the date of
   publication of this document (http://trustee.ietf.org/license-info).
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.

Abstract

   This document describes how Dual-Stack Lite configuration (the
   Softwire Concentrator (SC)'s address) can be obtained by a Softwire



Hankins & Mrugalski       Expires June 24, 2010                 [Page 1]


Internet-Draft               DS Lite Option                December 2009


   Initiator (SI) via DHCPv6.


Table of Contents

   1.  Requirements Language . . . . . . . . . . . . . . . . . . . . . 3
   2.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   3.  DHCPv6 Options  . . . . . . . . . . . . . . . . . . . . . . . . 3
     3.1.  The Dual-Stack Lite Softwire Concentrator Address
           Option  . . . . . . . . . . . . . . . . . . . . . . . . . . 3
     3.2.  The Dual-Stack Lite Softwire Concentrator Name Option . . . 4
   4.  DHCPv6 Server behavior  . . . . . . . . . . . . . . . . . . . . 6
   5.  DHCPv6 Client behavior  . . . . . . . . . . . . . . . . . . . . 6
   6.  Security Considerations . . . . . . . . . . . . . . . . . . . . 7
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 7
   9.  Normative References  . . . . . . . . . . . . . . . . . . . . . 8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . . . 8

































Hankins & Mrugalski       Expires June 24, 2010                 [Page 2]


Internet-Draft               DS Lite Option                December 2009


1.  Requirements Language

   In this document, the key words "MAY", "MUST", "MUST NOT",
   "OPTIONAL", "RECOMMENDED", "SHOULD", and "SHOULD NOT", are to be
   interpreted as described in BCP 14, RFC 2119 [RFC2119].


2.  Introduction

   Dual-Stack Lite [draft-ietf-softwire-dual-stack-lite-02] is a method
   to extend IPv4 access to an IPv6-only addressed host.  One of its key
   components is an IPv4-over-IPv6 tunnel, commonly referred to as a
   Softwire, but a Software Initiator will not know if the network it is
   attached to offers Dual-Stack Lite support, and if it did would not
   know the remote end of the tunnel to establish a connection.

   To inform the Softwire Initiator of the Softwire Concentrator's
   location, either an IPv6 address or Fully Qualified Domain Name
   (FQDN) may be used.  Once this information is conveyed, the presence
   of the configuration indicating the Softwire Concentrator's location
   also informs a host to initiate Dual-Stack Lite service and become a
   Softwire Initiator.

   To provide the conveyance of the configuration information, two
   DHCPv6 [RFC3315] options are used; one in the case where the host
   receives an IPv6 address, and one in the case where the host receives
   an FQDN in order to derive an IPv6 address.


3.  DHCPv6 Options

   Following sections define two new DHCPv6 options, conformant with
   requirements specified in DHCPv6 [RFC3315] Section 22.1.

3.1.  The Dual-Stack Lite Softwire Concentrator Address Option

   The Dual-Stack Lite Softwire Concentrator Address Option consists of
   option-code and option-len fields (common for all DHCPv6 options),
   and a 128 bit tunnel-endpoint-addr field, containing one IPv6
   address.  The tunnel-endpoint-addr specifies the location of the
   remote tunnel endpoint, expected to be located at an AFTR (DS-Lite
   Address Family Transition Router element).

   The DS Lite Address option MAY appear in the root scope of a DHCPv6
   packet.  It MUST NOT appear inside any IA_NA, IA_TA, IA_PD, IAADDR,
   or similar.

   The DS Lite Address option MUST NOT appear more than once in a



Hankins & Mrugalski       Expires June 24, 2010                 [Page 3]


Internet-Draft               DS Lite Option                December 2009


   message.

        0                   1                   2                   3
        0 1 2-3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-------------------------------+-------------------------------+
       |   OPTION_DS_LITE_ADDR (TBD)   |         option-len: 16        |
       +-------------------------------+-------------------------------+
       |                                                               |
       |               tunnel-endpoint-addr (IPv6 Address)             |
       |                                                               |
       |                                                               |
       +---------------------------------------------------------------+

                    DS Lite IPv6 Address option format.

                                 Figure 1

   option-code:  OPTION_DS_LITE_ADDR (TBD)

   option-len:  Length of the tunnel-endpoint-addr field, which is
      currently defined to be precisely 16 octets.

   tunnel-endpoint-addr:  This field contains a single IPv6 address in
      binary representation of the remote tunnel endpoint, located at
      the DS-Lite AFTR.  It is precisely 16 octets in length.

   The client validates the DS-Lite Address option by confirming the
   option is of 16 octets in length or greater.  The client MUST ignore
   tunnel-endpoint-addr shorter than 16 octets.  In the event the option
   is greater than 16 octets in length, only the first 16 octets are
   intrepreted.

   Because this option conveys the tunnel-endpoint-addr value, no
   further processing is required of the client.

3.2.  The Dual-Stack Lite Softwire Concentrator Name Option

   The Dual-Stack Lite Softwire Concentrator Name Option consists of
   option-code and option-len fields (common for all DHCPv6 options),
   and a variable length tunnel-endpoint-name field, containing a Fully
   Qualified Domain Name that refers to the AFTR (DS-Lite Address Family
   Transition Router element) the client is requested to establish a
   connection with.

   The DS Lite Name option MAY appear in the root scope of a DHCPv6
   packet.  It MUST NOT appear inside any IA_NA, IA_TA, IA_PD, IAADDR,
   or similar.




Hankins & Mrugalski       Expires June 24, 2010                 [Page 4]


Internet-Draft               DS Lite Option                December 2009


   The DS Lite Name option MUST NOT appear more than once in a message.

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-------------------------------+-------------------------------+
       |   OPTION_DS_LITE_NAME (TBD)   |           option-len          |
       +-------------------------------+-------------------------------+
       |                   tunnel-endpoint-name (FQDN)                 |
       +---------------------------------------------------------------+

                        DS Lite FQDN option format.

                                 Figure 2

   option-code:  OPTION_DS_LITE_NAME (TBD)

   option-len:  Length in octets of the tunnel-endpoint-name field.

   tunnel-endpoint-name:  This field contains a single Fully Qualified
      Domain Name of the remote tunnel endpoint, located at the DS-Lite
      AFTR.

   The tunnel-endpoint-name field is formatted as required in DHCPv6
   [RFC3315] Section 8 ("Representation and Use of Domain Names").
   Briefly, the format described is using a single octet noting the
   length of one DNS label (limited to at most 64 octets), followed by
   the label.  This repeats until all labels in the FQDN are exhausted.
   The root label (or the end of the FQDN) is denoted as a zero length
   label.  An example FQDN format for this option is shown in Figure 3.

        +------+------+------+------+------+------+------+------+------+
        | 0x07 |   e  |   x  |   a  |   m  |   p  |   l  |   e  | 0x03 |
        +------+------+------+------+------+------+------+------+------+
        |   i  |   s  |   c  | 0x03 |   o  |   r  |   g  | 0x00 |
        +------+------+------+------+------+------+------+------+

                       Example tunnel-endpoint-name.

                                 Figure 3

   Note that in the specific case of the example tunnel-endpoint-name,
   (Figure 3) the length of the option is 17 octets, and so an option-
   len field value of 17 would be used.

   The client validates the option in this format by first confirming
   that the option length is greater than 3, that the option data can be
   contained by the option length (that the option length does not run
   off the end of the packet), and that the tunnel-endpoint-name is of



Hankins & Mrugalski       Expires June 24, 2010                 [Page 5]


Internet-Draft               DS Lite Option                December 2009


   valid format as described in DHCPv6 Section 8 [RFC3315]; there are no
   compression tags, there is at least one label of nonzero length.

   The client determines a value for the tunnel-endpoint-addr from the
   tunnel-endpoint-name using standard DNS resolution, as defined in
   [RFC3596].  If the DNS response contains more than one IPv6 address,
   the client picks only one IPv6 address and uses it as a remote tunnel
   endpoint.  The client MUST NOT establish more than one DS Lite tunnel
   at the same time.  For a redundancy and high availability discussion,
   see Section 7.2 "High availability" of
   [draft-ietf-softwire-dual-stack-lite-02].


4.  DHCPv6 Server behavior

   DHCP servers must translate user input from their own specific and
   unique operator's interfaces into configuration state for the client.
   The server MUST provide a way to configure the OPTION_DS_LITE_ADDR,
   and SHOULD allow the operator to enter a Fully Qualified Domain Name,
   upon which the server performs DNS Resolution to assemble its
   OPTION_DS_LITE_ADDR contents.  The server MAY either provide the same
   Fully Qualified Domain Name as OPTION_DS_LITE_NAME contents, or
   simply provide a distinct method of configuring it.

   If configured with values, DHCPv6 servers will include the DS Lite
   Address and/or Name options if either or both appear on the client's
   Option Request Option (OPTION_ORO).  RFC 3315 Section 17.2.2
   [RFC3315] describes how a DHCPv6 client and server negotiate
   configuration values using the ORO.

   A DHCPv6 server MAY NOT send either option if it has not been
   explicitly requested by the client.

   If the server is configured with an FQDN as the tunnel endpoint
   locator, the configured FDQN value must contain a resolvable Fully
   Qualified Domain Name, having appropriate delegations from the root,
   and having a AAAA record locating the Softwire Concentrator.

   If OPTION_DS_LITE_NAME is being configured, it is RECOMMENDED that
   the server also be configured to provide OPTION_DNS_SERVERS defined
   in [RFC3646] together with the DS Lite option, so that clients will
   be able to ask for DNS servers locations to resolve the domain name
   provided in the DS Lite option.


5.  DHCPv6 Client behavior

   A client that supports B4 functionality of the DS Lite (defined in



Hankins & Mrugalski       Expires June 24, 2010                 [Page 6]


Internet-Draft               DS Lite Option                December 2009


   [draft-ietf-softwire-dual-stack-lite-02]) MUST include
   OPTION_DS_LITE_ADDR on its OPTION_ORO, and MAY include
   OPTION_DS_LITE_NAME at its option and ability.

   If requesting the OPTION_DS_LITE_NAME option, the client also SHOULD
   request OPTION_DNS_SERVERS defined in [RFC3646] to be able to resolve
   any received domain name.

   If the client receives either DS Lite Option, it MUST verify the
   option contents as described in Section 3.1 and Section 3.2.  The
   client SHOULD establish a softwire tunnel to the tunnel-endpoint-addr
   IPv6 address it determines from either of these options.

   If the client requests and receives both the OPTION_DS_LITE_ADDR and
   the OPTION_DS_LITE_NAME, it MUST proceed with resolving the
   OPTION_DS_LITE_NAME.


6.  Security Considerations

   This document does not present any new security issues, but as with
   all DHCPv6-derived configuration state, it is completely possible
   that the configuration is being delivered by a third party (Man In
   The Middle).  As such, there is no basis to trust that the access the
   DS-Lite softwire connection represents can be trusted, and it should
   not therefore bypass any security mechanisms such as IP firewalls.

   RFC 3315 [RFC3315] discusses DHCPv6 related security issues.

   [draft-ietf-softwire-dual-stack-lite-02] discusses DS Lite related
   security issues.


7.  IANA Considerations

   IANA is requested to allocate two DHCPv6 Option codes referencing
   this document.  One delineating OPTION_DS_LITE_ADDR, and one
   delineating OPTION_DS_LITE_NAME.


8.  Acknowledgements

   Authors would like to thank Alain Durand, Rob Austein and Dave Thaler
   for their valuable feedback and suggestions.







Hankins & Mrugalski       Expires June 24, 2010                 [Page 7]


Internet-Draft               DS Lite Option                December 2009


9.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3315]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
              and M. Carney, "Dynamic Host Configuration Protocol for
              IPv6 (DHCPv6)", RFC 3315, July 2003.

   [RFC3596]  Thomson, S., Huitema, C., Ksinant, V., and M. Souissi,
              "DNS Extensions to Support IP Version 6", RFC 3596,
              October 2003.

   [RFC3646]  Droms, R., "DNS Configuration options for Dynamic Host
              Configuration Protocol for IPv6 (DHCPv6)", RFC 3646,
              December 2003.

   [draft-ietf-softwire-dual-stack-lite-02]
              Durand, A., Ed., "Dual-stack lite broadband deployments
              post IPv4 exhaustion", October 2009.


Authors' Addresses

   David W. Hankins
   Internet Systems Consortium, Inc.
   950 Charter Street
   Redwood City, CA  94063
   US

   Phone: +1 650 423 1307
   Email: David_Hankins@isc.org


   Tomasz Mrugalski
   Gdansk University of Technology
   Storczykowa 22B/12
   Gdansk,   80-177
   Poland

   Phone: +48 698 088 272
   Email: tomasz.mrugalski@eti.pg.gda.pl









Hankins & Mrugalski       Expires June 24, 2010                 [Page 8]