<?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.25 (Ruby 2.6.10) -->


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

<!ENTITY RFC6724 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6724.xml">
<!ENTITY RFC8028 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8028.xml">
<!ENTITY RFC4861 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4861.xml">
<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC4191 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4191.xml">
<!ENTITY RFC4193 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4193.xml">
<!ENTITY RFC7526 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7526.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC1918 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1918.xml">
<!ENTITY RFC6555 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6555.xml">
<!ENTITY RFC8305 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8305.xml">
<!ENTITY RFC3587 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3587.xml">
<!ENTITY RFC8925 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8925.xml">
<!ENTITY RFC3484 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3484.xml">
]>


<rfc ipr="trust200902" docName="draft-ietf-6man-rfc6724-update-18" category="std" consensus="true" submissionType="IETF" updates="6724">
  <front>
    <title abbrev="Prioritizing known-local ULAs in RFC 6724">Prioritizing known-local IPv6 ULAs through address selection policy</title>

    <author initials="N." surname="Buraglio" fullname="Nick Buraglio">
      <organization>Energy Sciences Network</organization>
      <address>
        <email>buraglio@forwardingplane.net</email>
      </address>
    </author>
    <author initials="T." surname="Chown" fullname="Tim Chown">
      <organization>Jisc</organization>
      <address>
        <email>Tim.Chown@jisc.ac.uk</email>
      </address>
    </author>
    <author initials="J." surname="Duncan" fullname="Jeremy Duncan">
      <organization>Tachyon Dynamics</organization>
      <address>
        <email>jduncan@tachyondynamics.com</email>
      </address>
    </author>

    <date year="2025" month="March" day="16"/>

    <area>Int</area>
    <workgroup>6MAN</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 55?>

<t>This document draws on several years of operational experience to update RFC 6724, defining the concept of "known-local" ULA prefixes that enable ULA-to-ULA communications within fd00::/8 to become preferred over both IPv4-IPv4 and GUA-to-GUA for local use. The document defines the means by which nodes can both identify and insert such prefixes into their address selection policy table. It also clarifies the mandatory, unconditional requirement for support for Rule 5.5 and demotes the preference for 6to4 addresses. These changes to default behavior improve supportability of common use cases, including automatic / unmanaged scenarios, and makes preference for IPv6 over IPv4 consistent in local site networks for both ULA and GUA prefixes. It is recognized that some less common deployment scenarios may require explicit configuration or custom changes to achieve desired operational parameters.</t>



    </abstract>



  </front>

  <middle>


<?line 59?>

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

<t>Since its publication in 2012, <xref target="RFC6724"/> has become an important mechanism by which nodes can perform address selection, deriving the most appropriate source and destination address pair to use from a
candidate set by following the procedures defined in the RFC. Part of the process involves the use of a policy table, where the precedence and labels for address prefixes are listed, and for which a default policy table is defined.</t>

<t>It was always expected that the default policy table may need to be changed based on operational experience; section 2.1 says "It is important that implementations provide a way to change the default policies as more experience is gained" and points to the examples in Section 10, which include Section 10.6 where a ULA example is presented.</t>

<t>This document is written on the basis of such operational experience, in particular for scenarios where ULAs are used for their intended purpose as stated in <xref target="RFC4193"/>, i.e., they are designed to be routed within a local site and by default not advertised, used or received from externally to that site. The document defines how preference for ULAs may be elevated for appropriate, common scenarios.</t>

<t>To support the preference to use ULA address pairs over both IPv4 and GUA address pairs for local intra-site scenarios, the concept of a "known-local" ULA address is introduced. This document describes the means for nodes to determine ULA prefixes that are known to be local to the site they are operating in and to insert those prefixes into their policy table with a label that differs to general ULA prefixes. This capability allows nodes to prefer ULA-ULA communication locally, but still use GUA-GUA address pairs for external communication, and importantly avoid selecting a ULA source to talk to a non-local ULA destination.</t>

<t>This document also reinforces the text in RFC 6724 to require support for Rule 5.5.</t>

<t>RFC 4193 defines ULAs within fc00::/7, where the L bit, as detailed in Section 3.1, is set to 1 for locally assigned (generated) prefixes, with L=0 as yet undefined. The use of known-locals as described in this document therefore applies to the currently used ULA prefixes under fd00::/8, where the prefixes conform to the definition in Section 3.1 of <xref target="RFC4193"/>.</t>

<t>The overall goal of this update is to improve behavior for common scenarios, and to assist in the phasing out of use of IPv4, while noting that some specific scenarios may still require explicit configuration.</t>

<t>An IPv6 deployment, whether enterprise, residential or other, may use combinations of IPv6 GUAs, IPv6 ULAs, IPv4 globals, IPv4 RFC 1918 addressing, and may or may not use some form of NAT. However, this document makes no comment or recommendation on how ULAs are used, or on the use of NAT in an IPv6 network.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

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

