Network Working Group                                             Q. Sun
Internet-Draft                                                    Y. Cui
Intended status: Standards Track                     Tsinghua University
Expires: August 22, 2013                               February 18, 2013


 Dynamic Host Configuration Protocol version 6 (DHCPv6) Option for IPv4
                             Configuration
                  draft-sun-dhc-dhcpv6-opt-v4config-00

Abstract

   This document defines a DHCPv6 option with two types of sub-options
   for IPv4 configurations in the case of IPv4/IPv6 transition.  One is
   used for the assignment of IPv4 address and port set, the other is
   used for configuring existing DHCPv4 options required by clients for
   IPv4-over-IPv6 communications.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

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

   This Internet-Draft will expire on August 22, 2013.

Copyright Notice

   Copyright (c) 2013 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
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as



Sun & Cui                Expires August 22, 2013                [Page 1]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2.  Requirements Language . . . . . . . . . . . . . . . . . . . . . 3
   3.  DHCPv6 Option for IPv4 Configuration  . . . . . . . . . . . . . 3
     3.1.  Option Format . . . . . . . . . . . . . . . . . . . . . . . 3
     3.2.  Shared IPv4 address Sub-Option  . . . . . . . . . . . . . . 4
     3.3.  Sub-Option for Conveying Existing DHCPv4 Options  . . . . . 5
   4.  Server Behavior . . . . . . . . . . . . . . . . . . . . . . . . 6
   5.  Client Behavior . . . . . . . . . . . . . . . . . . . . . . . . 6
   6.  Security Consideration  . . . . . . . . . . . . . . . . . . . . 6
     6.1.  Denial-of-Service . . . . . . . . . . . . . . . . . . . . . 6
   7.  IANA Consideration  . . . . . . . . . . . . . . . . . . . . . . 6
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 7
     8.1.  Normative References  . . . . . . . . . . . . . . . . . . . 7
     8.2.  Informative References  . . . . . . . . . . . . . . . . . . 7

































Sun & Cui                Expires August 22, 2013                [Page 2]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


1.  Introduction

   During the IPv4/IPv6 transition period, IPv4 and IPv6 will coexist
   for a period of time.  There are still requirements for visiting IPv4
   services.  In order to continue IPv4 communications across IPv6-only
   access network, IPv4 information is needed to be configured across
   IPv6 networks.  On the one hand, IPv4 address has run out, which
   raise requirements for address-sharing.  On the other hand, some of
   the existing DHCPv4 options are likely to be configured over IPv6 to
   guarantee success of some IPv4 services.

   To deal with the issues, [I-D.ietf-dhc-dhcpv4-over-ipv6] provides a
   clean solution that extends DHCPv4 over IPv6 transport to support
   IPv4 resources allocation and all DHCPv4 options natively.  For
   circumstances that there are only DHCPv6 servers deployed, this
   document proposes a mechanism that introduces new DHCPv6 option for
   IPv4 configurations.

   This proposal describes a new DHCPv6 option and two types of sub-
   options which allow the DHCPv6 server to assign a shared IPv4 address
   and optionally some demanded DHCPv4 options during the IPv6 address
   provisioning process.  By assigning the same IPv4 address with non-
   overlaped port sets to multiple clients, the clients can share the
   IPv4 address and continue to deliver IPv4 services to subscribers.

   The IPv4 Configuration Option described in this document can be used
   in various deployment scenarios, some of which are described in
   [RFC6346]

2.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

3.  DHCPv6 Option for IPv4 Configuration

3.1.  Option Format

   The IPv4 Configuration DHCPv6 Option consists of two types of sub-
   options, one for shared IPv4 address and the other for importing
   existing DHCPv4 options.  The SUB_OPT_SHARRED_ADDR MUST be conveyed
   by the IPv4 Configuration Option while the SUB_OPT_v4OPT MAY be
   conveyed if necessary.  The format of IPv4 Configuration DHCPv6
   Option is shown in Figure 1.

         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



