<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.8 (Ruby 2.6.10) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-ietf-v6ops-prefer8781-03" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Prefer RFC8781">Prefer use of RFC8781 for Discovery of IPv6 Prefix Used for IPv6 Address Synthesis</title>

    <author fullname="Nick Buraglio">
      <organization>Energy Sciences Network</organization>
      <address>
        <email>buraglio@forwardingplane.net</email>
      </address>
    </author>
    <author fullname="Tommy Jensen">
      <organization>Microsoft</organization>
      <address>
        <email>tojens.ietf@gmail.com</email>
      </address>
    </author>
    <author fullname="Jen Linkova">
      <organization>Google</organization>
      <address>
        <email>furry13@gmail.com</email>
      </address>
    </author>

    <date year="2025" month="June" day="24"/>

    <area>ops</area>
    <workgroup>v6ops</workgroup>
    <keyword>IPv6</keyword> <keyword>DNS64</keyword> <keyword>PREF64</keyword> <keyword>NAT64</keyword> <keyword>CLAT</keyword>

    <abstract>


<?line 59?>

<t>On networks providing IPv4-IPv6 translation (NAT64, RFC7915), hosts and other endpoints might need to know the IPv6 prefix used for translation (the NAT64 prefix).
While RFC7050 defined a DNS64-based prefix discovery mechanism, more robust methods have since emerged.
This document provides updated guidelines for NAT64 prefix discovery, deprecating the RFC7050 approach in favor of modern alternatives (e.g., RFC8781) whenever available.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        The latest revision of this draft can be found at <eref target="https://github.com/buraglio/draft-nbtjjl-v6ops-prefer8781"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-v6ops-prefer8781/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        v6ops Working Group mailing list (<eref target="mailto:v6ops@ietf.org"/>),
        which is archived at <eref target="https://datatracker.ietf.org/wg/v6ops/about/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/v6ops/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/buraglio/draft-nbtjjl-v6ops-prefer8781"/>.</t>
    </note>


  </front>

  <middle>


<?line 65?>

<section anchor="introduction"><name>Introduction</name>

<t>NAT64 devices translating between IPv4 and IPv6 packet headers (<xref target="RFC7915"></xref>) employ a NAT64 prefix to map IPv4 addresses into the IPv6 address space, and vice versa.
When a network provides NAT64 services, it is advantageous for hosts and endpoints to acquire the network's NAT64 prefix (PREF64).
Discovering the PREF64 enables endpoints to:</t>

<t><list style="symbols">
  <t>implement the customer-side translator (CLAT) functions of the 464XLAT architecture <xref target="RFC6877"></xref>;</t>
  <t>translate the IPv4 literal to an IPv6 literal (Section 7.1 of <xref target="RFC8305"></xref>);</t>
  <t>perform local DNS64 (<xref target="RFC6147"></xref>) functions.</t>
</list></t>

<t>Dynamic PREF64 discovery is often essential, particularly for unmanaged or mobile endpoints, where static configuration is impractical.
While <xref target="RFC7050"></xref> introduced the first DNS64-based mechanism for PREF64 discovery, subsequent methods have been developed to address its limitations.</t>

<t>For instance, <xref target="RFC8781"></xref> defines a Neighbor Discovery (<xref target="RFC4861"></xref>) option for Router Advertisements (RAs) to convey PREF64 information to hosts.
This approach offers several advantages (Section 3 of <xref target="RFC8781"></xref>), including fate sharing  with other host network configuration parameters.</t>

<t>Due to fundamental shortcomings of the <xref target="RFC7050"></xref> mechanism (<xref target="issues"/>), <xref target="RFC8781"></xref> is the preferred solution for new deployments.
Implementations should strive for consistent PREF64 acquisition methods.
The DNS64-based mechanism of <xref target="RFC7050"></xref> should be employed only when RA-based PREF64 delivery is unavailable, or as a fallback for legacy systems incapable of processing the PREF64 RA option.</t>

</section>
<section anchor="conventions-and-definitions"><name>Conventions and Definitions</name>