<t>GUA: Global Unicast Addressing as defined in <xref target="RFC3587"></xref></t>

<t>ULA: Unique Local Addressing as defined in <xref target="RFC4193"></xref></t>

<t>Known-local ULA: A ULA prefix that an individual organization/site has determined to be local to a given node/network</t>

</section>
<section anchor="operational-issues-regarding-preference-for-ipv4-addresses-over-ulas"><name>Operational Issues Regarding Preference for IPv4 addresses over ULAs</name>

<t>With multi-addressing being the norm for IPv6, more so where nodes are dual-stack, the ability for a node to pick an appropriate address pair for communication is very important.</t>

<t>Where getaddrinfo() or a comparable API is used, the sorting behavior should take into account both
the source addresses of the requesting node as well as the destination addresses returned, and sort the candidate address pairs following the procedures defined in RFC 6724.</t>

<t>The current default policy table leads to preference for use of IPv6 GUAs over IPv4 globals, which is widely considered preferential behavior to support greater use of IPv6 in dual-stack environments. This helps allow sites to phase out IPv4 as its evidenced use becomes ever lower.</t>

<t>However, there are two issues with preference, or rather non-preference, for ULAs as originally defined in RFC 6724.</t>

<t>One is that the same default policy table also puts IPv6 ULAs below all IPv4 addresses, including <xref target="RFC1918"/> addresses, such that IPv4-IPv4 address pairs are favored over ULA-ULA address pairs. For many site operators this behavior will be counter-intuitive, given the IPv6 GUA preference, and may create difficulties with respect to planning, operational, and security implications for environments where ULA addressing is used in IPv4/IPv6 dual-stack network scenarios. The expected default prioritization of known-local IPv6 traffic over IPv4 by default, as happens with IPv6 GUA addressing, does not happen for ULAs.</t>

<t>As a result, the use of ULAs is not a viable option for dual-stack networking transition planning, large scale network modeling, network lab environments or other modes of large scale networking that run both IPv4 and IPv6 concurrently with the expectation that IPv6 will be preferred by default. Local preference of ULAs over IPv4 is thus important to assist operators in phasing out IPv4 from dual-stack environments and is an important enabler for sites seeking to move from dual-stack to IPv6-only networking.</t>

<t>The other issue is that where nodes in a dual-stack site are addressed from both ULA and GUA prefixes, RFC 6724 will see GUA-GUA address pairs chosen over ULA-ULA. One goal of ULA addressing was to allow local communications to be independent of the availability of external connectivity and addressing, such that persistent ULAs can be used even when the global prefix made available to a site is withdrawn or changes.</t>

<t>This document therefore introduces two changes to RFC 6724 to support a node implementing elevated or differential preference for  known-local ULAs, i.e., ULAs within a common local network, over both IPv4 and IPv6 GUAs.</t>

<t>The first change is an update to the default policy table to elevate the preference for ULAs prefixes such that ULAs, like GUAs, carry a higher precedence than all IPv4 addresses, making IPv6 precedence over IPv4 consistent for both ULAs and GUAs.</t>

<t>The second change is the introduction of the concept of known-local ULAs. RFC 6724 includes a method by which nodes <bcp14>MAY</bcp14> provide more fine-grained support for further elevating the preference for specific ULA prefixes, while leaving other general ULA prefixes at the precedence described in the previous paragraph. This document elevates the requirement for specific ULA prefixes to be inserted into the policy table to be a <bcp14>MUST</bcp14>, but only for observed prefixes that are known to be local, i.e., known-local ULAs. Nodes implementing this behavior will see ULA prefixes known to be local to the node's site having precedence over IPv4 addresses and also over IPv6 GUA addresses, such that they can use ULA addressing independently of global prefixes within their site and continue to use GUA-GUA address pairs to talk to destinations external to their site.</t>

<t>These changes aim to improve the default handling of address selection for common cases, and unmanaged / automatic scenarios rather than those where DHCPv6 is deployed. The changes are discussed in more detail in the following sections, with a further section providing a summary of the proposed updates.</t>

</section>
<section anchor="preference-of-6to4-addresses"><name>Preference of 6to4 addresses</name>

<t>The anycast prefix for 6to4 relays was formally deprecated by <xref target="RFC7526"/> in 2015, and since that time the use of 6to4 addressing has further declined, with very little evidence of its use on the public internet. Note that RFC 7526 does not deprecate the 6to4 IPv6 prefix 2002::/16, it only deprecates the 6to4 Relay IPv4 prefix.</t>

<t>This document therefore demotes the precedence of the 6to4 prefix in the policy table to the same precedence as carried by the Teredo prefix. Leaving this entry in the default table will cause no problems and will help if any deployments still exist, and ensure 6to4 prefixes are differentiated from general GUAs.</t>