Sun & Cui                Expires August 22, 2013                [Page 3]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |      OPTION_V4CONFIG          |          option-length        |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |      sub-option-code          |      sub-option-length        |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |                        sub-option-content                     |
        .                                                               .
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |                             . . .                             |
        .                                                               .
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Figure 1 IPv4 Configuration Option Format

   o  option-code: OPTION_V4CONFIG (TBD)

   o  option-length: This field indicating the length of the option
      excluding the 'Option Code' and the 'Option Length' fields.  In
      this option, the option-length is variable, with value of no less
      than 12 octets.

   o  sub-option-code: Specify the code of sub-option, which should be
      either SUB_OPT_SHARRED_ADDR or SUB_OPT_v4OPT.

   o  sub-option-length: Length of sub-option.

   o  sub-option-content: The content of enclosed sub-option.

3.2.  Shared IPv4 address Sub-Option

   This sub-option is defined for a shared IPv4 address assignment.  The
   sub-option format is shown in the following figure.

         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
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |     SUB_OPT_SHARRED_ADDR      |       sub-option-length       |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |                         IPv4 Address                          |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |        Port Set Index         |      Port Set Mask            |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Figure 2 Shared-IPv4 Address Sub-Option Format

   o  sub-option-code: SUB_OPT_SHARRED_ADDR (TBD)




Sun & Cui                Expires August 22, 2013                [Page 4]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


   o  sub-option-length: The length this option is 8.

   o  Port Set Index: Port Set Index identifies a set of ports assigned
      to a device.  The first k bits on the left of the 2-octet field is
      the Port Set Index value, with the rest of the field right padding
      zeros.

   o  Port Set Mask: Port Set Mask indicates the position of the bits
      used to build the mask.  The first k bits on the left is padding
      ones while the remained (16-k) bits of the 2-octet field on the
      right is padding zeros.

   In the context of this sub-option, the port number should consist of
   port set prefix and port number suffix.  The port set prefix can be
   got from Port Set Index and Port Set Mask, while port number suffix
   can change continuously.  The format of port number is shown in
   Figure 2.

           0                                                    15
           +-----------------------+-----------------------------+
           |    port set prefix    |      port number suffix     |
           +-----------------------+-----------------------------+
           |<-------k bits-------->|<--------(16-k) bits-------->|

   Figure 3 Bit Representation of a port number

   In order to exclude the system ports ([I-D.ietf-tsvwg-iana-ports]) or
   ports saved by SPs, the former port-sets that contains well-known
   ports SHOULD NOT be assigned.

   For example: If k is 10 (the left 10 bits of Port Set Mask is '1'),
   the first 16 port sets is located in well-known port space, which
   should not be allocated.  Or,

   For example: If k is 4 (the left 4 bits of Port Set Mask is '1'), the
   first port set (0 - 4095) contains the well-know port space.  It
   should be perceived as well.

3.3.  Sub-Option for Conveying Existing DHCPv4 Options

   This sub-option is used for the cases that some of the existing
   DHCPv4 options are needed to be provisioned to the end users.  The
   existing DHCPv4 options can be put in with original formats remained.
   This sub-option MUST NOT appear in OPTION_V4CONFIG if
   SUB_OPT_SHARED_ADDR is not conveyed.  The sub-option format is as
   follows.

         0                   1                   2                   3



Sun & Cui                Expires August 22, 2013                [Page 5]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


         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
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |        SUB_OPT_v4OPT          |       sub-option-length       |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |                    Required DHCPv4 options                    |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |                              ...                              |
        .                                                               .
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Figure 4 Format of Sub-Option Containing DHCPv4 Options

   o  sub-option-code: SUB_OPT_v4OPT (TBD)

   o  sub-option-length: The length is variable.

   o  Required DHCPv4 options: Required DHCPv4 options can be put in
      this field one by one.  The format of DHCPv4 options will not
      change.

4.  Server Behavior

   TBD.

5.  Client Behavior

   TBD

6.  Security Consideration

6.1.  Denial-of-Service

   The solution is generally vulnerable to DoS when used in shared
   medium or when access network authentication is not a prerequisite to
   IP address assignment.  The solution SHOULD only be used on point-to-
   point links, tunnels, and/or in environments where authentication at
   link layer is performed before IP address assignment, and not shared
   medium.