<t>CLAT: A customer-side translator (XLAT), defined in <xref target="RFC6877"></xref>, that complies with <xref target="RFC7915"></xref>.</t>

<t>DNS64: a mechanism for synthesizing AAAA records from A records, defined in <xref target="RFC6147"></xref>.</t>

<t>NAT64: a mechanism for translating IPv6 packets to IPv4 packets and vice versa.  The translation is done by translating the packet headers according to the IP/ICMP Translation Algorithm defined in <xref target="RFC7915"></xref>. NAT64 translators can operate in stateless or stateful mode (<xref target="RFC6144"></xref>).</t>

<t>PREF64 (or NAT64 prefix): An IPv6 prefix used for IPv6 address synthesis and for network addresses and protocols translation from IPv6 clients to IPv4 servers, <xref target="RFC6146"></xref>.</t>

<t>Router Advertisement (RA): A packet used by Neighbor Discovery <xref target="RFC4861"></xref> and SLAAC to advertise the presence of the routers, together with other IPv6 configuration information.</t>

<t>SLAAC:  StateLess Address AutoConfiguration, <xref target="RFC4862"></xref></t>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<?line -18?>

</section>
<section anchor="issues"><name>Existing issues with RFC 7050</name>

<t>DNS-based method of discovering the NAT64 prefix introduces some challenges, which make this approach less preferable than most recently developed alternatives (such as PREF64 RA option, <xref target="RFC8781"></xref>).
This section outlines the key issues, associated with <xref target="RFC7050"></xref>.</t>

<section anchor="dependency-on-network-provided-recursive-resolvers"><name>Dependency on Network-Provided Recursive Resolvers</name>

<t>Fundamentally, the presence of the NAT64 and the exact value of the prefix used for the translation are network-specific attributes.
Therefore, <xref target="RFC7050"></xref> requires the device to use the DNS64 resolvers provided by the network.
If the device or an application is configured to use other recursive resolvers or runs a local recursive resolver, the corresponding name resolution APIs and libraries are required to recognize 'ipv4only.arpa.' as a special name and give it special treatment.
This issue and remediation approach are discussed in <xref target="RFC8880"></xref>.
However, it has been observed that very few <xref target="RFC7050"></xref> implementations support <xref target="RFC8880"></xref> requirements for special treatment of 'ipv4only.arpa.'.
As a result, configuring such systems and applications to use resolvers other than the one provided by the network breaks the PREF64 discovery, leading to degraded user experience.</t>

<t>VPN clients often override the host's DNS configuration, for example, by configuring enterprise DNS servers as the host's recursive resolvers and forcing all name resolution through the VPN.
These enterprise DNS servers typically lack DNS64 functionality and therefore cannot provide information about the PREF64 used within the local network.
Consequently, this prevents the host from discovering the necessary PREF64, negatively impacting its connectivity on IPv6-only networks</t>

</section>
<section anchor="network-stack-initialization-delay"><name>Network Stack Initialization Delay</name>

<t>When using SLAAC, an IPv6 host typically requires a single RA to acquire its network configuration.
For IPv6-only hosts, timely PREF64 discovery is critical, particularly for those performing local DNS64 or NAT64 functions, such as CLAT.
Until the PREF64 is obtained, the host's IPv4-only applications and communication to IPv4-only destinations are impaired.
The mechanism defined in <xref target="RFC7050"></xref> does not bundle PREF64 information with other network configuration parameters.</t>

</section>
<section anchor="latency-in-updates-propagation"><name>Latency in Updates Propagation</name>

<t>Section 3 of <xref target="RFC7050"></xref> requires that the node <bcp14>SHALL</bcp14> cache the replies received during the PREF64 discovery and <bcp14>SHOULD</bcp14> repeat the discovery process ten seconds before the TTL of the Well-Known Name's synthetic AAAA resource record expires.
As a result, once the PREF64 is discovered, it will be used until the TTL expired, or until the node disconnects from the network.
There is no mechanism for an operator to force the PREF64 rediscovery on the node without disconnecting the node from the network.
If the operator needs to change the PREF64 value used in the network, they need to proactively reduce the TTL value returned by the DNS64 server.
This method has two significant drawbacks:</t>

