1
0
mirror of https://github.com/becarpenter/book6.git synced 2024-05-07 02:54:53 +00:00

NAT64 for v6only clients

This commit is contained in:
Brian E Carpenter
2023-07-23 09:09:50 +12:00
parent c3f1657669
commit e4cef6b0c0
3 changed files with 46 additions and 31 deletions

View File

@ -51,6 +51,20 @@ Providers (ISPs) are leveraging Carrier-Grade NAT (CGN,
of IPv4. However, large ISPs have discovered the scaling limits and
operational costs of CGN.
A gap in this classical dual stack approach is that it does not allow an
IPv6-only client to communicate with an IPv4-only server. IPv6-only
devices do exist, e.g.
[Thread](https://www.threadgroup.org/What-is-Thread/Overview) devices,
and more are to be expected in future. This situation requires a
translation mechanism, such as NAT64 + DNS64 (see
\[[Translation](Translation.md)\], which will allow IPv6 only devices,
on a dual stack network, to access IPv4 hosts. Typically, dual stack
clients on the same network will also use NAT64 (instead of
[RFC1918](https://www.rfc-editor.org/info/rfc1918) addresses and NAT44)
to access IPv4 only hosts, but they are using NAT either way. See this
helpful
[blog article](https://sgryphon.gamertheory.net/2022/12/14/running-nat64-in-a-dual-stack-network/).
Although Dual-Stack provides advantages in the initial phase of
deployment, it has some disadvantages in the long run, like the
duplication of network resources and states. It also requires more IPv4
@ -63,22 +77,22 @@ a particular application.
### IPv6-Mostly Networks
With the standardization of
[RFC8925](https://www.rfc-editor.org/info/rfc8925/)
("IPv6-Only Preferred Option for DHCPv4") there now exists a
supportable, standard mechanism for gracefully migrating off of legacy
IP while preserving access for systems and network stacks that either do
not support IPv6 or only support classical dual-stack. (Such systems do
not automatically support the 464XLAT technique described below, or are
otherwise unable to operate without legacy IPv4 for application or
internal operating system requirements). What IPv6-mostly provides is a
low risk mode of converting legacy IPv4 or existing dual stack networks
to IPv6-only in a very measured manner. By leveraging the
IPv6-only-preferred option for legacy IPv4 (DHCP option 108) an operator
is able to signal via a network protocol that is likely already in use
(DHCP for IPv4) that the network is able to support IPv6-only mechanisms
if the host is capable of utilizing them. Conversely, if a device does not
implement and understand DHCP option 108, they happily move on with a
dual-stack IPv4/IPv6 experience, again, with no user intervention.
[RFC8925](https://www.rfc-editor.org/info/rfc8925/) ("IPv6-Only
Preferred Option for DHCPv4") there now exists a supportable, standard
mechanism for gracefully migrating off of legacy IP while preserving
access for systems and network stacks that either do not support IPv6 or
only support classical dual-stack. (Such systems do not automatically
support the 464XLAT technique described below, or are otherwise unable
to operate without legacy IPv4 for application or internal operating
system requirements). What IPv6-mostly provides is a low risk mode of
converting legacy IPv4 or existing dual stack networks to IPv6-only in a
very measured manner. By leveraging the IPv6-only-preferred option for
legacy IPv4 (DHCP option 108) an operator is able to signal via a
network protocol that is likely already in use (DHCP for IPv4) that the
network is able to support IPv6-only mechanisms if the host is capable
of utilizing them. Conversely, if a device does not implement and
understand DHCP option 108, they happily move on with a dual-stack
IPv4/IPv6 experience, again, with no user intervention.
This methodology holds several advantages, notably the simplification of
network segments and protocol deployment. This deployment model allows
@ -101,12 +115,12 @@ This controlled and deliberate migration allows the operating system to
decide how much or how little it can support without needed input from
the user, making the network fit the capabilities of the host, thus
lowering the risk of incompatibility (and lowering the rate of problem
reports). Like most existing IPv6-only networks, IPv6-mostly will
nevertheless require packet and DNS translation services ([discussed
later](Translation.md)) as well as knowledge of the IPv6 prefix used
for translation ([ditto](Translation.md)). With these features
suppported, hosts on an IPv6-mostly network will have a full suite
of capabilities.
reports). Like most existing IPv6-only networks, IPv6-mostly will
nevertheless require packet and DNS translation services
([discussed later](Translation.md)) as well as knowledge of the IPv6
prefix used for translation ([ditto](Translation.md)). With these
features suppported, hosts on an IPv6-mostly network will have a full
suite of capabilities.
### The need for IPv4 as a service
@ -162,8 +176,8 @@ started this process, as in the case of
and
[EE](https://indico.uknof.org.uk/event/38/contributions/489/attachments/612/736/Nick_Heatley_EE_IPv6_UKNOF_20170119.pdf).
[RFC9313](https://www.rfc-editor.org/info/rfc9313) compares the merits of
the most common IPv6 transition solutions, i.e. 464XLAT
[RFC9313](https://www.rfc-editor.org/info/rfc9313) compares the merits
of the most common IPv6 transition solutions, i.e. 464XLAT
\[[RFC6877](https://www.rfc-editor.org/info/rfc6877)\], DS-lite
\[[RFC6333](https://www.rfc-editor.org/info/rfc6333)\], Lightweight
4over6 (lw4o6) \[[RFC7596](https://www.rfc-editor.org/info/rfc7596)\],

View File

@ -1,7 +1,7 @@
# book6 Citation Index
<img src="./book6logo.png" alt="book6 logo" width="200px" height="auto"/>
Generated at 2023-07-20 15:17:12 UTC+1200
Generated at 2023-07-23 09:08:27 UTC+1200
This index was created automatically, so it's dumb. It has links to each section that mentions each citation.
<!-- Link lines generated automatically; do not delete -->
@ -24,7 +24,8 @@ This index was created automatically, so it's dumb. It has links to each section
[BCP91 ●](./2.%20IPv6%20Basic%20Technology/DNS.md)
[RFC1918 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Tunnels.md)
[RFC1918 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Tunnels.md)
[RFC2080 ●](./2.%20IPv6%20Basic%20Technology/Routing.md)
@ -260,8 +261,6 @@ This index was created automatically, so it's dumb. It has links to each section
[RFC7775 ●](./2.%20IPv6%20Basic%20Technology/Routing.md)
[RFC781 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[RFC7849 ●](./4.%20Security/Layer%202%20considerations.md)
[RFC7872 ●](./2.%20IPv6%20Basic%20Technology/Extension%20headers%20and%20options.md)
@ -319,11 +318,11 @@ This index was created automatically, so it's dumb. It has links to each section
[RFC8754 ●](./2.%20IPv6%20Basic%20Technology/Extension%20headers%20and%20options.md)
[RFC8781 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[RFC8781 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Translation.md)
[RFC8837 ●](./2.%20IPv6%20Basic%20Technology/Traffic%20class%20and%20flow%20label.md)
[RFC8880 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[RFC8880 ●](./3.%20Coexistence%20with%20Legacy%20IPv4/Translation.md)
[RFC8899 ●](./2.%20IPv6%20Basic%20Technology/Extension%20headers%20and%20options.md)

View File

@ -1,7 +1,7 @@
# book6 Main Index
<img src="./book6logo.png" alt="book6 logo" width="200px" height="auto"/>
Generated at 2023-07-20 15:17:12 UTC+1200
Generated at 2023-07-23 09:08:27 UTC+1200
This index was created automatically, so it's dumb. It is not case-sensitive. It has links to each section that mentions each keyword.
<!-- Link lines generated automatically; do not delete -->
@ -96,6 +96,7 @@ This index was created automatically, so it's dumb. It is not case-sensitive. It
[](./2.%20IPv6%20Basic%20Technology/Auto-configuration.md)
[](./2.%20IPv6%20Basic%20Technology/DNS.md)
[](./2.%20IPv6%20Basic%20Technology/Managed%20configuration.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Translation.md)
[](./6.%20Management%20and%20Operations/6.%20Management%20and%20Operations.md)
[](./6.%20Management%20and%20Operations/Multi-prefix%20operation.md)
@ -269,6 +270,7 @@ This index was created automatically, so it's dumb. It is not case-sensitive. It
[](./2.%20IPv6%20Basic%20Technology/Auto-configuration.md)
[](./2.%20IPv6%20Basic%20Technology/Managed%20configuration.md)
[](./2.%20IPv6%20Basic%20Technology/Routing.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Dual%20stack%20scenarios.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/IPv6%20primary%20differences%20from%20IPv4.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Translation.md)
[](./3.%20Coexistence%20with%20Legacy%20IPv4/Tunnels.md)