<t>The discussion regarding the adding of 6to4 site prefixes in section 10.7 of RFC6724 remains valid.</t>

</section>
<section anchor="adjustments-to-rfc-6724"><name>Adjustments to RFC 6724</name>

<t>This document makes three specific changes to RFC 6724: first to update the default policy table, second to change Rule 5.5 on preferring addresses in a prefix advertised by the next-hop to a <bcp14>MUST</bcp14>, and third to require that nodes <bcp14>MUST</bcp14> insert observed known-local ULA prefixes into their policy table.</t>

<section anchor="policy-table-update"><name>Policy Table Update</name>

<t>This update alters the default policy table listed in Rule 2.1 of RFC 6724.</t>

<t>The table below reflects the current RFC 6724 state on the left, and the updated state defined by this RFC on the right:</t>

<figure><artwork><![CDATA[
                    RFC 6724                              Updated                  
Prefix       Precedence Label        Prefix        Precedence Label              
::1/128              50     0        ::1/128               50     0
                                     $known_local/48       45    14 (**)
::/0                 40     1        ::/0                  40     1
::ffff:0:0/96        35     4        ::ffff:0:0/96         20     4 (*)
2002::/16            30     2        2002::/16              5     2 (*)
2001::/32             5     5        2001::/32              5     5
fc00::/7              3    13        fc00::/7              30    13 (*)
::/96                 1     3        ::/96                  1     3
fec0::/10             1    11        fec0::/10              1    11
3ffe::/16             1    12        3ffe::/16              1    12

(*) value(s) changed in update
(**) $known_local = the ULA Known-Local /48 IPv6 prefix(es) (if any) 
with precedence and labels per the rules in Sec 5.3

]]></artwork></figure>

<t>The update moves 2002::/16 to de-preference its status in line with <xref target="RFC7526"/> and moves the precedence of fc00::/7 above legacy IPv4, with ::ffff:0:0/96 now set to precedence 20.</t>

</section>
<section anchor="rule-55"><name>Rule 5.5</name>

<t>The heuristic for address selection defined in Rule 5.5 of Section 5 of RFC 6724 to prefer addresses in a prefix advertised by a next-hop router has proven to be very useful.</t>

<t>The text in RFC 6724 states that the Rules <bcp14>MUST</bcp14> be followed in order, but also includes a discussion note under Rule 5.5 that says that an IPv6 implementation is not required to remember which next-hops advertised which prefixes and thus that Rule 5.5 is only
applicable to implementations that track this information.</t>

<t>This document removes that exception and elevates the requirement to prefer addresses in a prefix advertised by a next-hop router to a <bcp14>MUST</bcp14> for all nodes.</t>

<t>This change means that an IPv6 implementation will need to remember which next-hops advertised which prefixes
<xref target="RFC8028"/>, despite the conceptual models of IPv6 hosts in Section 5 of <xref target="RFC4861"/> and Section 3 of <xref target="RFC4191"/>
having no such requirement.</t>

</section>
<section anchor="automatic-insertion-of-known-local-ula-prefixes-into-the-policy-table"><name>Automatic insertion of known-local ULA prefixes into the policy table</name>

<t>Section 2.1 of RFC 6724 states that "an implementation <bcp14>MAY</bcp14> automatically add additional site-specific rows to the default table based on its configured addresses, such as for Unique Local Addresses (ULAs)", but it provides no detail on how such behavior might be implemented.</t>

<t>If a node can determine which ULA prefix(es) are known to be local, it can provide differential treatment for those over general ULAs, and insert these into the policy table at a higher precedence than GUAs while keeping all general ULA prefixes to a lower precedence.</t>

<t>This document thus elevates the <bcp14>MAY</bcp14> requirement above for insertion to a <bcp14>MUST</bcp14> for the specific case of known-local ULAs.</t>

<t>These known-local ULA prefixes are inferred from ULA addresses assigned to interfaces or learned from Prefix Information Options (PIOs) in Router Advertisements (RAs) <xref target="RFC4861"/> received on any interface regardless of how the PIO flags are set. Further, they are learned from Route Information Options (RIOs) in RAs received on any interface by Type C hosts that process RIOs, as defined in <xref target="RFC4191"/>.</t>

<t>Section 3.1 of RFC 4193 only defines ULA prefixes where the L-bit is set to 1, i.e., prefixes under fd00::/8 where the prefix is locally assigned or generated. The use of ULAs where L=0, i.e., prefixes under fc00::/8, is currently undefined.</t>

<t>The following rules define how the learnt known-local ULA prefixes under fd00::/8 are inserted into the address selection policy table for a node, through a conceptual list of known-local prefixes.</t>

