<?xml version="1.0" encoding="utf-8"?>
<?xml-model href="rfc7991bis.rnc"?>  <!-- Required for schema validation and schema-aware editing -->
<!-- <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> -->
<!-- This third-party XSLT can be enabled for direct transformations in XML processors, including most browsers -->


<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<!-- If further character entities are required then they should be added to the DOCTYPE above.
     Use of an external entity file is not recommended. -->

<rfc
  xmlns:xi="http://www.w3.org/2001/XInclude"
  category="std"
  docName="draft-link-6man-truce-00"
  ipr="trust200902"
  obsoletes=""
  updates="4861"
  submissionType="IETF"
  xml:lang="en"
  version="3">
  <front>
<title abbrev="Triggering Router Advertisements Upon Changes">Triggering Unsolicited Router Advertisements Upon Configuration Changes</title>
    <seriesInfo name="Internet-Draft" value="draft-link-6man-truce-00"/>

    <author fullname="Jen Linkova" initials="J" surname="Linkova">
      <organization>Google</organization>
      <address>
        <postal>
          <!-- Reorder these if your country does things differently -->
          <street>1 Darling Island Rd</street>
          <city>Pyrmont</city>
          <region>NSW</region>
          <code>2009</code>
          <country>AU</country>
        </postal>        
        <email>furry13@gmail.com</email>  
        <email>furry@google.com</email>  
      </address>
    </author>
   
    <date year="2024"/>
<area>Internet</area>
    <workgroup>IPv6 Maintenance</workgroup>
    <keyword>ipv6</keyword>
    <keyword>slaac</keyword>
    <keyword>pio</keyword>
    <keyword>router advertisement</keyword>
    <keyword>renumbering</keyword>


    <abstract>
 <t>
IPv6 routers employ Router Advertisements (RAs) to disseminate essential network configuration data to hosts.
RAs play a vital role in Stateless address autoconfiguration (SLAAC) and providing IPv6 connectivity.
Timely updates via RAs become paramount as network configurations change to prevent service outages. 
This document modifies RFC4861, recommending immediate propagation of configuration information changes by routers.
</t>

    </abstract>
 
  </front>

  <middle>
    
    <section>
      <name>Introduction</name>
<t>
Router Advertisements (RAs) contain information that IPv6 hosts use to configure their networks and establish connectivity. Examples of such information include but are not limited to:
</t>
<ul>
<li>
<t>
Prefix Information Options (<xref target="RFC4861"/>): Advertise network prefixes, allowing hosts to automatically configure IPv6 addresses (SLAAC).
</t>
</li>
<li>
<t>
Link MTU (<xref target="RFC4861"/>): Informs hosts about the maximum packet size supported on the link, preventing fragmentation.
</t>
</li>
<li>
<t>
DNS Recursive Server Addresses (<xref target="RFC8106"/>): Provides DNS servers for domain name resolution.
</t>
</li>
<li>
<t>
NAT64 Prefix (<xref target="RFC8781"/>): Indicates the presence of a NAT64 translator, enabling communication between IPv6 and IPv4 networks.
</t>
</li>
</ul>
<t>
Network configurations can change over time, and these changes must be communicated to hosts. Routers propagate updates either by sending unsolicited RAs or by responding with an RA to a host's Router Solicitation (RS) message.  While some changes (like adding a new prefix or DNS server) can be safely included in the next scheduled RA, others require immediate action to prevent service disruptions.  In particular, the removal of a prefix, DNS server, or NAT64 service necessitates a timely update to ensure hosts discontinue using outdated and non-functional resources.
</t>
<t>
A frequent issue arises during network renumbering, when the prefix used for SLAAC and/or on-link communication is modified. If the router fails to send an immediate unsolicited RA upon a prefix change, hosts might continue selecting source addresses from the outdated prefix for up to MaxRtrAdvInterval (65535 seconds, <xref target="RFC8319"/>).  Communications using those addresses will fail since the old prefix is no longer valid. Residential networks, where prefixes are often delegated to Customer Edge (CE) routers via DHCPv6-PD, are particularly susceptible to this issue.
</t>
<t>
To ensure timely prefix change notifications, Requirement L-13 of <xref target="RFC7084"/> states:
</t>
<t>
If the delegated prefix changes, i.e., the current prefix is
          replaced with a new prefix without any overlapping time
          period, then the IPv6 CE router MUST immediately advertise the
          old prefix with a Preferred Lifetime of zero and a Valid
          Lifetime of either a) zero or b) the lower of the current
          Valid Lifetime and two hours (which must be decremented in
          real time) in a Router Advertisement message as described in
          Section 5.5.3, (e) of [RFC4862].
