idnits 2.17.1 draft-matsuhira-m46t-10.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 14 instances of lines with private range IPv4 addresses in the document. If these are generic example addresses, they should be changed to use any of the ranges defined in RFC 6890 (or successor): 192.0.2.x, 198.51.100.x or 203.0.113.x. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (June 18, 2021) is 1043 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- No issues found here. Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group N. Matsuhira 3 Internet-Draft Fujitsu Limited 4 Intended status: Informational June 18, 2021 5 Expires: December 20, 2021 7 Multiple IPv4 - IPv6 address mapping translator (M46T) 8 draft-matsuhira-m46t-10 10 Abstract 12 This document specifies Multiple IPv4 - IPv6 address mapping 13 Translator (M46T) specification. M46T enable access to IPv4 only 14 host from IPv6 host. IPv4 host is identified as M46 address in IPv6 15 address space. The address assigned to IPv4 host may be global IPv4 16 address or private IPv4 address. M46T does not support access to 17 IPv6 host from IPv4 only host. 19 Requirements Language 21 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 22 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 23 document are to be interpreted as described in RFC 2119 [RFC2119]. 25 Status of this Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at http://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on December 20, 2021. 42 Copyright Notice 44 Copyright (c) 2021 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (http://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 60 2. M46T Architecture . . . . . . . . . . . . . . . . . . . . . . . 3 61 2.1. M46 address . . . . . . . . . . . . . . . . . . . . . . . . 3 62 2.2. Mapping IPv4 address and IPv6 address . . . . . . . . . . . 3 63 2.3. Address Translation Table . . . . . . . . . . . . . . . . . 3 64 2.4. DNS mapping of IPv4 only host . . . . . . . . . . . . . . . 4 65 3. Sample Configuration . . . . . . . . . . . . . . . . . . . . . 4 66 3.1. M46 address and IPv4 network plane ID . . . . . . . . . . . 4 67 3.2. Network Configuration . . . . . . . . . . . . . . . . . . . 4 68 3.3. Routing . . . . . . . . . . . . . . . . . . . . . . . . . . 6 69 4. Processing of M46T . . . . . . . . . . . . . . . . . . . . . . 6 70 4.1. Configuration of M46T . . . . . . . . . . . . . . . . . . . 6 71 4.2. Processing from IPv6 to IPv4 . . . . . . . . . . . . . . . 6 72 4.3. Processing from IPv6 to IPv4 . . . . . . . . . . . . . . . 7 73 4.4. Other processing . . . . . . . . . . . . . . . . . . . . . 7 74 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 75 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 76 7. Normative References . . . . . . . . . . . . . . . . . . . . . 7 77 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 79 1. Introduction 81 This document specifies Multiple IPv4 - IPv6 address mapping 82 Translator (M46T) specification. M46T enable access to IPv4 only 83 host from IPv6 host. IPv4 host is identified as M46 address in IPv6 84 address space. The address assigned to IPv4 host may be global IPv4 85 address or private IPv4 address. M46T does not support access to 86 IPv6 host from IPv4 only host. 88 2. M46T Architecture 90 2.1. M46 address 92 Figure 1 show M46A [I-D.draft-matsuhira-m46a]. 94 | 96 - m bits | m bits | 32 bits | 95 +-----------------------+--------------------------+--------------+ 96 | M46A prefix | IPv4 network plane ID | IPv4 address | 97 +-----------------------+--------------------------+--------------+ 99 Figure 1 101 2.2. Mapping IPv4 address and IPv6 address 103 M46A contain IPv4 address. Mapping IPv4 host address to IPv6 address 104 space is already done with M46A. Address translation for IPv4 address 105 is same as resolving M46A. 107 IPv6 host address and corresponding IPv4 address should manage. 109 2.3. Address Translation Table 111 Figure 2 shows translation table for M46T. Translation table contain 112 three value, IPv6 adddress ot IPv6 host, mapped IPv4 address for the 113 IPv6 host, and extry expire timer for remove the entry. 115 +----------------------+----------------------+--------------------+ 116 | Address of IPv6 host | mapped IPv4 address | entry expire timer | 117 | | for IPv6 host | | 118 +----------------------+----------------------+--------------------+ 119 | : | : | : | 120 ~ : ~ : ~ : ~ 121 | : | : | : | 122 +----------------------+----------------------+--------------------+ 123 | Address of IPv6 host | mapped IPv4 address | entry expire timer | 124 | | for IPv6 host | | 125 +----------------------+----------------------+--------------------+ 127 Figure 2 129 2.4. DNS mapping of IPv4 only host 131 In the Domain Name System, hostnames are mapped to IPv6 addresses by 132 AAAA resource records. M46 address can be mapped to IPv4 only host 133 name. 135 3. Sample Configuration 137 3.1. M46 address and IPv4 network plane ID 139 In this example, M46A prefix length is 64bits, and IPv4 network plane 140 ID length is 32 bits. M46A prefix value is 2001:0DB8:0:46, and IPv4 141 network plane ID value is 0:46. Figure 3 shows these value. 143 | 64 bits | 32 bits | 32 bits | 144 +-----------------------+--------------------------+--------------+ 145 | M46A prefix | IPv4 network plane ID | IPv4 address | 146 | (2001:0DB8:0:46) | (0:46) | | 147 +-----------------------+--------------------------+--------------+ 149 Figure 3 151 3.2. Network Configuration 153 Figure 4 shows sample network configuration. IPv6 network have 2001: 154 0DB8:1:0/64 network prefix and IPv4 network have 10.0.0.0/24 network 155 prefix. 157 +----------------+ 158 | IPv6 host | 159 | 2001:0DB8:1.0::10 160 +----------------+ 161 | 162 | 2001:0DB8:1:0/64 163 | 164 +----------------+ 165 | 2001:0DB8:1:0::1 166 | | 167 | M46T | 168 | address pool for IPv6 host mapping 169 | 192.168.0.0/24 170 | | 171 | 10.0.0.1 172 +----------------+ 173 | 174 | 10.0.0.0/24 175 | 176 +----------------+ 177 | IPv4 only host | 178 | | 179 | ipv4onlyhost10.example.com 180 | 10.0.0.10 | 181 | (2001:0DB8:0:46:0:64:10.0.0.10) 182 | | 183 +----------------+ 185 Figure 4 187 IPv6 host address is 2001:0DB8:1:0::10. IPv4 only host address is 188 10.0.0.10. M46 address for IPv4 only host is 2001:0DB8:0:46:0:64: 189 10.0.0.10. FQDN of IPv4 only host is ipv6onlyhost10.example.com. 190 Figure 5 shows DNS entry in IPv4 address space, and Figure 6 shows 191 DNS entry in IPv6 space. 193 ipv6onlyhost10.example.com IN A 10.0.0.10 195 Figure 5 197 ipv6onlyhost10.example.com IN AAAA 2001:0DB8:0:46:0:64:10.0.0.10 198 Figure 6 200 The address of IPv4 interface of M46T is 10.0.0.1, and the address of 201 IPv6 interface of M46T is 2001:0DB8:1:0::1. M46T have also IPv4 202 address pool for IPv6 host mapping. This example, the IPv4 address 203 pool is 192.168.0.0/24. 205 The default router for IPv4 only host is M46T's IPv4 interface 206 address, 10.0.0.1. 208 3.3. Routing 210 If using M46T in own routing domain, M46T advertise M46 address 211 prefix for IPv4 only host, 2001:0DB8:0:46:0:64:10.0.0.0/120. 213 4. Processing of M46T 215 4.1. Configuration of M46T 217 1. M46A prefix for route advertisement (2001:0DB8:0:46:0:64: 218 10.0.0.0/120) 220 2. IPv4 address pool for IPv6 hosts 222 3. entry expire default time (TBD) 224 M46A contain IPv4 network plane ID, so M46T know IPv4 network plane 225 ID from M46A prefix. 227 4.2. Processing from IPv6 to IPv4 229 1. M46T examine the exists of the entry for IPv6 host, that is 230 source IPv6 address of IPv6 packet. 232 2. If there is no entry, get IPv4 address for mapping of IPv6 host 233 from IPv4 address pool, and make entry to the translation table. 235 3. IF there is the entry, resove mapped IPv4 address for IPv6 host. 237 4. Make IPv4 header, source address is mapped IPv4 address, and 238 destination address is from M46 address. 240 5. Translate IPv6 packet to IPv4 packet, and send it, and reset 241 entry expire timer. 243 The example addess translation table is shown in Figure 7. In this 244 example, IPv6 host address is mapped to 192.168.0.200. 246 +----------------------+----------------------+--------------------+ 247 | Address of IPv6 host | mapped IPv4 address | entry expire timer | 248 | | for IPv6 host | | 249 +----------------------+----------------------+--------------------+ 250 | 2001:0DB8:1.0::10 | 192.168.0.200 | TBD | 251 +----------------------+----------------------+--------------------+ 253 Figure 7 255 4.3. Processing from IPv6 to IPv4 257 1. Search address translation table with key destination IPv4 258 address, and resolve corrensponding IPv6 address. 260 2. Resolve source IPv6 address from sourve IPv4 address with M46 261 address generation rule. 263 3. Translate IPv4 packet to IPv6 packet, and sent it, and reset 264 extry expire timer. 266 4.4. Other processing 268 1. Remove the entry of address translation table if expire. 270 5. IANA Considerations 272 This document may requests IANA to assign IPv6 prefix for M46 Global 273 address. 275 6. Security Considerations 277 Security consideration does not discussed in this memo, at this time. 279 7. Normative References 281 [I-D.draft-matsuhira-m46a] 282 Matsuhira, N., "Multiple IPv4 - IPv6 mapped IPv6 address", 283 June 2019. 285 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 286 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ 287 RFC2119, March 1997, 288 . 290 Author's Address 292 Naoki Matsuhira 293 Fujitsu Limited 294 17-25, Shinkamata 1-chome, Ota-ku 295 Tokyo, 144-8588 296 Japan 298 Phone: +81-3-3735-1111 299 Fax: 300 Email: naoki.matsuhira@gmail.com