<t><list style="numbers" type="1">
  <t>Any RIO or PIO that is delivered in an RA in which the "SNAC Router" RA header flag bit <xref target="SNACBIT"/> is set <bcp14>MUST</bcp14> be ignored when considering the following rules.</t>
  <t>RIOs from within fd00::/8 are considered the preferred information source for determining known-local ULAs and should override other conflicting information or assumptions from other sources, including PIOs.</t>
  <t>RIOs within fd00::/8 that are of length /40 or longer <bcp14>MUST</bcp14> be added to the known-local ULA list. RIOs for shorter prefixes <bcp14>MUST NOT</bcp14> be used to insert known-local ULA entries in the address selection policy table</t>
  <t>PIOs within fd00::/8 of length /64 that are not already in the nodes known-local ULA list <bcp14>MUST</bcp14> be added to the list with an assumed prefix length of /48, regardless of how the PIO flags are set.</t>
  <t>ULA interface addresses from within fd00::/8, particularly ones not created by SLAAC, and not already covered by the known-local ULA list <bcp14>MUST</bcp14> be added to the list with an assumed prefix length of /48. However, as with rule 1, if the ULA interface address was generated on the basis of a PIO that has only been seen in RAs in which the SNAC router flag bit is set, this ULA prefix <bcp14>MUST NOT</bcp14> be used as described in this rule (rule 5).</t>
  <t>Regardless of their length or how the PIO flags are set, other PIOs from within fd00::/8 that are not already covered by the known-local ULA list <bcp14>MAY</bcp14> be added to the list, but only with the advertised prefix length.</t>
  <t>When inserting known-local ULA entries into the policy table, they <bcp14>MUST</bcp14> have a label of 14 (rather than the default ULA label of 13) and a precedence of 45.</t>
  <t>Entries <bcp14>MUST</bcp14> be removed from the known-local ULA list and the Policy Table when the announced RIOs or PIOs are deprecated, or an interface address is removed, and there is no covering RIO or PIO.</t>
</list></t>

<t>When support is added for the insertion of known-local ULA prefixes it <bcp14>MUST</bcp14> default to on, but a mechanism <bcp14>SHOULD</bcp14> be supported to administratively toggle the behavior off and on.</t>

<t>Tools that display a node's default policy table <bcp14>MUST</bcp14> show all currently inserted known-local ULA prefixes.</t>

<t>The identification and insertion of known-local prefixes under fc00::/8 is currently not defined.</t>

<t>Note that a practical limit exists on the number of RIOs and PIOs that can be placed into a single RA. Therefore, there is a practical limit to the number of known-local ULAs that can be expressed on a single network and the number of ULA prefixes that can automatically be preferred over IPv4 and GUA prefixes within the policy table. This limit is unlikely to impact most networks, especially residential and other small unmanaged networks that automatically generate ULA prefixes.</t>

<t>Section 4 of RFC 4191 says "Routers <bcp14>SHOULD NOT</bcp14> send more than 17 Route Information Options in Router Advertisements per link. This arbitrary bound is meant to reinforce that relatively few and carefully selected routes should be advertised to hosts." The exact limit will depend on other Options that are used. So while this is not the practical limit discussed above, operators <bcp14>MUST</bcp14> take extra care not to cause the RA size to exceed the MTU when filling the RA with RA Options when exceeding this limit.</t>

<t>Note that in the case of Rule 2 above it would be expected that ULA prefixes being included in the known-local prefix
list be compliant with Section 3 of RFC4193 (i.e., /48 in size) but the above rule is pragmatic in that it allows
the use of ULA prefixes of up to /40 in length.
Most networks use ("are expected to use") /48 prefixes as per
RFC4193. However, it is possible that in some circumstances a
larger managed enterprise may wish to use a shorter prefix (e.g., to simplify management, filtering
rules, etc, and to overcome the issue with the number of RIOs an RA
can carry as described in the above paragraph). However, such
non-compliant use of ULAs may be problematic in other ways, e.g., carrying an increased risk of collision with other
ULA prefixes, where you might be using someone else's compliant prefix because shorter prefixes have a lower chance to be globally unique.</t>

</section>
</section>
<section anchor="configuration-of-the-default-policy-table"><name>Configuration of the default policy table</name>

<t>As stated in Section 2.1 of RFC 6724 "IPv6 implementations <bcp14>SHOULD</bcp14> support configurable address selection via a mechanism at least as powerful as the policy tables defined here".</t>

<t>Based on operational experience to date, it is important that node policy tables can be changed once deployed to support future emerging use cases. This update thus re-states the importance of such configurability.</t>

</section>
<section anchor="intended-behaviors"><name>Intended behaviors</name>

<t>In this section we review the intended default behaviors after this update is applied.</t>

<section anchor="gua-gua-preferred-over-ipv4-ipv4"><name>GUA-GUA preferred over IPv4-IPv4</name>

<t>This is the current behavior, and remains unaltered. The rationale is to promote use of IPv6 GUAs in dual-stack environments.</t>

</section>
<section anchor="gua-gua-preferred-over-ula-ula"><name>GUA-GUA preferred over ULA-ULA</name>

