Map RFC
Map RFC
Map RFC
Li
Request for Comments: 7599 C. Bao
Category: Standards Track Tsinghua University
ISSN: 2070-1721 W. Dec, Ed.
O. Troan
Cisco Systems
S. Matsushima
SoftBank Telecom
T. Murakami
IP Infusion
July 2015
Abstract
Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved.
Table of Contents
1. Introduction ....................................................4
2. Conventions .....................................................4
3. Terminology .....................................................5
4. Architecture ....................................................6
5. Mapping Rules ...................................................8
5.1. Destinations outside the MAP Domain ........................8
6. The IPv6 Interface Identifier ...................................9
7. MAP-T Configuration ............................................10
7.1. MAP CE ....................................................10
7.2. MAP BR ....................................................11
8. MAP-T Packet Forwarding ........................................11
8.1. IPv4 to IPv6 at the CE ....................................11
8.2. IPv6 to IPv4 at the CE ....................................12
8.3. IPv6 to IPv4 at the BR ....................................12
8.4. IPv4 to IPv6 at the BR ....................................13
9. ICMP Handling ..................................................13
10. Fragmentation and Path MTU Discovery ..........................14
10.1. Fragmentation in the MAP Domain ..........................14
10.2. Receiving IPv4 Fragments on the MAP Domain Borders .......14
10.3. Sending IPv4 Fragments to the Outside ....................14
11. NAT44 Considerations ..........................................15
12. Usage Considerations ..........................................15
12.1. EA-Bit Length 0 ..........................................15
12.2. Mesh and Hub-and-Spoke Modes .............................15
12.3. Communication with IPv6 Servers in the MAP-T Domain ......15
12.4. Compatibility with Other NAT64 Solutions .................16
13. Security Considerations .......................................16
14. References ....................................................17
14.1. Normative References .....................................17
14.2. Informative References ...................................18
Appendix A. Examples of MAP-T Translation .........................21
Appendix B. Port-Mapping Algorithm ................................24
Acknowledgements ..................................................25
Contributors ......................................................25
Authors’ Addresses ................................................26
1. Introduction
2. Conventions
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 RFC 2119 [RFC2119].
3. Terminology
MAP rule set: A rule set is composed of all the MAP Rules
communicated to a device that are intended to
determine the device’s IP+port mapping and
forwarding operations. The MAP rule set is
interchangeably referred to in this document
as a MAP rule table or as simply a "rule
table". Two specific types of rules -- the
Basic Mapping Rule (BMR) and the Forwarding
Mapping Rule (FMR) -- are defined in
Section 5 of [RFC7597]. The Default Mapping
Rule (DMR) is defined in this document.
MAP IPv6 address: The IPv6 address used to reach the MAP
function of a CE from other CEs and from BRs.
4. Architecture
User N
Private IPv4
| Network
|
O--+---------------O
| | MAP-T CE |
| +-----+--------+ |
| NAPT44| MAP-T | |
| +-----+ | +-._ ,-------. .------.
| +--------+ | ,-’ ‘-. ,-’ ‘-.
O------------------O / \ O---------O / Public \
/ IPv6-only \ | MAP-T |/ IPv4 \
( Network --+ Border +- Network )
\ / | Relay |\ /
O------------------O \ / O---------O \ /
| MAP-T CE | ;". ,-’ ‘-. ,-’
| +-----+--------+ | ," ‘----+--’ ------’
| NAPT44| MAP-T | |, |
| +-----+ | + IPv6 node(s)
| | +--------+ | (with IPv4-embedded IPv6 address)
O---+--------------O
|
User M
Private IPv4
Network
5. Mapping Rules
IPv4 traffic sent by MAP nodes that are all within one MAP domain is
translated to IPv6, with the sender’s MAP IPv6 address, derived via
the Basic Mapping Rule (BMR), as the IPv6 source address and the
recipient’s MAP IPv6 address, derived via the Forwarding Mapping Rule
(FMR), as the IPv6 destination address.
The DMR IPv6 prefix length SHOULD be 64 bits long by default and in
any case MUST NOT exceed 96 bits. The mapping of the IPv4
destination behind the IPv6 prefix will by default follow the /64
rule as per [RFC6052]. Any trailing bits after the IPv4 address are
set to 0x0.
| 128-n-o-s bits |
| 16 bits| 32 bits | 16 bits|
+--------+----------------+--------+
| 0 | IPv4 address | PSID |
+--------+----------------+--------+
If the End-user IPv6 prefix length is larger than 64, the most
significant parts of the interface identifier are overwritten by the
prefix.
7. MAP-T Configuration
For a given MAP domain, the BR and CE MUST be configured with the
following MAP parameters. The values for these parameters are
identical for all CEs and BRs within a given MAP-T domain.
7.1. MAP CE
For a given MAP domain, the MAP configuration parameters are the same
across all CEs within that domain. These values may be conveyed and
configured on the CEs using a variety of methods, including DHCPv6,
the Broadband Forum’s "TR-69" Residential Gateway management
interface [TR069], the Network Configuration Protocol (NETCONF), or
manual configuration. This document does not prescribe any of these
methods but recommends that a MAP CE SHOULD implement DHCPv6 options
as per [RFC7598]. Other configuration and management methods may use
the data model described by this option for consistency and
convenience of implementation on CEs that support multiple
configuration methods.
The MAP provisioning parameters, and hence the IPv4 service itself,
are tied to the End-user IPv6 prefix; thus, the MAP service is also
tied to this in terms of authorization, accounting, etc.
A single MAP CE MAY be connected to more than one MAP domain, just as
any router may have more than one IPv4-enabled service-provider-
facing interface and more than one set of associated addresses
assigned by DHCPv6. Each domain within which a given CE operates
would require its own set of MAP configuration elements and would
generate its own IPv4 address. Each MAP domain requires a distinct
End-user IPv6 prefix.
7.2. MAP BR
The MAP BR MUST be configured with the same MAP elements as the MAP
CEs operating within the same domain.
For increased reliability and load balancing, the BR IPv6 prefix MAY
be shared across a given MAP domain. As MAP is stateless, any BR may
be used for forwarding to/from the domain at any time.
A MAP-T CE MUST support a Default Mapping Rule and SHOULD support one
or more Forwarding Mapping Rules.
For each MAP-T processed packet, the CE’s NAT64 function MUST compute
an IPv4 source and destination address. The IPv4 destination address
is computed by extracting relevant information from the IPv6
destination and the information stored in the BMR as per Section 5.
The IPv4 source address is formed by classifying a packet’s source as
longest matching a DMR or FMR rule prefix, and then using the
respective rule parameters for the NAT64 operation.
When constructing the IPv4 packet, the BR MUST derive the source and
destination IPv4 addresses as per Section 5 of this document and
translate the IPv6-to-IPv4 headers as per [RFC6145]. The resulting
IPv4 packet is then passed to regular IPv4 forwarding.
9. ICMP Handling
Due to the different sizes of the IPv4 and IPv6 headers, handling the
maximum packet size is relevant for the operation of any system
connecting the two address families. There are three mechanisms to
handle this issue: Path MTU Discovery (PMTUD), fragmentation, and
transport-layer negotiation such as the TCP Maximum Segment Size
(MSS) option [RFC879]. MAP can use all three mechanisms to deal with
different cases.
Two IPv4 hosts behind two different MAP CEs with the same IPv4
address sending fragments to an IPv4 destination host outside the
domain may happen to use the same IPv4 fragmentation identifier,
resulting in incorrect reassembly of the fragments at the destination
The MAP solution supports the use and configuration of domains where
a BMR expresses an EA-bit length of 0. This results in independence
between the IPv6 prefix assigned to the CE and the IPv4 address
and/or port range used by MAP. The k-bits of PSID information may in
this case be derived from the BMR.
The MAP-T CE’s NAT64 function is by default compatible for use with
[RFC6146] stateful NAT64 devices that are placed in the operator’s
network. In such a case, the MAP-T CE’s DMR prefix is configured to
correspond to the NAT64 device prefix. This in effect allows the use
of MAP-T CEs in environments that need to perform statistical
multiplexing of IPv4 addresses, while utilizing stateful NAT64
devices, and can take the role of a customer-side translator (CLAT)
as defined in [RFC6877].
Attacks facilitated by restricted port set: From hosts that are not
subject to ingress filtering [RFC2827], an attacker can inject
spoofed packets during ongoing transport connections [RFC4953]
[RFC5961] [RFC6056]. The attacks depend on guessing which ports
are currently used by target hosts. Using an unrestricted port
set is preferable, i.e., using native IPv6 connections that are
not subject to MAP port-range restrictions. To minimize these
types of attacks when using a restricted port set, the MAP CE’s
NAT44 filtering behavior SHOULD be "Address-Dependent Filtering"
as described in Section 5 of [RFC4787]. Furthermore, the MAP CEs
SHOULD use a DNS transport proxy function to handle DNS traffic
ICMP Flooding: Given the necessity to process and translate ICMP and
ICMPv6 messages by the BR and CE nodes, a foreseeable attack
vector is that of a flood of such messages leading to a saturation
of the node’s ICMP computing resources. This attack vector is not
specific to MAP, and its mitigation lies in a combination of
policing the rate of ICMP messages, policing the rate at which
such messages can get processed by the MAP nodes, and of course
identifying and blocking off the source(s) of such traffic.
14. References
[RFC6052] Bao, C., Huitema, C., Bagnulo, M., Boucadair, M., and X.
Li, "IPv6 Addressing of IPv4/IPv6 Translators", RFC 6052,
DOI 10.17487/RFC6052, October 2010,
<http://www.rfc-editor.org/info/rfc6052>.
[RFC6346] Bush, R., Ed., "The Address plus Port (A+P) Approach to
the IPv4 Address Shortage", RFC 6346,
DOI 10.17487/RFC6346, August 2011,
<http://www.rfc-editor.org/info/rfc6346>.
[RFC7597] Troan, O., Ed., Dec, W., Li, X., Bao, C., Matsushima, S.,
Murakami, T., and T. Taylor, Ed., "Mapping of Address and
Port with Encapsulation (MAP-E)", RFC 7597,
DOI 10.17487/RFC7597, July 2015,
<http://www.rfc-editor.org/info/rfc7597>.
[MAP-T-Use-Cases]
Maglione, R., Ed., Dec, W., Leung, I., and E. Mallette,
"Use cases for MAP-T", Work in Progress,
draft-maglione-softwire-map-t-scenarios-05, October 2014.
[RFC879] Postel, J., "The TCP Maximum Segment Size and Related
Topics", RFC 879, DOI 10.17487/RFC0879, November 1983,
<http://www.rfc-editor.org/info/rfc879>.
[RFC5382] Guha, S., Ed., Biswas, K., Ford, B., Sivakumar, S., and P.
Srisuresh, "NAT Behavioral Requirements for TCP", BCP 142,
RFC 5382, DOI 10.17487/RFC5382, October 2008,
<http://www.rfc-editor.org/info/rfc5382>.
[RFC5508] Srisuresh, P., Ford, B., Sivakumar, S., and S. Guha, "NAT
Behavioral Requirements for ICMP", BCP 148, RFC 5508,
DOI 10.17487/RFC5508, April 2009,
<http://www.rfc-editor.org/info/rfc5508>.
[RFC6219] Li, X., Bao, C., Chen, M., Zhang, H., and J. Wu, "The
China Education and Research Network (CERNET) IVI
Translation Design and Deployment for the IPv4/IPv6
Coexistence and Transition", RFC 6219,
DOI 10.17487/RFC6219, May 2011,
<http://www.rfc-editor.org/info/rfc6219>.
[RFC6269] Ford, M., Ed., Boucadair, M., Durand, A., Levis, P., and
P. Roberts, "Issues with IP Address Sharing", RFC 6269,
DOI 10.17487/RFC6269, June 2011,
<http://www.rfc-editor.org/info/rfc6269>.
[RFC7598] Mrugalski, T., Troan, O., Farrer, I., Perreault, S., Dec,
W., Bao, C., Yeh, L., and X. Deng, "DHCPv6 Options for
Configuration of Softwire Address and Port-Mapped
Clients", RFC 7598, DOI 10.17487/RFC7598, July 2015,
<http://www.rfc-editor.org/info/rfc7598>.
[Solutions-4v6]
Boucadair, M., Ed., Matsushima, S., Lee, Y., Bonness, O.,
Borges, I., and G. Chen, "Motivations for Carrier-side
Stateless IPv4 over IPv6 Migration Solutions", Work in
Progress, draft-ietf-softwire-stateless-4v6-motivation-05,
November 2012.
[Stateless-4Via6]
Dec, W., Asati, R., Bao, C., Deng, H., and M. Boucadair,
"Stateless 4Via6 Address Sharing", Work in Progress,
draft-dec-stateless-4v6-04, October 2011.
Given the following MAP domain information and IPv6 end-user prefix
assigned to a MAP CE:
A MAP node (CE or BR) can, via the BMR or equivalent FMR, determine
the IPv4 address and port set as shown below:
EA bits offset: 40
IPv4 suffix bits (p): Length of IPv4 address (32) -
IPv4 prefix length (24) = 8
IPv4 address: 192.0.2.18 (0xc0000212)
PSID start: 40 + p = 40 + 8 = 48
PSID length (q): o - p = (End-user prefix len -
Rule IPv6 prefix len) - p
= (56 - 40) - 8 = 8
PSID: 0x34
Example 2 - BR:
The resulting IPv6 packet will have the following header fields:
Example 3 - FMR:
A MAP node can, via the BMR or equivalent FMR, determine the
IPv4 address and port set as shown below:
EA bits offset: 0
IPv4 suffix bits (p): Length of IPv4 address -
IPv4 prefix length = 32 - 32 = 0
IPv4 address: 192.0.2.18 (0xc0000212)
PSID start: 0
PSID length: 0
PSID: null
A MAP node can, via the BMR, determine the IPv4 address and port set
as shown below:
EA bits offset: 0
IPv4 suffix bits (p): Length of IPv4 address -
IPv4 prefix length = 32 - 32 = 0
IPv4 address 192.0.2.18 (0xc0000212)
PSID start: 0
PSID length: 8
PSID: 0x34
Note that the IPv4 address and PSID are not derived from the IPv6
prefix assigned to the CE but are provisioned separately, using, for
example, MAP options in DHCPv6.
Acknowledgements
Contributors
Chongfeng Xie
China Telecom
Room 708, No. 118, Xizhimennei Street
Beijing 100035
China
Phone: +86-10-58552116
Email: [email protected]
Qiong Sun
China Telecom
Room 708, No. 118, Xizhimennei Street
Beijing 100035
China
Phone: +86-10-58552936
Email: [email protected]
Rajiv Asati
Cisco Systems
7025-6 Kit Creek Road
Research Triangle Park, NC 27709
United States
Email: [email protected]
Gang Chen
China Mobile
29, Jinrong Avenue
Xicheng District, Beijing 100033
China
Email: [email protected], [email protected]
Wentao Shang
CERNET Center/Tsinghua University
Room 225, Main Building, Tsinghua University
Beijing 100084
China
Email: [email protected]
Guoliang Han
CERNET Center/Tsinghua University
Room 225, Main Building, Tsinghua University
Beijing 100084
China
Email: [email protected]
Yu Zhai
CERNET Center/Tsinghua University
Room 225, Main Building, Tsinghua University
Beijing 100084
China
Email: [email protected]
Authors’ Addresses
Xing Li
CERNET Center/Tsinghua University
Room 225, Main Building, Tsinghua University
Beijing 100084
China
Email: [email protected]
Congxiao Bao
CERNET Center/Tsinghua University
Room 225, Main Building, Tsinghua University
Beijing 100084
China
Email: [email protected]
Email: [email protected]
Ole Troan
Cisco Systems
Philip Pedersens vei 1
Lysaker 1366
Norway
Email: [email protected]
Satoru Matsushima
SoftBank Telecom
1-9-1 Higashi-Shinbashi, Munato-ku
Tokyo
Japan
Email: [email protected]
Tetsuya Murakami
IP Infusion
1188 East Arques Avenue
Sunnyvale, CA 94085
United States
Email: [email protected]