<t><list style="symbols">
  <t>Many networks utilize external DNS64 servers and therefore have no control over the TTL value.</t>
  <t>The PREF64 changes need to be planned and executed at least TTL seconds in advance. If the operator needs to notify nodes that a particular prefix must not be used (e.g. during a network outage or if the nodes learnt a rogue PREF64 as a result of an attack), it might not be possible without interrupting the network connectivity for the affected nodes.</t>
</list></t>

</section>
<section anchor="multihoming-implications"><name>Multihoming Implications</name>

<t>According to Section 3 of <xref target="RFC7050"></xref>, a node <bcp14>MUST</bcp14> examine all received AAAA resource records to discover one or more PREF64s and <bcp14>MUST</bcp14> utilize all learned prefixes.
However, this approach presents challenges in some multihomed topologies where different DNS64 servers belonging to different ISPs might return different PREF64s.
In such cases, it is crucial that traffic destined for synthesized addresses is routed to the correct NAT64 device and the source address selected for those flows belongs to the prefix from that ISP's address space.
In other words, the node needs to associate the discovered PREF64 with upstream information, including the IPv6 prefix and default gateway.
Currently, there is no reliable way for a node to map a DNS64 response (and the prefix learned from it) to a specific upstream in a multihoming scenario.
Consequently, the node might inadvertently select an incorrect source address for a given PREF64 and/or send traffic to the incorrect uplink.</t>

</section>
<section anchor="security-implications"><name>Security Implications</name>

<t>As discussed in Section 7 of <xref target="RFC7050"></xref>, the DNS-based PREF64 discovery is prone to DNS spoofing attacks.
In addition to creating a wider attack surface for IPv6 deployments, <xref target="RFC7050"></xref> has other security challenges worth noting to justify declaring it legacy.</t>

<section anchor="secure-channel-def"><name>Definition of secure channel</name>

<t><xref target="RFC7050"></xref> requires a node's communication channel with a DNS64 server to be a "secure channel" which it defines to mean "a communication channel a node has between itself and a DNS64 server protecting DNS protocol-related messages from interception and tampering." This need is redundant when another communication mechanism of IPv6-related configuration, specifically Router Advertisements, can already be defended against tampering by RA Guard <xref target="RFC6105"></xref>. Requiring nodes to implement two defense mechanisms when only one is necessary when <xref target="RFC8781"></xref> is used in place of <xref target="RFC7050"></xref> creates unnecessary risk.</t>

</section>
<section anchor="secure-channel-example-of-ipsec"><name>Secure channel example of IPsec</name>

<t>One of the two examples <xref target="RFC7050"></xref> defines to qualify a communication channel with a DNS64 server is the use of an "IPsec-based virtual private network (VPN) tunnel". As of the time of this writing, this is not supported as a practice by any common operating system DNS client. While they could, there have also since been multiple mechanisms defined for performing DNS-specific encryption such as those defined in <xref target="RFC9499"></xref> that would be more appropriately scoped to the applicable DNS traffic. These are also compatible with encrypted DNS advertisement by the network using Discovery of Network-designated Resolvers <xref target="RFC9463"></xref> that would ensure the clients know in advance that the DNS64 server supported the encryption mechanism.</t>

</section>
<section anchor="secure-channel-example-of-link-layer-encryption"><name>Secure channel example of link layer encryption</name>

<t>The other example given by <xref target="RFC7050"></xref> that would allow a communication channel with a DNS64 server to qualify as a "secure channel" is the use of a "link layer utilizing data encryption technologies". As of the time of this writing, most common link layer implementations use data encryption already with no extra effort needed on the part of network nodes. While this appears to be a trivial way to satisfy this requirement, it also renders the requirement meaningless since any node along the path can still read the higher-layer DNS traffic containing the translation prefix. This seems to be at odds with the definition of "secure channel" as explained in <xref section="2.2" sectionFormat="of" target="RFC7050"/>.</t>

</section>
</section>
</section>
<section anchor="recommendations-for-pref64-discovery"><name>Recommendations for PREF64 Discovery</name>

