Internet-Draft M46T April 2023
Matsuhira Expires 6 October 2023 [Page]
Workgroup:
Network Working Group
Internet-Draft:
draft-matsuhira-m46t-14
Published:
Intended Status:
Informational
Expires:
Author:
N. Matsuhira
WIDE Project

Multiple IPv4 - IPv6 address mapping translator (M46T)

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 6 October 2023.

Table of Contents

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].

 |     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.

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.

  +----------------+
  |  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

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.

 +----------------------+----------------------+--------------------+
 | 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", .
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.

Author's Address

Naoki Matsuhira
WIDE Project
Japan