<t>This is the current behavior, and remains unaltered for the general case.</t>

<t>However, where a ULA prefix is determined to be local, and added as a known-local ULA prefix to a node's address selection policy table, communications to addresses in other known-local ULA prefixes will prefer ULA-ULA address pairs to GUA-GUA (matching label, higher precedence).</t>

</section>
<section anchor="known-local-ula-known-local-ula-preferred-over-gua-gua"><name>Known-local ULA - Known-local ULA preferred over GUA-GUA</name>

<t>As described in the previous case, this document elevates preference for use of ULAs over GUAs in cases where the ULA prefix(es) in use can be determined to be local to a site or organization.</t>

<t>By only adapting this behavior for known-local ULAs, a node will not select a ULA source to talk to a non-local ULA destination and will instead correctly use GUA-GUA.</t>

<t>Nodes not yet implementing this RFC will continue to use GUA-GUA over ULA-ULA for all cases.</t>

<t>As an example, consider a site that uses prefixes ULA1::/48, ULA2::/48 and GUA1::/48.</t>

<t>Host A has address ULA1::1 and GUA1:1::1
Host B has address ULA2::1 and GUA1:2::1</t>

<t>Both ULA prefixes have been determined to be known-local through RIOs.
Perhaps ULA2 is reachable within the site, but its prefix is not in direct use at host A.</t>

<t>If host A sends to host B the candidate pairs are ULA1::1 - ULA2::1 and GUA1::1::1 - GUA1:2::1.</t>

<t>In this case ULA1::1 - ULA2::1 wins because of matching labels (both 14) and higher precedence than GUA (45 vs 40).</t>

<t>If host A were to send to a host C with addresses ULA3::1 (where ULA3::/48 has not been learned to be a known-local prefix) and GUA2:1::1, host A would use the GUA address pair for the communication as the GUAs have matching labels (both 1) where the known-local ULA and general ULA do not (14 and 13 respectively).</t>

</section>
<section anchor="known-local-ula-ula-preferred-over-ipv4-ipv4"><name>Known-local ULA-ULA preferred over IPv4-IPv4</name>

<t>This update changes previous behavior for this case. RFC 6724 as originally defined would lead to IPv4 being preferred over ULAs, which is contrary to the spirit of the IPv6 GUA preference over IPv4, and to the goal of removing evidenced use of IPv4 in a dual-stack site before transitioning to IPv6-only.</t>

<t>This document elevates the precedence of known-local ULAs above IPv4, so known-local ULA-ULA address pairs will be chosen over IPv4-IPv4 pairs (matching label, higher precedence).</t>

</section>
<section anchor="ipv4-ipv4-preferred-over-ula-gua"><name>IPv4-IPv4 preferred over ULA-GUA</name>

<t>An IPv6 ULA address will only be preferred over an IPv4 address if both IPv6 ULA source and destination addresses are available. With Rule 5 of Section 6 of RFC 6724 and the ULA-specific label added in <xref target="RFC6724"/> (which was not present in <xref target="RFC3484"/>) an IPv4 source and destination will be preferred over an IPv6 ULA source and an IPv6 GUA destination address, even though generally known-local IPv6 ULA addresses are preferred over IPv4 in the policy table as proposed in this update. The IPv4 matching label trumps ULA-GUA.</t>

</section>
</section>
<section anchor="discussion-of-ula-source-with-gua-or-remote-ula-destination"><name>Discussion of ULA source with GUA or remote ULA destination</name>

<t>In this section we present a discussion on the scenarios where a ULA source may be communicating with a GUA or ULA destination.</t>

<t>A potential problem exists when a ULA source attempts to communicate with GUA or remote ULA destinations. In these scenarios, the ULA source as stated earlier is by default intended for communication only with the local network, meaning an individual site, several sites that are part of the same organization, or multiple sites across cooperating organizations, as detailed in <xref target="RFC4193"/>. As a result, most GUA and ULA destinations are not attached to the same local network as the ULA source and are, therefore, not reachable from the ULA source.</t>

<t>Scenario 1: ULA source and GUA destination</t>

<t>When only a ULA source is available for communication with GUA destinations, this generally implies no connectivity to the IPv6 Internet is available. Otherwise, a GUA source would have been made available and selected for use with GUA destinations. As a result, the ULA source will typically fail when it attempts to communicate with most GUA destinations. However, corner cases exist where the ULA source will not fail, such as when GUA destinations are attached to the same local network as the ULA source.</t>

<t>Scenario 2: ULA source and remote ULA destination</t>

<t>Receiving a DNS response for a ULA destination that is not attached to the local network, in other words, a remote ULA destination, is considered a misconfiguration in most cases, or at least this contradicts the operational guidelines provided in Section 4.4 of RFC 4193. Nevertheless, this can occur, and the ULA source will typically fail when it attempts to communicate with ULA destinations that are not attached to the same local network as the ULA source. This case provides a rationale for implementing support for known-local ULA prefix insertion in the policy table, such that differential behavior can be applied for known-local versus general ULA prefixes.</t>