7.  IANA Consideration

   IANA is kindly requested to allocate DHCPv6 option code to the
   OPTION_V4CONFIG, DHCPv6 sub-option codes to the SUB_OPT_SHARRED_ADDR
   and SUB_OPT_v4OPT.  The code should be added to the DHCPv6 option
   code space.

8.  References




Sun & Cui                Expires August 22, 2013                [Page 6]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


8.1.  Normative References

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

   [RFC3046]                        Patrick, M., "DHCP Relay Agent
                                    Information Option", RFC 3046,
                                    January 2001.

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

   [RFC3527]                        Kinnear, K., Stapp, M., Johnson, R.,
                                    and J. Kumarasamy, "Link Selection
                                    sub-option for the Relay Agent
                                    Information Option for DHCPv4",
                                    RFC 3527, April 2003.

   [RFC4925]                        Li, X., Dawkins, S., Ward, D., and
                                    A. Durand, "Softwire Problem
                                    Statement", RFC 4925, July 2007.

   [RFC5961]                        Ramaiah, A., Stewart, R., and M.
                                    Dalal, "Improving TCP's Robustness
                                    to Blind In-Window Attacks",
                                    RFC 5961, August 2010.

   [RFC6056]                        Larsen, M. and F. Gont,
                                    "Recommendations for Transport-
                                    Protocol Port Randomization",
                                    BCP 156, RFC 6056, January 2011.

   [RFC6346]                        Bush, R., "The Address plus Port
                                    (A+P) Approach to the IPv4 Address
                                    Shortage", RFC 6346, August 2011.

8.2.  Informative References

   [I-D.bajko-pripaddrassign]       Bajko, G., Savolainen, T.,
                                    Boucadair, M., and P. Levis, "Port
                                    Restricted IP Address Assignment",
                                    draft-bajko-pripaddrassign-04 (work
                                    in progress), April 2012.



Sun & Cui                Expires August 22, 2013                [Page 7]


Internet-Draft    DHCPv6 Option for IPv4 configuration     February 2013


   [I-D.ietf-dhc-dhcpv4-over-ipv6]  Cui, Y., Wu, P., Wu, J., and T.
                                    Lemon, "DHCPv4 over IPv6 Transport",
                                    draft-ietf-dhc-dhcpv4-over-ipv6-05
                                    (work in progress), September 2012.

   [I-D.ietf-tsvwg-iana-ports]      Cotton, M., Eggert, L., Touch, J.,
                                    Westerlund, M., and S. Cheshire,
                                    "Internet Assigned Numbers Authority
                                    (IANA) Procedures for the Management
                                    of the Service Name and Transport
                                    Protocol Port Number Registry",
                                    draft-ietf-tsvwg-iana-ports-10 (work
                                    in progress), February 2011.

   [I-D.sun-dhc-port-set-option]    Sun, Q., Lee, Y., Sun, Q., Bajko,
                                    G., and M. Boucadair, "Dynamic Host
                                    Configuration Protocol (DHCP) Option
                                    for Port Set Assignment",
                                    draft-sun-dhc-port-set-option-00
                                    (work in progress), October 2012.

   [I-D.vixie-dnsext-dns0x20]       Vixie, P. and D. Dagon, "Use of Bit
                                    0x20 in DNS Labels to Improve
                                    Transaction Identity",
                                    draft-vixie-dnsext-dns0x20-00 (work
                                    in progress), March 2008.

Authors' Addresses

   Qi Sun
   Tsinghua University
   Department of Computer Science, Tsinghua University
   Beijing  100084
   P.R.China

   Phone: +86-10-6278-5822
   EMail: sunqi@csnet1.cs.tsinghua.edu.cn


   Yong Cui
   Tsinghua University
   Department of Computer Science, Tsinghua University
   Beijing  100084
   P.R.China

   Phone: +86-10-62603059
   EMail: yong@csnet1.cs.tsinghua.edu.cn




Sun & Cui                Expires August 22, 2013                [Page 8]