</t>
<t>
It's important to note that this requirement applies specifically to CE routers and addresses prefix changes only.
Section 6.2.4 of <xref target="RFC4861"/> says:
</t>
<t>
The information contained in Router Advertisements may change through
   actions of system management.  For instance, the lifetime of
   advertised prefixes may change, new prefixes could be added, a router
   could cease to be a router (i.e., switch from being a router to being
   a host), etc.  In such cases, the router MAY transmit up to
   MAX_INITIAL_RTR_ADVERTISEMENTS unsolicited advertisements, using the
   same rules as when an interface becomes an advertising interface.
</t>
<t>
Consequently, routers not classified as CE equipment and therefore exempt from <xref target="RFC7084"/> are not required to immediately notify hosts about network configuration changes.  This can lead to degraded user experience and contribute to a negative perception of IPv6 reliability.
</t>
</section>
      <section>
        <name>Requirements Language</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
          "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT
          RECOMMENDED", "MAY", and "OPTIONAL" 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>
      </section>
<section anchor="updates">
<name>
Changes to RFC4861
</name>
<t>
This document makes the following changes to Section 6.2.4 of <xref target="RFC4861"/>,
</t>
<t>
OLD TEXT:
</t>
<t>
===
</t>
<t>
The information contained in Router Advertisements may change through
   actions of system management.  For instance, the lifetime of
   advertised prefixes may change, new prefixes could be added, a router
   could cease to be a router (i.e., switch from being a router to being
   a host), etc.  In such cases, the router MAY transmit up to
   MAX_INITIAL_RTR_ADVERTISEMENTS unsolicited advertisements, using the
   same rules as when an interface becomes an advertising interface.
</t>
<t>
===
</t>
<t>
NEW TEXT
</t>
<t>
===
</t>
<t>
The information contained in Router Advertisements may change through
   actions of system management.  For instance, the lifetime of
   advertised prefixes may change, new prefixes could be added, a router
   could cease to be a router (i.e., switch from being a router to being
   a host), etc.  In such cases, the router SHOULD transmit up to
   MAX_INITIAL_RTR_ADVERTISEMENTS unsolicited advertisements, using the
   same rules as when an interface becomes an advertising interface.
</t>
<t>
===
</t>


</section>

    <section anchor="Security">
      <!-- All drafts are required to have a security considerations section. See RFC 3552 for a guide. -->
      <name>Security Considerations</name>
<t>
This document does not introduce any security considerations.
</t>
    </section>

    <section anchor="privacy">
      <name>Privacy Considerations</name>
      <t>
      </t>
    </section>
    
    <section anchor="IANA">
    <!-- All drafts are required to have an IANA considerations section. See RFC 8126 for a guide.-->
      <name>IANA Considerations</name>
      <t>This memo does not introduce any IANA  considerations.</t>
    </section>
    
    <!-- NOTE: The Acknowledgements and Contributors sections are at the end of this template -->
  </middle>

  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.4861.xml"/>
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.7084.xml"/>
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.8174.xml"/>
        <!-- The recommended and simplest way to include a well known reference -->
        
      </references>
 
      <references>
	      <name>Informative References</name>

        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.8106.xml"/>
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.8319.xml"/>
        <xi:include href="https://www.rfc-editor.org/refs/bibxml/reference.RFC.8781.xml"/>
      </references>
    </references>
    
    <section anchor="Acknowledgements" numbered="false">
      <name>Acknowledgements</name>
<t>
Thanks to Erik Kline for the discussions, the input and all contribution.
</t>
    </section>
    
 </back>
</rfc>
