Network Working Group X. Li Internet-Draft C. Bao Intended status: BCP CERNET Center/Tsinghua Expires:August 28, 2012January 4, 2013 University D. Wing R. Vaithianathan Cisco G. Huston APNICFebruary 25,July 3, 2012 Stateless Source Address Mapping for ICMPv6 Packetsdraft-ietf-v6ops-ivi-icmp-address-01draft-ietf-v6ops-ivi-icmp-address-02 Abstract A stateless IPv4/IPv6 translator may receive ICMPv6 packets containing non IPv4-translatable addresses as the source that should be passed across the translator as an ICMP packet directed to thetheIPv4-translatable destination. This documentdiscusses the considerations andpresentsa stateless address mapping algorithmrecommendations for source address translation in ICMPv6 headers for such cases. 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). 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 onAugust 28, 2012.January 4, 2013. Copyright Notice Copyright (c) 2012 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 described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Notational Conventions . . . . . . . . . . . . . . . . . . . . 3 3. Problem Statement and Considerations . . . . . . . . . . . . . 3 4.Routing ConsiderationsICMP Extension . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Stateless Address Mapping Algorithm . . . . . . . . . . . . . . 4 6.ICMP Extension . . . . . . . . . . . . . . . . . . . . . . . . 5 7.Security Considerations . . . . . . . . . . . . . . . . . . . .5 7.1. Filtering Recommendations . . . . . . . . . . . . . . . . . 5 7.2. Rate-limiting Recommendations . . . . . . . . . . . . . . . 5 7.3. RFC5837 Recommendations . . . . . . . . . . . . . . . . . . 5 8.4 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . .6 9.4 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . .6 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 10.1.4 9. Normative References . . . . . . . . . . . . . . . . . . .6 10.2. Informative References . . . . . . . . . .. .. . . . . . 75 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . .75 1. Introduction The IP/ICMP translation document of IPv4/IPv6 translation [RFC6145] states that "the IPv6 addresses in the ICMPv6 header may not be IPv4- translatable addresses and there will be no corresponding IPv4 addresses represented of this IPv6 address. In this case, the translator can do stateful translation. A mechanism by which the translator can instead do stateless translation is left for future work." This documentdefines such a stateless translation mechanism.presents recommendations for this case. 2. Notational Conventions The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this document, are to be interpreted as described in [RFC2119]. 3. Problem Statement and Considerations When a stateless IPv4/IPv6 translator receives an ICMPv6 message (for example "Packet Too Big") sourced from an non-IPv4-translatable IPv6 address, directed to an IPv4-translatable IPv6 address, it needs to generate an ICMP message. For the reasons discussed below, choosing the source IPv4 address of this ICMP message is problematic. The address used should not cause the ICMP packet to be a candidate for discarding, particularly in the contest of uRPF filters [RFC3704]. This consideration precludes the use of private IPv4 address space [RFC1918] in this context. It is also a consideration that the IPv4/IPv6 translation is intended for use in contexts where IPv4 addresses may not be readily available, so it is not considered to be appropriate to use IPv4- translatable IPv6 addresses for all internal points in the IPv6 network that may originate ICMPv6 messages. It is also an objective that it is possible for the IPv4 recipient of the ICMP message be able to distinguish between different IPv6 ICMPv6 originations (for example, to support a traceroute diagnostic utility that provides some limited network level visibility across the IPv4/ IPv6 translator). This implies thataan IPv4/IPv6 translator needs to have a pool of IPv4 addressesto be usedfor mapping the source address of ICMPv6 packets generated from differentoriginations. These addresses are for use in the source address of ICMP packets, and therefore are not intended to be used as a destination address for any packet. It is therefore possibleoriginations, or touse a common address pool for the IPv4/IPv6 translation protocol, and, considering an objective of constraininginclude theuse of these IPv4 addresses in this application, it is feasible to use a commonIPv6 source addresspoolinformation for mapping the sourceaddresses of non-translatable ICMPv6 packets as a part of the protocol specification.address by others means. These considerations leads to the recommendation ofdrawing an IPv4 /24 prefix fromusing theIANA Special Purpose Address Registry asa"Well- Known Prefix" for use by IPv4/IPv6 translators for the purposesingle (or small pool) ofmapping otherwise untranslatable IPv6public IPv4 address as the sourceaddressesaddress ofICMPv6 messages to IPv4translated ICMPmessages. Theand using ICMP extensiondefined by[RFC5837]provides a mechanismtoprocess the ICMPv4 messages that contain IP Address Sub-Objects that specifyinclude IPv6addresses. However, an enhanced traceroute application must be used, which has not yet been widely available. In this document, a combined approach is proposed, i.e. non IPv4-translatableaddressis mapped to IANA-assigned /24, and the resulting ICMP is extended according to [RFC5837]. Therefore, ordinary ICMP processing tools (traceroute) can be utilized in normal cases and when DDoS happens, enhanced ICMP process tools can be utilized to identify the real source. 4. Routing Considerations Addresses from the assigned address prefix are intended to be used as source addresses and notasdestination addresses in the context of the public network. As packets passing through the public network need to pass through conventional packet filters, including uRPF filters [RFC3704], this implies that the assigned address may be used in routing advertisements. Such routing advertisements are non- exclusive and should be accepted from any originating AS in an anycast fashion. 5. StatelessInterface IP AddressMapping Algorithm When anSub-Object. 4. ICMP Extension No matter a single public IPv4/24 prefix is allocated to represent the sourceaddressof ICMP, the translator MUST copy the "Hop Count" in(in theIPv6 headerIPv4 interface or a loopback address of theICMPv6 to the Last Octet. When routers emit ICMPv6 packets with the same hop count, as the ICMPv6 packet is routed through the network its hop count is decreased. However, if the routers emit ICMPv6 packets with different hop counts, it may give the appearance oftranslator) or arouting loop to tools such as traceroute. That minor side- effect in that particular case cannot be avoided while still being stateless. 6. ICMP Extension When translator is configured to use the IANA-assigned /24 to map non IPv4-translatable address,pool of public IPv4 addresses are used, the translatorMUSTSHOULD implement ICMP extension defined by [RFC5837]. The resulting ICMP extensionMUSTSHOULD include the Interface IPaddress Sub-ObjectsAddress Sub-Object that specify the source IPv6 addresses in the original ICMPv6.Therefore,When an enhanced traceroute application is used, it can get the real IPv6 source addresses which generate the ICMPv6messages, bemessages. Therefore, it is able to traceback to their origins and take filtering/rate-limiting actions if necessary.7. Security Considerations The use5. Stateless Address Mapping Algorithm If a pool ofan address for sourcepublic IPv4 addressesin ICMP packetsisconsidered "safe"configured inso far as ICMP packets are not intended to generate responses directed tothesource address. Howevertranslator, it ispossibleRECOMMENDED touse this address as a means of gaining anonymity when launching a denial of service attacks by using this address asrandomly pick up thesourceIPv4 public addressfor other forms of malicious traffic. Packet firewall filters should be configured to treat addressesin theIANA-assigned /24 network as martian addresses by discarding all non-ICMP packets that use the IANA-assigned /24 network as a source address, and all packets that use the IANA-assigned /24 network as a destination address. 7.1. Filtering Recommendations o SHOULD allow ICMP type 3 - Destination Unreachable (inc PTB). o SHOULD allow ICMP type 11 - Time Exceeded. o MAY allow ICMP type 12 - Parameter Problem. o SHOULD NOT allow any of the various ICMP request messages. 7.2. Rate-limiting Recommendations The rate limiting of traffic from the prefix SHOULD also be enabled as additional countermeasure against abuse of this prefix. The methods presented in [RFC4443] [RFC5597] [RFC6192] [RFC6398] [RFC6450] can be used. 7.3. RFC5837 Recommendations Advanced filtering and rate-limiting techniques whichpool. This canprocess the ICMP extension defined in [RFC5837] MAY also be used to controlsomehow avoid thesource of the ICMP. 8. IANA Considerations IANA is requested to make a permanent assignmentappearance of a/24 from the IPv4 Special Purpose Address Registry [RFC5736]. The assigned address isrouting loop tobe used in the context of generating an IPv4 source address for mapped ICMPv6 packets being passed through a stateless IPv4/IPv6 translator. The assignmenttools such as traceroute. An enhanced traceroute application isunder the category of a specialized use of a designated address block in an anycast context associated with an Internet Standards Track protocol. The IANA IPv4 Special Purpose Address Registry records are: o Prefix 192.70.192.0/24 o Description: To be usedstill RECOMMENDED inthe context of generating an IPv4 source address for mapped ICMPv6 packets being passed through a stateless IPv4/IPv6 translator. o Begin: 2011-06-01 o End: Never o Purpose: Stateless ICMPv6/ICMP translation o Contact: See RFC o Scope: Addresses from the assigned address prefix are intendedorder tobe used asobtain the real IPv6 source addressesand not as destination addresses in the context ofwhich generate thepublic network. o RFC:ICMPv6 messages. 6. Security Considerations Thisdraft. 9.document does not introduce any new security considerations. 7. IANA Considerations None. 8. Acknowledgments The authors would like to acknowledge the following contributors of this document: Kevin Yin, Chris Metz and Neeraj Gupta.10. References 10.1.The authors would also like to thank Ronald Bonica, Ray Hunter, George Wes, Yu Guanghui, Sowmini Varadhan, David Farmer, Fred Baker, Leo Vegoda, Joel Jaeggli, Henrik Levkowetz, Henrik Levkowetz, Randy Bush and Warren Kumari for their comments and suggestions. 9. Normative References [RFC1918] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and E. Lear, "Address Allocation for Private Internets", BCP 5, RFC 1918, February 1996. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3704] Baker, F. and P. Savola, "Ingress Filtering for Multihomed Networks", BCP 84, RFC 3704, March 2004. [RFC4443] Conta, A., Deering, S., and M. Gupta, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", RFC 4443, March 2006.[RFC5597] Denis-Courmont, R., "Network Address Translation (NAT) Behavioral Requirements for the Datagram Congestion Control Protocol", BCP 150, RFC 5597, September 2009.[RFC5837] Atlas, A., Bonica, R., Pignataro, C., Shen, N., and JR. Rivers, "Extending ICMP for Interface and Next-Hop Identification", RFC 5837, April 2010. [RFC6145] Li, X., Bao, C., and F. Baker, "IP/ICMP Translation Algorithm", RFC 6145, April2011. [RFC6398] Le Faucheur, F., "IP Router Alert Considerations and Usage", BCP 168, RFC 6398, October 2011. [RFC6450] Venaas, S., "Multicast Ping Protocol", RFC 6450, December 2011. 10.2. Informative References [RFC5736] Huston, G., Cotton, M., and L. Vegoda, "IANA IPv4 Special Purpose Address Registry", RFC 5736, January 2010. [RFC6192] Dugal, D., Pignataro, C., and R. Dunn, "Protecting the Router Control Plane", RFC 6192, March2011. Authors' Addresses Xing Li CERNET Center/Tsinghua University Room 225, Main Building, Tsinghua University Beijing 100084 CN Phone: +86 10-62785983 Email: xing@cernet.edu.cn Congxiao Bao CERNET Center/Tsinghua University Room 225, Main Building, Tsinghua University Beijing 100084 CN Phone: +86 10-62785983 Email: congxiao@cernet.edu.cn Dan Wing Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134 USA Email: dwing@cisco.com Ramji Vaithianathan Cisco Systems, Inc. A 5-2, BGL 12-4, SEZ Unit, Cessna Business Park, Varthur Hobli Sarjapur Outer Ring Road BANGALORE KARNATAKA 560 103 INDIA Phone: +91 80 4426 0895 Email: rvaithia@cisco.com Geoff Huston APNIC Email: gih@apnic.net