<section anchor="deployment-recommendations"><name>Deployment Recommendations</name>

<t>Operators deploying NAT64 networks <bcp14>SHOULD</bcp14> provide PREF64 information in Router Advertisements as per <xref target="RFC8781"></xref>.</t>

<section anchor="mobile-network-considerations"><name>Mobile network considerations</name>

<t>Use of <xref target="RFC8781"></xref> may not be currently practical for networks that have more complex network control signaling or rely on slower network component upgrade cycles, such as mobile networks. These environments are encouraged to incorporate <xref target="RFC8781"></xref> when made practical by infrastructure upgrades or software stack feature additions.</t>

</section>
</section>
<section anchor="clients-implementation-recommendations"><name>Clients Implementation Recommendations</name>

<t>Clients <bcp14>SHOULD</bcp14> obtain PREF64 information from Router Advertisements as per <xref target="RFC8781"></xref> instead of using <xref target="RFC7050"></xref> method.
In the absence of the PREF64 information in RAs, a client <bcp14>MAY</bcp14> choose to fall back to RFC7050.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>Obtaining PREF64 information from Router Advertisements improves the overall security of an IPv6-only client as it mitigates all attack vectors related to spoofed or rogue DNS response, as discussed in Section 7 of <xref target="RFC7050"></xref>.
Security considerations related to obtaining PREF64 information from RAs are discussed in Section 7 of <xref target="RFC8781"></xref>.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>It is expected that there will be a long tail of both clients and networks still relying on <xref target="RFC7050"></xref> as a sole mechanism to discover PREF64 information.
Therefore IANA still need to maintain "ipv4only.arpa." as described in <xref target="RFC7050"></xref> and this document has no IANA actions.</t>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC7050">
  <front>
    <title>Discovery of the IPv6 Prefix Used for IPv6 Address Synthesis</title>
    <author fullname="T. Savolainen" initials="T." surname="Savolainen"/>
    <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
    <author fullname="D. Wing" initials="D." surname="Wing"/>
    <date month="November" year="2013"/>
    <abstract>
      <t>This document describes a method for detecting the presence of DNS64 and for learning the IPv6 prefix used for protocol translation on an access network. The method depends on the existence of a well-known IPv4-only fully qualified domain name "ipv4only.arpa.". The information learned enables nodes to perform local IPv6 address synthesis and to potentially avoid NAT64 on dual-stack and multi-interface deployments.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7050"/>
  <seriesInfo name="DOI" value="10.17487/RFC7050"/>
</reference>

<reference anchor="RFC8781">
  <front>
    <title>Discovering PREF64 in Router Advertisements</title>
    <author fullname="L. Colitti" initials="L." surname="Colitti"/>
    <author fullname="J. Linkova" initials="J." surname="Linkova"/>
    <date month="April" year="2020"/>
    <abstract>
      <t>This document specifies a Neighbor Discovery option to be used in Router Advertisements (RAs) to communicate prefixes of Network Address and Protocol Translation from IPv6 clients to IPv4 servers (NAT64) to hosts.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8781"/>
  <seriesInfo name="DOI" value="10.17487/RFC8781"/>
</reference>

<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>

<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC4861">
  <front>
    <title>Neighbor Discovery for IP version 6 (IPv6)</title>
    <author fullname="T. Narten" initials="T." surname="Narten"/>
    <author fullname="E. Nordmark" initials="E." surname="Nordmark"/>
    <author fullname="W. Simpson" initials="W." surname="Simpson"/>
    <author fullname="H. Soliman" initials="H." surname="Soliman"/>
    <date month="September" year="2007"/>
    <abstract>
      <t>This document specifies the Neighbor Discovery protocol for IP Version 6. IPv6 nodes on the same link use Neighbor Discovery to discover each other's presence, to determine each other's link-layer addresses, to find routers, and to maintain reachability information about the paths to active neighbors. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4861"/>
  <seriesInfo name="DOI" value="10.17487/RFC4861"/>
</reference>

