Network Working Group N. Matsuhira Internet-Draft Neptela Intended status: Informational 7 October 2024 Expires: 10 April 2025 Multiple IPv4 - IPv6 address mapping translator (M46T) draft-matsuhira-m46t-17 Abstract This document specifies Multiple IPv4 - IPv6 address mapping Translator (M46T) specification. M46T enable access to IPv4 only host from IPv6 host. IPv4 host is identified as M46 address in IPv6 address space. The address assigned to IPv4 host may be global IPv4 address or private IPv4 address. M46T does not support access to IPv6 host from IPv4 only host. 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 RFC 2119 [RFC2119]. 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 https://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 10 April 2025. Copyright Notice Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. Matsuhira Expires 10 April 2025 [Page 1] Internet-Draft M46T October 2024 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. M46T Architecture . . . . . . . . . . . . . . . . . . . . . . 2 2.1. M46 address . . . . . . . . . . . . . . . . . . . . . . . 2 2.2. Mapping IPv4 address and IPv6 address . . . . . . . . . . 3 2.3. Address Translation Table . . . . . . . . . . . . . . . . 3 2.4. DNS mapping of IPv4 only host . . . . . . . . . . . . . . 3 3. Sample Configuration . . . . . . . . . . . . . . . . . . . . 4 3.1. M46 address and IPv4 network plane ID . . . . . . . . . . 4 3.2. Network Configuration . . . . . . . . . . . . . . . . . . 4 3.3. Routing . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. Processing of M46T . . . . . . . . . . . . . . . . . . . . . 6 4.1. Configuration of M46T . . . . . . . . . . . . . . . . . . 6 4.2. Processing from IPv6 to IPv4 . . . . . . . . . . . . . . 6 4.3. Processing from IPv6 to IPv4 . . . . . . . . . . . . . . 7 4.4. Other processing . . . . . . . . . . . . . . . . . . . . 7 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . 7 7. Normative References . . . . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 1. Introduction This document specifies Multiple IPv4 - IPv6 address mapping Translator (M46T) specification. M46T enable access to IPv4 only host from IPv6 host. IPv4 host is identified as M46 address in IPv6 address space. The address assigned to IPv4 host may be global IPv4 address or private IPv4 address. M46T does not support access to IPv6 host from IPv4 only host. 2. M46T Architecture 2.1. M46 address Figure 1 show M46A [I-D.draft-matsuhira-m46a]. Matsuhira Expires 10 April 2025 [Page 2] Internet-Draft M46T October 2024 | 96 - m bits | m bits | 32 bits | +-----------------------+--------------------------+--------------+ | M46A prefix | IPv4 network plane ID | IPv4 address | +-----------------------+--------------------------+--------------+ Figure 1 2.2. Mapping IPv4 address and IPv6 address M46A contain IPv4 address. Mapping IPv4 host address to IPv6 address space is already done with M46A. Address translation for IPv4 address is same as resolving M46A. IPv6 host address and corresponding IPv4 address should manage. 2.3. Address Translation Table Figure 2 shows translation table for M46T. Translation table contain three value, IPv6 adddress ot IPv6 host, mapped IPv4 address for the IPv6 host, and extry expire timer for remove the entry. +----------------------+----------------------+--------------------+ | Address of IPv6 host | mapped IPv4 address | entry expire timer | | | for IPv6 host | | +----------------------+----------------------+--------------------+ | : | : | : | ~ : ~ : ~ : ~ | : | : | : | +----------------------+----------------------+--------------------+ | Address of IPv6 host | mapped IPv4 address | entry expire timer | | | for IPv6 host | | +----------------------+----------------------+--------------------+ Figure 2 2.4. DNS mapping of IPv4 only host In the Domain Name System, hostnames are mapped to IPv6 addresses by AAAA resource records. M46 address can be mapped to IPv4 only host name. Matsuhira Expires 10 April 2025 [Page 3] Internet-Draft M46T October 2024 3. Sample Configuration 3.1. M46 address and IPv4 network plane ID In this example, M46A prefix length is 64bits, and IPv4 network plane ID length is 32 bits. M46A prefix value is 2001:0DB8:0:46, and IPv4 network plane ID value is 0:46. Figure 3 shows these value. | 64 bits | 32 bits | 32 bits | +-----------------------+--------------------------+--------------+ | M46A prefix | IPv4 network plane ID | IPv4 address | | (2001:0DB8:0:46) | (0:46) | | +-----------------------+--------------------------+--------------+ Figure 3 3.2. Network Configuration Figure 4 shows sample network configuration. IPv6 network have 2001:0DB8:1:0/64 network prefix and IPv4 network have 10.0.0.0/24 network prefix. Matsuhira Expires 10 April 2025 [Page 4] Internet-Draft M46T October 2024 +----------------+ | IPv6 host | | 2001:0DB8:1.0::10 +----------------+ | | 2001:0DB8:1:0/64 | +----------------+ | 2001:0DB8:1:0::1 | | | M46T | | address pool for IPv6 host mapping | 192.168.0.0/24 | | | 10.0.0.1 +----------------+ | | 10.0.0.0/24 | +----------------+ | IPv4 only host | | | | ipv4onlyhost10.example.com | 10.0.0.10 | | (2001:0DB8:0:46:0:64:10.0.0.10) | | +----------------+ Figure 4 IPv6 host address is 2001:0DB8:1:0::10. IPv4 only host address is 10.0.0.10. M46 address for IPv4 only host is 2001:0DB8:0:46:0:64:10.0.0.10. FQDN of IPv4 only host is ipv6onlyhost10.example.com. Figure 5 shows DNS entry in IPv4 address space, and Figure 6 shows DNS entry in IPv6 space. ipv6onlyhost10.example.com IN A 10.0.0.10 Figure 5 ipv6onlyhost10.example.com IN AAAA 2001:0DB8:0:46:0:64:10.0.0.10 Figure 6 Matsuhira Expires 10 April 2025 [Page 5] Internet-Draft M46T October 2024 The address of IPv4 interface of M46T is 10.0.0.1, and the address of IPv6 interface of M46T is 2001:0DB8:1:0::1. M46T have also IPv4 address pool for IPv6 host mapping. This example, the IPv4 address pool is 192.168.0.0/24. The default router for IPv4 only host is M46T's IPv4 interface address, 10.0.0.1. 3.3. Routing If using M46T in own routing domain, M46T advertise M46 address prefix for IPv4 only host, 2001:0DB8:0:46:0:64:10.0.0.0/120. 4. Processing of M46T 4.1. Configuration of M46T 1. M46A prefix for route advertisement (2001:0DB8:0:46:0:64:10.0.0.0/120) 2. IPv4 address pool for IPv6 hosts 3. entry expire default time (TBD) M46A contain IPv4 network plane ID, so M46T know IPv4 network plane ID from M46A prefix. 4.2. Processing from IPv6 to IPv4 1. M46T examine the exists of the entry for IPv6 host, that is source IPv6 address of IPv6 packet. 2. If there is no entry, get IPv4 address for mapping of IPv6 host from IPv4 address pool, and make entry to the translation table. 3. IF there is the entry, resove mapped IPv4 address for IPv6 host. 4. Make IPv4 header, source address is mapped IPv4 address, and destination address is from M46 address. 5. Translate IPv6 packet to IPv4 packet, and send it, and reset entry expire timer. The example addess translation table is shown in Figure 7. In this example, IPv6 host address is mapped to 192.168.0.200. Matsuhira Expires 10 April 2025 [Page 6] Internet-Draft M46T October 2024 +----------------------+----------------------+--------------------+ | Address of IPv6 host | mapped IPv4 address | entry expire timer | | | for IPv6 host | | +----------------------+----------------------+--------------------+ | 2001:0DB8:1.0::10 | 192.168.0.200 | TBD | +----------------------+----------------------+--------------------+ Figure 7 4.3. Processing from IPv6 to IPv4 1. Search address translation table with key destination IPv4 address, and resolve corrensponding IPv6 address. 2. Resolve source IPv6 address from sourve IPv4 address with M46 address generation rule. 3. Translate IPv4 packet to IPv6 packet, and sent it, and reset extry expire timer. 4.4. Other processing 1. Remove the entry of address translation table if expire. 5. IANA Considerations This document may requests IANA to assign IPv6 prefix for M46 Global address. 6. Security Considerations Security consideration does not discussed in this memo, at this time. 7. Normative References [I-D.draft-matsuhira-m46a] Matsuhira, N., "Multiple IPv4 - IPv6 mapped IPv6 address", 1 June 2019. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . Author's Address Matsuhira Expires 10 April 2025 [Page 7] Internet-Draft M46T October 2024 Naoki Matsuhira Neptela Japan Email: matsuhira.ietf@gmail.com Matsuhira Expires 10 April 2025 [Page 8]