<t>The remainder of this section discusses several complementary mechanisms involved with these scenarios.</t>

<section anchor="the-ula-label-and-its-precedence"><name>The ULA Label and its Precedence</name>

<t>RFC 6724 added (in obsoleting RFC 3484) a separate label for ULAs (the whole range, under fc00::/7), whose default precedence is raised by this update. This separate label interacts with Rule 5 of Section 6 of RFC 6724, which says:</t>

<figure><artwork><![CDATA[
Rule 5: Prefer matching label.

If Label(Source(DA)) = Label(DA) and Label(Source(DB)) <> Label(DB), 
then prefer DA.

Similarly, if Label(Source(DA)) <> Label(DA) and Label(Source(DB)) = 
Label(DB), then prefer DB.
]]></artwork></figure>

<t>In the first scenario, the ULA source label, whether known-local or not, will not match the GUA destination label. Therefore, an IPv4 destination, if available, will be preferred over a GUA destination with a ULA source, even though the GUA destination has higher precedence than the IPv4 destination in the policy table. This means the IPv4 destination will be moved up in the list of destinations over the GUA destination with the ULA source.</t>

<t>If the ULA (fc00::/7) label is removed from the policy table, a GUA destination with a ULA source will be preferred over an IPv4 destination, as GUA and ULA will be part of the same label (for ::/0).</t>

<t>In the second scenario, if the ULA source has been recognized as being within a known-local prefix that has been inserted into the address selection policy table, then the known-local ULA source and general ULA destination will have different labels, and therefore IPv4 communication will be preferred.</t>

<t>If the ULA source has not been recognized as known-local, e.g., if the insertion of known-local prefixes into the policy table has been administratively disabled, its general ULA label will match the general ULA destination label and therefore, whether part of the local network or not, the ULA destination will be preferred over an IPv4 destination.</t>

</section>
<section anchor="happy-eyeballs"><name>Happy Eyeballs</name>

<t>Regardless of the preference resulting from the above discussion, Happy Eyeballs version 1 <xref target="RFC6555"/> or version 2 <xref target="RFC8305"/>, if implemented, will try both the GUA or ULA destination with the ULA source and the IPv4 destination and source pairings.
The ULA source will typically fail to communicate with most GUA or remote ULA destinations, and IPv4 will be preferred if IPv4 connectivity is available unless the GUA or ULA destinations are attached to the same local network as the ULA source.</t>

</section>
<section anchor="try-the-next-address"><name>Try the Next Address</name>

<t>As stated in Section 2 of RFC 6724:</t>

<t>"Well-behaved applications <bcp14>SHOULD NOT</bcp14> simply use the first address returned from an API such as getaddrinfo() and then give up if it fails. For many applications, it is appropriate to iterate through the list of addresses returned from getaddrinfo() until a working address is found. For other applications, it might be appropriate to try multiple addresses in parallel (e.g., with some small delay in between) and use the first one to succeed."</t>

<t>Therefore, when an IPv4 destination is preferred over GUA or ULA destinations, IPv4 will likely succeed if IPv4 connectivity is available, and the GUA or ULA destination may only be tried if Happy Eyeballs is implemented.</t>

<t>On the other hand, if the GUA or ULA destination with the ULA source is preferred, the ULA source will typically fail to communicate with GUA or ULA destinations that are not connected to the same local network. However, if the operational guidelines in Section 4.3 of RFC 4193  are followed, recognizing this failure can be accelerated, and transport layer timeouts (e.g., TCP) can be avoided. The guidelines will cause a Destination Unreachable ICMPv6 Error to be received by the source device, signaling the next address in the list to be tried, as discussed above.</t>

</section>
</section>
<section anchor="following-ula-operational-guidelines-in-rfc-4193"><name>Following ULA operational guidelines in RFC 4193</name>

<t>This section re-emphasizes two important operational requirements stated in <xref target="RFC4193"/> that should be followed by operators.</t>

<section anchor="filtering-ula-source-addresses-at-site-borders"><name>Filtering ULA-source addresses at site borders</name>

<t>Section 4.3 states "Site border routers and firewalls should be configured to not forward
any packets with Local IPv6 source or destination addresses outside the site, unless they have been explicitly configured with routing information about specific /48 or longer Local IPv6 prefixes".</t>

<t>And further that "Site border routers should respond with the appropriate ICMPv6 Destination Unreachable message to inform the source that the packet was not forwarded".</t>

<t>As stated in the above discussion, such ICMPv6 messages can assist in fast failover for TCP connections.</t>

</section>
<section anchor="avoid-using-ula-addresses-in-the-global-dns"><name>Avoid using ULA addresses in the global DNS</name>