<reference anchor="RFC4862">
  <front>
    <title>IPv6 Stateless Address Autoconfiguration</title>
    <author fullname="S. Thomson" initials="S." surname="Thomson"/>
    <author fullname="T. Narten" initials="T." surname="Narten"/>
    <author fullname="T. Jinmei" initials="T." surname="Jinmei"/>
    <date month="September" year="2007"/>
    <abstract>
      <t>This document specifies the steps a host takes in deciding how to autoconfigure its interfaces in IP version 6. The autoconfiguration process includes generating a link-local address, generating global addresses via stateless address autoconfiguration, and the Duplicate Address Detection procedure to verify the uniqueness of the addresses on a link. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4862"/>
  <seriesInfo name="DOI" value="10.17487/RFC4862"/>
</reference>

<reference anchor="RFC6105">
  <front>
    <title>IPv6 Router Advertisement Guard</title>
    <author fullname="E. Levy-Abegnoli" initials="E." surname="Levy-Abegnoli"/>
    <author fullname="G. Van de Velde" initials="G." surname="Van de Velde"/>
    <author fullname="C. Popoviciu" initials="C." surname="Popoviciu"/>
    <author fullname="J. Mohacsi" initials="J." surname="Mohacsi"/>
    <date month="February" year="2011"/>
    <abstract>
      <t>Routed protocols are often susceptible to spoof attacks. The canonical solution for IPv6 is Secure Neighbor Discovery (SEND), a solution that is non-trivial to deploy. This document proposes a light-weight alternative and complement to SEND based on filtering in the layer-2 network fabric, using a variety of filtering criteria, including, for example, SEND status. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6105"/>
  <seriesInfo name="DOI" value="10.17487/RFC6105"/>
</reference>

<reference anchor="RFC6144">
  <front>
    <title>Framework for IPv4/IPv6 Translation</title>
    <author fullname="F. Baker" initials="F." surname="Baker"/>
    <author fullname="X. Li" initials="X." surname="Li"/>
    <author fullname="C. Bao" initials="C." surname="Bao"/>
    <author fullname="K. Yin" initials="K." surname="Yin"/>
    <date month="April" year="2011"/>
    <abstract>
      <t>This note describes a framework for IPv4/IPv6 translation. This is in the context of replacing Network Address Translation - Protocol Translation (NAT-PT), which was deprecated by RFC 4966, and to enable networks to have IPv4 and IPv6 coexist in a somewhat rational manner while transitioning to an IPv6 network. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6144"/>
  <seriesInfo name="DOI" value="10.17487/RFC6144"/>
</reference>

<reference anchor="RFC6146">
  <front>
    <title>Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers</title>
    <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
    <author fullname="P. Matthews" initials="P." surname="Matthews"/>
    <author fullname="I. van Beijnum" initials="I." surname="van Beijnum"/>
    <date month="April" year="2011"/>
    <abstract>
      <t>This document describes stateful NAT64 translation, which allows IPv6-only clients to contact IPv4 servers using unicast UDP, TCP, or ICMP. One or more public IPv4 addresses assigned to a NAT64 translator are shared among several IPv6-only clients. When stateful NAT64 is used in conjunction with DNS64, no changes are usually required in the IPv6 client or the IPv4 server.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6146"/>
  <seriesInfo name="DOI" value="10.17487/RFC6146"/>
</reference>

<reference anchor="RFC7915">
  <front>
    <title>IP/ICMP Translation Algorithm</title>
    <author fullname="C. Bao" initials="C." surname="Bao"/>
    <author fullname="X. Li" initials="X." surname="Li"/>
    <author fullname="F. Baker" initials="F." surname="Baker"/>
    <author fullname="T. Anderson" initials="T." surname="Anderson"/>
    <author fullname="F. Gont" initials="F." surname="Gont"/>
    <date month="June" year="2016"/>
    <abstract>
      <t>This document describes the Stateless IP/ICMP Translation Algorithm (SIIT), which translates between IPv4 and IPv6 packet headers (including ICMP headers). This document obsoletes RFC 6145.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7915"/>
  <seriesInfo name="DOI" value="10.17487/RFC7915"/>
</reference>

