Internet Engineering Task Force G. Chen Internet-Draft H. Deng Intended status: Informational China Mobile Expires: January 12, 2012 July 11, 2011 NAT64-CPE Mode Operation for Opening Residential Service draft-chen-v6ops-nat64-cpe-02 Abstract The document has summarized NAT64 usages on different modes, in which NAT64-CGN would serve for a large-scale network and NAT64-CPE would give residential service opportunities to be accessed by IPv6 remote subscribers. The document has described different operations for each usage and proposed operational considerations for each particular NAT64-mode. 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 January 12, 2012. Copyright Notice Copyright (c) 2011 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 Chen & Deng Expires January 12, 2012 [Page 1] Internet-Draft NAT64-CPE July 2011 described in the Simplified BSD License. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. NAT64-CGN Mode . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. Usage Overviews . . . . . . . . . . . . . . . . . . . . . . 3 2.2. NAT64-CGN Mode Operations . . . . . . . . . . . . . . . . . 4 2.3. NAT64-CGN Mode Requirements . . . . . . . . . . . . . . . . 5 3. NAT64-CPE Mode . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1. Usage Overviews . . . . . . . . . . . . . . . . . . . . . . 6 3.2. NAT64-CPE Mode Operations . . . . . . . . . . . . . . . . . 7 3.3. NAT64-CPE Mode Requirements . . . . . . . . . . . . . . . . 7 4. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 6. Normative References . . . . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 Chen & Deng Expires January 12, 2012 [Page 2] Internet-Draft NAT64-CPE July 2011 1. Introduction With fast developments of global Internet, the demands for IP address are rapidly increasing at present.This year, IANA announced that the global free pool of IPv4 depleted on 3 February. IPv6 is the only real option on the table. Operators have to accelerate the process of deploying IPv6 networks in order to address IP address strains.IPv6 deployment normally involves a step-wise approach where parts of the network should properly updated gradually. As IPv6 deployment progresses it may be simpler for operators and ICP/ISP to employ NAT64[RFC6146] functionalities at edge of IPv4 and IPv6 networks, since a significant part of network will still stay in IPv4 for long time. Especially, NAT64 could facilitate large ICP/ISP IPv6 transition process by eliminating upgrations of tremendous legacy IPv4 servers. Therefore, it's quite popular to deploy NAT64 at the front of IDC to shift the entire service to be IPv6-enable. Depending on different usage, NAT64 could be deployed on either CGN side, or CPE side. NAT64-CPE would give residential service opportunities to be accessed by remote subscribers going through IPv6 networks. In this usage, the NAT64-CPE may not need cooperate with DNS64[RFC6147] any more, whereby this mechanism allows an IPv6-only client (i.e. either a host with only IPv6 stack, or a host with both IPv4 and IPv6 stack, but only with IPv6 connectivity or a host running an IPv6 only application) to initiate communications to an IPv4-only residential service server. The document has summarized NAT64 usages on different modes. Considering the existing deployment approaches, the memo has proposed different operational requirements for each particular NAT64-mode. 2. NAT64-CGN Mode 2.1. Usage Overviews Figure 1 illustrates NAT64-CGN mode usage where an IPv6-only host would like to initiate communications with an IPv4-only server through NAT64 deployed at an edge of carried IPv4/IPv6 networks. The NAT64 mechanism allow IPv6-only host to access IPv4 resources and IPv6 resources simultaneously. Chen & Deng Expires January 12, 2012 [Page 3] Internet-Draft NAT64-CPE July 2011 +----------------------+ +------------------------------+ | IPv6-only network | | IPv4 public network | | | | | | | | | | | | +----------+ | | +----+ +---------+ | | | | | H1 |-----------|NAT64-CPE|-------------| Server | | | +----+ +---------+ | | | | v6 only / | | \ +----------+ | | Host / | | \ IPv4-only | | +------+ | | +-----+ | | |DNS64 | | | | DNS | | | +------+ | | +-----+ | +----------------------+ +------------------------------+ Figure 1: NAT64-CGN Mode Usage Therein, NAT64 would perform protocol translation mechanism and address translation mechanism. Protocol translation from an IPv4 packet header to an IPv6 packet header and vice versa is performed according to the IP/ICMP Translation Algorithm [RFC6145]. Address translation maps IPv6 transport addresses to IPv4 transport addresses and vice versa. DNS64 is a logical function that synthesizes DNS resource records (e.g., AAAA records containing IPv6 addresses) from DNS resource records actually contained in the DNS (e.g., A records containing IPv4 addresses). 2.2. NAT64-CGN Mode Operations The following has described the operational process of NAT64-CGN. o Step1: IPv6-only host performs an AAAA DNS query to DNS64 for the IPv6 address of the Pv4-only sever. o Step2: DNS64 could not find the IPv6 address of the IPv4-only sever. So it tries to get the IPv4 address of the Pv4-only sever by sending A DNS query to DNS4. o Step3: DNS4 return the A record to the DNS64. o Step4: DNS64 map the IPv4 address to IPv6 address and send a synthetic AAAA record which is translated from A record to IPv6- only host. Chen & Deng Expires January 12, 2012 [Page 4] Internet-Draft NAT64-CPE July 2011 o Step5: IPv6-only host send the IPv6 packet to the NAT64. NAT64 translates the IPv6 packet to IPv4 packet and send it to IPv4-only server. 2.3. NAT64-CGN Mode Requirements According to above description for NAT64-CGN, the NAT64-CGN requirements are listed as following. NAT64-CGN-R1: Each NAT64 device MUST have at least one unicast IPv6 prefix assigned to it, denoted Pref64::/n. NAT64-CGN-R2:A NAT64 MUST have one or more unicast IPv4 addresses assigned to it. NAT64-CGN-R3:Irrespective of the transport protocol used, the NAT64 MUST silently discard all incoming IPv6 packets containing a source address that contains the Pref64::/n. NAT64-CGN-R4:The NAT64 MUST only process incoming IPv6 packets that contain a destination address that contains Pref64::/n. Likewise, the NAT64 MUST only process incoming IPv4 packets that contain a destination address that belongs to the IPv4 pool assigned to the NAT64. NAT64-CGN-R5:NAT64 MUST support the algorithm for generating IPv6 representations of IPv4 addresses defined in RFC6052 as Address Translation Algorithms. NAT64-CGN-R6:For incoming packets carrying TCP or UDP fragments with a non-zero checksum, NAT64 MAY elect to queue the fragments as they arrive and translate all fragments at the same time. NAT64-CGN-R7: For incoming IPv4 packets carrying UDP packets with a zero checksum, if the NAT64 has enough resources, the NAT64 MUST reassemble the packets and MUST calculate the checksum. If the NAT64 does not have enough resources, then it MUST silently discard the packets. NAT64-CGN-R8: The NAT64 MAY require that the UDP, TCP, or ICMP header be completely contained within the fragment that contains fragment offset equal to zero. NAT64-CGN-R9:The NAT64 MUST limit the amount of resources devoted to the storage of fragmented packets in order to protect from DoS attacks. NAT64-CGN-R10:The NAT64 MUST make fragmentation process when MTU of Chen & Deng Expires January 12, 2012 [Page 5] Internet-Draft NAT64-CPE July 2011 incoming IPv4 traffic exceed maximum MTU on IPv6 side. NAT64-CGN-R11:The NAT64 MAY let hosts and applications know IPv6 prefix used by the NAT64 and DNS64 so as to hosts have knowledge whether synthetic IPv6 address is targeted. NAT64-CGN-R12:The NAT64 MAY decouple with DNS64 in order to establish communication with IPv4-only servers. NAT64-CGN-R13:The NAT64 MAY take load-balancing functionalities incorporating with DNS64. 3. NAT64-CPE Mode 3.1. Usage Overviews Residential servers are usually going beyond the operator's management. They may not able to IPv6-enable due to limitations of application supporting. In this case, ISP is still assigning private IPv4 address to servers. However, The nature of private IPv4 would block the end-to-end bi-directional communications. On the other hand, IPv6 will bring end-to-end benefits to operators. NAT64-CPE mode could let IPv6 users to access such IPv6-disable services in residential areas. Figure 2 illustrates a network usage where an IPv6-only client attached to a dual-stack network, but the destination server is running on a private site where there is NAT64-CPE numbered with public IPv6 addresses and private IPv4 addresses. DNS server is located in dual stack Internet for naming-resolving. +----------------------+ +------------------------------+ | Dual Stack Internet | | IPv4 Private site (Net 10) | | | | | | | | | | | | +----------+ | | +----+ +---------+ | | | | | H1 |-----------|NAT64-CPE|-------------| Server | | | +----+ +---------+ | | | | v6 only / | | +----------+ | | Host / | | IPv4-only | | +-----+ | | etc. 10.1.1.1 | | | DNS | | | | | +-----+ | | | +----------------------+ +------------------------------+ Chen & Deng Expires January 12, 2012 [Page 6] Internet-Draft NAT64-CPE July 2011 Figure 2: NAT64-CPE Mode Usage This scenario appears in ISP network quite popular. As the instances, visitors go through distant network to take care of family affairs, like monitoring house security via residential camera, manipulating household appliances remotely prior to comeback home. 3.2. NAT64-CPE Mode Operations The operational process of NAT64-CPE operation involves CPE, DNS and addressing mechanism. This section illustrates different parts of functionalities. For NAT64-CPE operations, two kinds of functions would take on. First, it will perform the functionalities that normal CPE does except NAT44 forwarding, like assigning private IPv4 address to their attached residential servers. Additionally, CPE will allocate private IPv4 address to the servers depending on the server MAC address. Therefore, the server could always get constant private IPv4 address. Second, CPE should carry NAT64 functionalities without integrating DNS64. According to normative handing, NAT64-CPE translates in-coming IPv6 destination address by striping NAT64 IPv6- prefix and maintains a IPv4 pool for translating IPv6 sources address. Therein, the NAT64 IPv6 prefix will be NSP specified in IPv6 Addressing of IPv4/IPv6 Translators. And, ISP will reserve distinct NSP for each CPE. In order to maintain address mapping between inner IP address and outer IP address, PCP [PCP] could be adopted. For DNS configuration, each residential services should be represented by FQDN format so as to users could easily remember and understand. The corresponding naming resource record should be stored as AAAA. The record's IPv6 address is synthesized by NAT64 prefix and private IPv4 address. The IPv6 format is compliant with assembling IPv6 address in DNS64.The deployed DNS just follow regular DNS handling. There is no demands for performing DNS64 process. 3.3. NAT64-CPE Mode Requirements The following lists requirements for NAT64-CPE operations. NAT64-CPE-R1: NAT64-CPE SHOULD be decoupled with DNS64. NAT64-CPE-R2: NAT64-CPE SHOULD be capable of port forwarding. PCP, UPnP and NAT-PMP are RECOMMENDED to be deployed along with NAT64-CPE. NAT64-CPE-R3: Network-Specific Prefix SHOULD be assigned to each NAT64-CPE for constructing ipv4-converted ipv6 addresses. Chen & Deng Expires January 12, 2012 [Page 7] Internet-Draft NAT64-CPE July 2011 NAT64-CPE-R4: Each residential server SHOULD be represented by FQDN and stored as AAAA record along with ipv4-converted ipv6 address in DNS server. Dynamic updates in the domain name system MAY be applicable to reflect address renumbering of residential servers. NAT64-CPE-R5: NAT64-CPE SHOULD follow WAN side configuration described in RFC6204[RFC6204]. NAT64-CPE-R6: When a residential server is attached to the LAN interface, NAT64-CPE SHOULD allocate private IPv4 addresses to the server depending on the server MAC address. 4. Security Considerations Essentially, there are strong demands to have thorough security mechanism to prevent privacy invasion in NAT64-CPE scenario. The detailed considerations need to be further identified. 5. IANA Considerations This memo includes no request to IANA. 6. Normative References [PCP] Wing, D., "Pinhole Control Protocol (PCP)", draft-ietf-pcp-base-13.txt (work in progress), July 2011. [RFC6145] Li, X., Bao, C., and F. Baker, "IP/ICMP Translation Algorithm", RFC 6145, April 2011. [RFC6146] Bagnulo, M., Matthews, P., and I. van Beijnum, "Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers", RFC 6146, April 2011. [RFC6147] Bagnulo, M., Sullivan, A., Matthews, P., and I. van Beijnum, "DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers", RFC 6147, April 2011. [RFC6204] Singh, H., Beebee, W., Donley, C., Stark, B., and O. Troan, "Basic Requirements for IPv6 Customer Edge Routers", RFC 6204, April 2011. Chen & Deng Expires January 12, 2012 [Page 8] Internet-Draft NAT64-CPE July 2011 Authors' Addresses Gang Chen China Mobile 53A,Xibianmennei Ave., Xuanwu District, Beijing 100053 China Email: chengang@chinamobile.com Hui Deng China Mobile 53A,Xibianmennei Ave. Beijing 100053 P.R.China Phone: +86-13910750201 Email: denghui02@gmail.com Chen & Deng Expires January 12, 2012 [Page 9]