<t>Section 4.3 of RFC 4193 states that "AAAA and PTR records for locally assigned local IPv6 addresses are not recommended being installed in the global DNS."</t>

<t>This is particularly important given the general method presented in this document elevates the priority for ULAs above IPv4. However, where support for insertion of known-local prefixes is implemented, such "rogue" ULAs in the global DNS are no longer a concern for address selection as they would have the lowest precedence.</t>

</section>
</section>
<section anchor="the-practicalities-of-implementing-address-selection-support"><name>The practicalities of implementing address selection support</name>

<t>As with most adjustments to standards, and using the introduction of RFC 6724 as a measuring stick, the updates defined in this document will likely take several years to become common enough for consistent behavior within most operating systems. At the time of writing, it has been over 10 years since RFC 6724 has been published but we continue to see existing commercial and open source operating systems exhibiting RFC 3484 (or other) behavior.</t>

<t>While it should be noted that RFC 6724 defines a solution to adjust the address preference selection table that is functional theoretically, operationally the solution is operating system dependent and in practice policy table changes cannot be signaled by any currently deployed network mechanism. While RFC 7078 defines such a DHCPv6 option, there are few if any implementations. This lack of an intra-protocol or network-based ability to adjust address selection preference, along with the inability to adjust a notable number of operating systems either programmatically or manually, renders operational scalability of such a mechanism challenging.</t>

<t>It is especially important to note this behavior in the long lifecycle equipment that exists in industrial control and operational technology environments due to their very long mean time to replacement/lifecycle.</t>

</section>
<section anchor="limitations-of-rfc-6724"><name>Limitations of RFC 6724</name>

<t>The procedures defined in RFC 6724 do not give optimal results for all scenarios. As stated in the introduction, the aim of this update is to improve the behavior for the most common scenarios.</t>

<t>It is widely recognized in the IETF 6man WG that the whole 3484/6724/getaddrinfo() model is fundamentally inadequate for optimal address selection.  A model that considers address pairs directly, rather than sorting on destination addresses with the best source for that address, would be preferable, but beyond the scope of this document.</t>

<t>To simplify address selection, operators may instead look to deploy IPv6-only and/or may choose to only use GUA addresses and no ULA addresses. Other approaches to reduce the use of IPv4, e.g., through use of DHCPv4 Option 108 as defined in <xref target="RFC8925"/> as part of an "IPv6 Mostly" deployment model, also helps simplify address selection for nodes.</t>

</section>
<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>The authors would like to acknowledge the valuable input and contributions of the 6man WG including (in alphabetic order) Erik Auerswald, Dale Carder, Brian Carpenter, Tom Coffeen, Lorenzo Colitti, Chris Cummings, David Farmer (in particular for the ULA to GUA/ULA discussion text, and discussion of using the specific fd00::/8 prefix for known-locals), Bob Hinden, Scott Hogg, Ed Horley, Ted Lemon, Jen Linkova, Michael Richardson, Kyle Rose, Nathan Sherrard, Ole Troan, Eduard Vasilenko, Eric Vyncke, Paul Wefel, Timothy Winters, and XiPeng Xiao.</t>

</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t>This section should be removed before publication as an RFC.</t>

<t>There are two known implementations of the ULA known-local preference mechanism.
The first implementation was created by Lorenzo Colitti at Google as a prototype solution, with public code available for reference on their android platform available to the public <xref target="ANDROID"/>. It was last updated in April of 2024, and does not include the capability to listen for RIO/PIO changes, but does support adding the ULA prefix learned on the interface to the known-local preference.</t>

<t>The second implementation was written by Jeremy Duncan at Tachyon Dynamics and made available as open source, reference prototype code available <xref target="RAIO-ULA-PY"/>. This implementation includes a full implementation written in python, including the capability to listen to RIO and PIO on the wire and adjust ULA known-local prefixes as needed. It was last updated in May of 2024.</t>

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

<t>There are no direct security considerations in this document.</t>

<t>The mixed preference for IPv6 over IPv4 from the default policy table in RFC 6724 represents a potential security issue, given an operator may expect ULAs to be used when in practice RFC 1918 addresses are used instead.</t>

<t>The requirements of RFC 4193, stated earlier in this document, should be followed for optimal behavior.</t>

<t>Operators should be mindful of cases where communicating nodes have differing behaviors for address selection, e.g., RFC3484 behavior, RFC6724, the updated RFC6724 behavior defined here, some other non-IETF-standardized behavior, or even no mechanism. There may thus be inconsistent behavior for communications initiated in each direction between two nodes. Ultimately all nodes should be made compliant to the updated specification described in this document.</t>

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

<t>None.</t>

</section>
<section anchor="summary-of-changes-and-additional-text-since-rfc-6724"><name>Summary of changes and additional text since RFC 6724</name>
<t>This section should be removed before publication as an RFC.</t>