<reference anchor="RFC6147">
  <front>
    <title>DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers</title>
    <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
    <author fullname="A. Sullivan" initials="A." surname="Sullivan"/>
    <author fullname="P. Matthews" initials="P." surname="Matthews"/>
    <author fullname="I. van Beijnum" initials="I." surname="van Beijnum"/>
    <date month="April" year="2011"/>
    <abstract>
      <t>DNS64 is a mechanism for synthesizing AAAA records from A records. DNS64 is used with an IPv6/IPv4 translator to enable client-server communication between an IPv6-only client and an IPv4-only server, without requiring any changes to either the IPv6 or the IPv4 node, for the class of applications that work through NATs. This document specifies DNS64, and provides suggestions on how it should be deployed in conjunction with IPv6/IPv4 translators. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6147"/>
  <seriesInfo name="DOI" value="10.17487/RFC6147"/>
</reference>

<reference anchor="RFC6877">
  <front>
    <title>464XLAT: Combination of Stateful and Stateless Translation</title>
    <author fullname="M. Mawatari" initials="M." surname="Mawatari"/>
    <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
    <author fullname="C. Byrne" initials="C." surname="Byrne"/>
    <date month="April" year="2013"/>
    <abstract>
      <t>This document describes an architecture (464XLAT) for providing limited IPv4 connectivity across an IPv6-only network by combining existing and well-known stateful protocol translation (as described in RFC 6146) in the core and stateless protocol translation (as described in RFC 6145) at the edge. 464XLAT is a simple and scalable technique to quickly deploy limited IPv4 access service to IPv6-only edge networks without encapsulation.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6877"/>
  <seriesInfo name="DOI" value="10.17487/RFC6877"/>
</reference>

<reference anchor="RFC8880">
  <front>
    <title>Special Use Domain Name 'ipv4only.arpa'</title>
    <author fullname="S. Cheshire" initials="S." surname="Cheshire"/>
    <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
    <date month="August" year="2020"/>
    <abstract>
      <t>NAT64 (Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers) allows client devices using IPv6 to communicate with servers that have only IPv4 connectivity.</t>
      <t>The specification for how a client discovers its local network's NAT64 prefix (RFC 7050) defines the special name 'ipv4only.arpa' for this purpose. However, in its Domain Name Reservation Considerations section (Section 8.1), that specification (RFC 7050) indicates that the name actually has no particularly special properties that would require special handling.</t>
      <t>Consequently, despite the well-articulated special purpose of the name, 'ipv4only.arpa' was not recorded in the Special-Use Domain Names registry as a name with special properties.</t>
      <t>This document updates RFC 7050. It describes the special treatment required and formally declares the special properties of the name. It also adds similar declarations for the corresponding reverse mapping names.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8880"/>
  <seriesInfo name="DOI" value="10.17487/RFC8880"/>
</reference>

<reference anchor="RFC9463">
  <front>
    <title>DHCP and Router Advertisement Options for the Discovery of Network-designated Resolvers (DNR)</title>
    <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
    <author fullname="T. Reddy.K" initials="T." role="editor" surname="Reddy.K"/>
    <author fullname="D. Wing" initials="D." surname="Wing"/>
    <author fullname="N. Cook" initials="N." surname="Cook"/>
    <author fullname="T. Jensen" initials="T." surname="Jensen"/>
    <date month="November" year="2023"/>
    <abstract>
      <t>This document specifies new DHCP and IPv6 Router Advertisement options to discover encrypted DNS resolvers (e.g., DNS over HTTPS, DNS over TLS, and DNS over QUIC). Particularly, it allows a host to learn an Authentication Domain Name together with a list of IP addresses and a set of service parameters to reach such encrypted DNS resolvers.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9463"/>
  <seriesInfo name="DOI" value="10.17487/RFC9463"/>
</reference>

<reference anchor="RFC9499">
  <front>
    <title>DNS Terminology</title>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
    <date month="March" year="2024"/>
    <abstract>
      <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
      <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="219"/>
  <seriesInfo name="RFC" value="9499"/>
  <seriesInfo name="DOI" value="10.17487/RFC9499"/>
</reference>

