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]