<t><list style="symbols">
  <t>Introduced concept of known-locals and rules for their insertion/removal in the table.</t>
  <t>Changed default policy table to move fc00::/7 to precedence 30, above legacy IPv4.</t>
  <t>Changed default policy table to move the 6to4 address block 2002::/16 to the same precedence as the Teredo prefix.</t>
  <t>Changed ::ffff:0:0/96 to precedence 20.</t>
  <t>Changed Rule 5.5 to a <bcp14>MUST</bcp14> support.</t>
  <t>Defined the concept of known-local ULA prefixes for currently defined RFC 4193 ULAs with L=1 under fd00::/8, how they may be learnt, and the <bcp14>MUST</bcp14> requirement to insert them into the policy table.</t>
  <t>Added text clarifying intended behaviors.</t>
  <t>Added text discussing ULA to GUA/ULA case.</t>
  <t>Added text for the security section.</t>
  <t>Added text to account for SNAC bit.</t>
</list></t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

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

&RFC6724;
&RFC8028;
&RFC4861;
&RFC2119;
&RFC4191;
&RFC4193;
&RFC7526;
<reference anchor="SNACBIT" target="https://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml#icmpv6-parameters-11">
  <front>
    <title>IPv6 ND Router Advertisement Flags</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ANDROID" target="https://r.android.com/3046000">
  <front>
    <title>Optionally prefer known-local ULAs in Android</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="RAIO-ULA-PY" target="https://github.com/jeremy-duncan/raio_ula">
  <front>
    <title>Python known-local ULA implementation</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
&RFC8174;


    </references>

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

&RFC1918;
&RFC6555;
&RFC8305;
&RFC3587;
&RFC8925;
&RFC3484;


    </references>

</references>



  </back>

<!-- ##markdown-source:
H4sIAO8m12cAA7V963LbSJbmfz5FjnoiRqogqbvs0nb1tGxVdbnGlr2WPLUd
ExMTIJAk0QYBDi6SWR01z7LPsk+255oXAFR5umP0w5ZIAJl58uQ537liNptN
2rwt7LX5UOdVnbf5L3m5Mp/L6qmcFVWaFObNh8cr8+ntTWPadV11q7VJsqy2
TWMaW9i0zavSbKsiT3eTZLGo7eMzz6LH5KX5+MNrc/Xi7GKSVWmZbGD4rE6W
7Sy37XJ2tUnKWb1M8YJZt82S1s5OX0zSpL02TZtNmm6xyZsGxm13W7j1zfcP
P0zybX1t2rpr2rOTk29PziZJbRP4rmwnT6trc/Xu5m7y+Yk+sHVp29ktDjjh
xzfXPJtJ0rXrqr6eGPqZyf8GpgyX3M3Nq65OVkVeuS948nd5+nn4XVXDwN+X
tl7tzH2a2zK1jbmz7VNVf3YX2U2SF9dmITf/cVnVT0mdAeG2RVLaOUx1fDYP
c/N6DZTtTeUh3/Q+p2n8lDdpf0y4dE6X/vEv8O08Sefd5/Gxfpqb265Mk/5g
P9nabnb972jAhyRd74AzbndwaZ42/cH/ktFNf2z5ukwum6fVZjIpq3qTtPmj
xZ0AXsHNkV9fnpy9lF8vXl6dyq9np6ff6qen3576X8/l1xeXZ1f46/3dzetX
bx54h9ukXllgqoN1226b6+Pjp6eneZ6UyRyWcJwAi63KjS3b5jhPN9vHq9k2
qWHdwEAjn8y/rNtN8bvB57PT0wMejc8ZHae7W/Ox6uBrc5M92rrNG4sDmR+K
ZIWkurm7/fj+ze2eadbzpMzqKs+QWsfnJxdXJycn0SDvt3gsk6LYmW1tlzDO
2Cm84acghW7evJ/Bx7MPf94z5ipv192CBvwL7fqMN/C4TvLqP7oiicb/sINz
VPYHNflmW9BCE5IaZpKXy95Ww+7p/l5dXl7qrp+f6K/nly9f6KffnrlPL14C
h0xms5lJFk1bJ2k7mTys88aAhOmItiBhnhoDwzYWSA4z2tmkhg+WptrC30ww
Y7/AH3RWTVsZFg9OXE1NZpd5iVKtXVuTVnDZtsVHHARLPaC1It3zLxalZtIa
WyaLwuIXs7ZCSsPNm01X5ikN3JgnoC9syTI7Obm+Pn6Jgy8sXGNlA2ubmQrm
bRZVu0YmupjhPwY4wfzpEz0V/jNATsP07ho7Nw8wS08AnDtNyJqNTWDQxc48
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
tf4lj3gHdbxaUMOL2WxmFmCgTP4/9w79j9qJAAA=

-->

</rfc>