<reference anchor="RFC8305">
  <front>
    <title>Happy Eyeballs Version 2: Better Connectivity Using Concurrency</title>
    <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
    <author fullname="T. Pauly" initials="T." surname="Pauly"/>
    <date month="December" year="2017"/>
    <abstract>
      <t>Many communication protocols operating over the modern Internet use hostnames. These often resolve to multiple IP addresses, each of which may have different performance and connectivity characteristics. Since specific addresses or address families (IPv4 or IPv6) may be blocked, broken, or sub-optimal on a network, clients that attempt multiple connections in parallel have a chance of establishing a connection more quickly. This document specifies requirements for algorithms that reduce this user-visible delay and provides an example algorithm, referred to as "Happy Eyeballs". This document obsoletes the original algorithm description in RFC 6555.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8305"/>
  <seriesInfo name="DOI" value="10.17487/RFC8305"/>
</reference>




    </references>


<?line 210?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors would like to than the following people for their valuable contributions: Lorenzo Colitti, Tom Costello, Charles Eckel, Nick Heatley, Gabor Lencse and Peter Schmitt.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAFHzWmgAA5Vb23YbN5Z9r6/A0A+2epF0FKttR9PTHUZ2EvXIskaSO5Pl
5QewCiQrKhaYQhVlxsv/Mt8yXzZ7HwB1oehpdx5isogCDs5ln30OoMlkktR5
XZhTNbqqzMJUqnFG2YW6/vHs5YuXx2phK/Uqd6ndmmrHH86vts8Vx+Yf1Ttn
MhkhD2dZVhnn1M2urFfG5W6U6Pm8Mttu8jDrKEl1bZa22p2qvFzYJMlsWuo1
xMgqvagnuakXk+1zu3GTjbzJtyYFXnJ14pr5Oncut2W92+CV89e3Pyr1SOnC
WSyVl5nZGPyvrEdjNTJZXtsq1wW/nM9+wD8QeHR+ffvjKCmb9dxUp0mGmU+T
1JbOlK5xp6quGpNA8GeJrow+VZAkubfV3bKyzeZUiWjJndnhWXaaqIlogP++
urx5fsIPV9evf/SfLme3/sPZxew22ZqywVpKDaZSyu/lF6yRl0v1E3/E07XO
izDmeyplaqslHusqXZ2qVV1v3OnTp5Be15VO70w1jYOe3i+fymtP9dw29VMu
mNerZg4NzZtKL4vcPvXKLuf1b78VD9Q9wite43glLuXnmKZ2/fRrZ0l0U69s
RS1hRqUWTVF4W1/m6Z36IUwjv0FwXeZ/6BrGPVWvS1Mtd+omzU2ZGqcuTU0b
yEjjNdPu5Xu44b2uMihvU+jSTEtTjx4ueWvX6536u6GhD6z4Jk8r6+yiHqxR
29/wgqj2+yWfcf8HJse06iIv7+xWH5j7J2uXhRlMvGiqanf8rD9paas1XtiK
iyBcXnzz52/CR6rzNEkYMMMxJy+fH3cfvw0fnx9/8+f248lJ9/F5nPq7496A
F/Hjyxfx48uXL+Pa3508f9Z+/O67OOAZl0gmk4nSc0cXrJPkbalKbyinNpXd
5rQJ4+NkIjCBYaUrRCnqicTGOEpzNFYr62qndJkpCxCpFAJ5Y/MSz9b5clVj
akBObdVdae8VRnjo2Xg8aiIeDdbgKFknDDuaJr+s8sJE9aoMT0u8qX30Tuaa
84Q5sxb81iZdwZ5uPVZrWxlV2XnjajyGe2dOrfTWKJfDU2FfOK7JpsntKncK
2NasgUZBG3DkZkPAydSywdcCazuRui9kt+4Y8uEZEJN65Gai3HqDGXW6Aoaq
hd5iBuDz2mamKgGGNf4RL3HqiZkup+PoQ0fqfmVKg7mV3sLx9LwwU2/FdZ5l
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
f3RZAFczAAA=

-->

</rfc>
