<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" ipr="trust200902" tocInclude="true" indexInclude="true" obsoletes="" consensus="true" submissionType="IETF" xml:lang="en" updates="4861, 6550, 8505, 8928, 9010" docName="draft-ietf-6lo-prefix-registration-18" number="9926" symRefs="true" sortRefs="true" prepTime="2026-02-11T08:46:21" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-6lo-prefix-registration-18" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9926" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="Prefix Registration">Prefix Registration for IPv6 Neighbor Discovery</title>
    <seriesInfo name="RFC" value="9926" stream="IETF"/>
    <author initials="P" surname="Thubert" fullname="Pascal Thubert" role="editor">
      <address>
        <postal>
          <city>Roquefort-les-Pins</city>
          <code>06330</code>
          <country>France</country>
        </postal>
        <email>pascal.thubert@gmail.com</email>
      </address>
    </author>
    <date month="02" year="2026"/>
    <area>INT</area>
    <workgroup>6lo</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
   This document updates IPv6 Neighbor Discovery (RFC 4861) and IPv6
   Subnet Neighbor Discovery (RFC 8505, RFC 8928) to enable a node that
   owns or is directly connected to a prefix to register that prefix to
   neighbor routers.  The registration indicates that the registered
   prefix can be reached via the advertising node without a loop.  The
   unicast prefix registration allows the node to request one or more neighbor routers to
   redistribute the prefix in another routing domain regardless of the
   routing protocol used in that domain.  This document updates
   the Routing Protocol for Low-Power and Lossy Networks (RPL), as specified in RFCs 6550 and 9010, to enable a 6LoWPAN Router (6LR) to inject the
   registered prefix in RPL.
      </t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9926" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2026 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-terminology">Terminology</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2">
              <li pn="section-toc.1-1.2.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.1.1"><xref derivedContent="2.1" format="counter" sectionFormat="of" target="section-2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-language">Requirements Language</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.2.1"><xref derivedContent="2.2" format="counter" sectionFormat="of" target="section-2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-inherited-terms-and-concept">Inherited Terms and Concepts</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.3">
                <t indent="0" pn="section-toc.1-1.2.2.3.1"><xref derivedContent="2.3" format="counter" sectionFormat="of" target="section-2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-acronyms-and-initialisms">Acronyms and Initialisms</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.4">
                <t indent="0" pn="section-toc.1-1.2.2.4.1"><xref derivedContent="2.4" format="counter" sectionFormat="of" target="section-2.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-new-terms">New Terms</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-overview">Overview</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-4861">Updating RFC 4861</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-7400">Updating RFC 7400</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-6550">Updating RFC 6550</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-8505">Updating RFC 8505</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.7.2">
              <li pn="section-toc.1-1.7.2.1">
                <t indent="0" pn="section-toc.1-1.7.2.1.1"><xref derivedContent="7.1" format="counter" sectionFormat="of" target="section-7.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-new-p-field-value">New P-Field Value</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.2">
                <t indent="0" pn="section-toc.1-1.7.2.2.1"><xref derivedContent="7.2" format="counter" sectionFormat="of" target="section-7.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-new-earo-prefix-length-fiel">New EARO Prefix Length Field and F flag</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.3">
                <t indent="0" pn="section-toc.1-1.7.2.3.1"><xref derivedContent="7.3" format="counter" sectionFormat="of" target="section-7.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-new-edar-prefix-length-fiel">New EDAR Prefix Length Field</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.4">
                <t indent="0" pn="section-toc.1-1.7.2.4.1"><xref derivedContent="7.4" format="counter" sectionFormat="of" target="section-7.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-the-registration-o">Updating the Registration Operation</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-9010">Updating RFC 9010</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-8928">Updating RFC 8928</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-updating-rfc-8929">Updating RFC 8929</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.1"><xref derivedContent="12" format="counter" sectionFormat="of" target="section-12"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-operational-considerations">Operational Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.12.2">
              <li pn="section-toc.1-1.12.2.1">
                <t indent="0" pn="section-toc.1-1.12.2.1.1"><xref derivedContent="12.1" format="counter" sectionFormat="of" target="section-12.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-partially-upgraded-networks">Partially Upgraded Networks</xref></t>
              </li>
              <li pn="section-toc.1-1.12.2.2">
                <t indent="0" pn="section-toc.1-1.12.2.2.1"><xref derivedContent="12.2" format="counter" sectionFormat="of" target="section-12.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-application-to-rpl-based-ro">Application to RPL-Based Route-Over LLNs</xref></t>
              </li>
              <li pn="section-toc.1-1.12.2.3">
                <t indent="0" pn="section-toc.1-1.12.2.3.1"><xref derivedContent="12.3" format="counter" sectionFormat="of" target="section-12.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-application-to-a-shared-lin">Application to a Shared Link</xref></t>
              </li>
              <li pn="section-toc.1-1.12.2.4">
                <t indent="0" pn="section-toc.1-1.12.2.4.1"><xref derivedContent="12.4" format="counter" sectionFormat="of" target="section-12.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-application-to-a-hub-link-w">Application to a Hub Link with Stub Spokes</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="13" format="counter" sectionFormat="of" target="section-13"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.13.2">
              <li pn="section-toc.1-1.13.2.1">
                <t indent="0" pn="section-toc.1-1.13.2.1.1"><xref derivedContent="13.1" format="counter" sectionFormat="of" target="section-13.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-updated-p-field-registry">Updated P-Field Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.13.2.2">
                <t indent="0" pn="section-toc.1-1.13.2.2.1"><xref derivedContent="13.2" format="counter" sectionFormat="of" target="section-13.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-new-6lowpan-capability-bit">New 6LoWPAN Capability Bit</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.14">
            <t indent="0" pn="section-toc.1-1.14.1"><xref derivedContent="14" format="counter" sectionFormat="of" target="section-14"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
          </li>
          <li pn="section-toc.1-1.15">
            <t indent="0" pn="section-toc.1-1.15.1"><xref derivedContent="15" format="counter" sectionFormat="of" target="section-15"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
          </li>
          <li pn="section-toc.1-1.16">
            <t indent="0" pn="section-toc.1-1.16.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.17">
            <t indent="0" pn="section-toc.1-1.17.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-address">Author's Address</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">The design of Low Power and Lossy Networks (LLNs) is generally focused on
   saving energy, which is the most constrained resource of all. Other design
   constraints (such as a limited memory capacity, duty cycling of the LLN
   devices, and low-power lossy transmissions) derive from that primary concern.
   The radio (both transmitting or simply listening) is a major energy drain,
   and the LLN protocols must be adapted to allow the nodes to remain sleeping
   with the radio turned off at most times.
      
</t>
      <t indent="0" pn="section-1-2">
	Examples of LLNs include hub-and-spoke access links such as (Low-Power) Wi-Fi
   <xref target="IEEE80211" format="default" sectionFormat="of" derivedContent="IEEE80211"/> and Bluetooth (Low Energy)
   <xref target="IEEE802151" format="default" sectionFormat="of" derivedContent="IEEE802151"/>, Mesh-Under networks where the routing
   operation is handled at Layer 2 (L2), and route-over networks such as the Wi-SUN 
   <xref target="WI-SUN" format="default" sectionFormat="of" derivedContent="WI-SUN"/> and 6TiSCH <xref target="RFC9030" format="default" sectionFormat="of" derivedContent="RFC9030"/>
   mesh networks, which leverage 6LoWPAN <xref target="RFC4919" format="default" sectionFormat="of" derivedContent="RFC4919"/> <xref target="RFC6282" format="default" sectionFormat="of" derivedContent="RFC6282"/>
   and RPL <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> over <xref target="IEEE802154" format="default" sectionFormat="of" derivedContent="IEEE802154"/>.
      
</t>
      <t indent="0" pn="section-1-3">
   LLNs and constrained devices are the original domain of application 
   for 6LoWPAN protocols. It is thus a foremost concern, when designing
   those protocols, to minimize energy spendings. In non-LLN
   environments where lowering carbon emissions is also a priority, it
   could make sense to apply the 6LoWPAN designs and extend some of the
   6LoWPAN protocols.
   The general design points include:
      
</t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-1-4">
        <li pn="section-1-4.1">
     Placing the protocol complexity in the less-constrained routers to simplify the host implementation and avoid expanding the control traffic to all nodes.
   </li>
        <li pn="section-1-4.2">
    Using host-triggered operations to enable transient disconnections with the routers, e.g., 
	 to conserve power (sleep), but also to cope with inconsistent connectivity.
	 </li>
      </ul>
      <t indent="0" pn="section-1-5">
     These points translate into: 
      </t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-1-6">
        <li pn="section-1-6.1">Stateful proactively built knowledge in the routers that is available at any point of time.
	</li>
        <li pn="section-1-6.2">
    Unicast host-to-router operations triggered by the host and its applications.
	</li>
        <li pn="section-1-6.3">
    Minimal use of asynchronous L2 broadcast operations that would keep the host awake and listening with no application-level need to do so.
   </li>
      </ul>
      <t indent="0" pn="section-1-7">
   "RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks" <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> provides IPv6 <xref target="RFC8200" format="default" sectionFormat="of" derivedContent="RFC8200"/>
   routing services within such constraints.
   To save signaling and routing state in constrained networks, the RPL routing
   is only performed along a Destination-Oriented Directed Acyclic Graph (DODAG)
   that is optimized to reach a Root node, as opposed to along the shortest path
   between two peers, whatever that would mean in each LLN.
</t>
      <t indent="0" pn="section-1-8">
   The classical Neighbor Discovery Protocol (NDP)
   <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> <xref target="RFC4862" format="default" sectionFormat="of" derivedContent="RFC4862"/> was defined for serial
   links and shared transit media such as Ethernet at a time when L2 broadcast
   was cheap on those media, while memory for neighbor cache was expensive.
   Thus, it was designed
   as a reactive protocol that relies on caching and multicast
   operations for the Duplicate Address Detection (DAD) and Address 
   Resolution (AR), aka address discovery or address lookup, of IPv6 
   unicast addresses.
   Those multicast operations typically impact every node on-link when at most
   one is really targeted, which is a waste of energy, and imply that all
   nodes are awake to hear the request, which is inconsistent with power-saving (sleeping) modes.
</t>
      <t indent="0" pn="section-1-9">
   "Architecture and Framework for IPv6 over Non-Broadcast Access" <xref target="I-D.ietf-6man-ipv6-over-wireless" format="default" sectionFormat="of" derivedContent="IPv6-over-NBMA"/>
   introduces an evolution of IPv6 ND towards a proactive AR method.
   Because the IPv6 model for
   NBMA depends on a routing protocol to reach inside the subnet, the
   IPv6 ND extension for NBMA is referred to as Subnet Neighbor Discovery (SND).
   SND is based on work done in the context of Internet of Things (IoT), known as 6LoWPAN ND.
   As opposed to the classical IPv6 ND protocol, this evolution follows the 
   energy conservation principles discussed above:
</t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-1-10">
        <li pn="section-1-10.1">
   The original 6LoWPAN ND, "Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)" <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/>, was introduced to avoid the
   excessive use of multicast messages and enable IPv6 ND for operations over
   energy-constrained nodes.
   <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/> changes the classical IPv6 ND model to proactively
   establish the Neighbor Cache Entry (NCE) associated to the unicast address of
   a 6LoWPAN Node (6LN) in the one or more 6LoWPAN Routers (6LRs) that serve it.
   To that effect, <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/> defines a new Address Registration
   Option (ARO) that is placed in unicast Neighbor Solicitation (NS) and
   Neighbor Advertisement (NA) messages between the 6LN and the 6LRs.
</li>
        <li pn="section-1-10.2">
   "Registration Extensions for IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery&gt;" <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> updates <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/> into a generic Address
   Registration mechanism and is the foundation for Subnet Neighbor Discovery (SND).
   SND introduces the Extended Address Registration Option (EARO) to enable the
   registering node to access services such as routing inside a subnet
   and ND proxy operations <xref target="RFC8929" format="default" sectionFormat="of" derivedContent="RFC8929"/>.
   This provides a routing-protocol-agnostic method for a host to
   request that the router inject a unicast IPv6 address in the local routing
   protocol and provide return reachability for that address.
</li>
        <li pn="section-1-10.3">
   "Listener Subscription for IPv6 Neighbor Discovery Multicast and Anycast Addresses" <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/>
   updates <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> to enable a listener to subscribe to an IPv6
    anycast or multicast address; the document also updates <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/>
    to enable a 6LR to inject the anycast and multicast addresses in RPL.
    Similarly, this specification updates <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> and
    <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/> to add the capability for a 6LN to register unicast
    prefixes up to 120 bits long, as opposed to addresses, and to signal in a routing-protocol-independent
    fashion to a 6LR that it is expected to redistribute the prefixes.
</li>
      </ul>
      <t indent="0" pn="section-1-11">
This specification updates the above registration and subscription methods
to enable a node to register a unicast prefix to the routing system and get it injected in the routing protocol. As with <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>, the prefix registration is agnostic to the routing protocol in which the router injects the prefix, and the router is agnostic to the method that was used to allocate the prefix to the node.
The energy conservation principles in <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> are retained as well, 
meaning that the node does not have to send or expect asynchronous multicast messages. 

</t>
      <t indent="0" pn="section-1-12">
   Please note that an energy-conserving node is not necessarily a 
   router, so even when a node is advertising a prefix, it is a 
   design choice not to use Router Advertisement (RA) messages that would
   make the node appear as a router to peer nodes.
   From the design principles above,
   it is clearly a design choice not to leverage (1) broadcasts from or to 
   the node or (2) complex state machines in the node.
 It is also a design choice to use and extend the EARO as opposed to the  Route Information Option (RIO) <xref target="RFC4191" format="default" sectionFormat="of" derivedContent="RFC4191"/> because the RIO is not intended to inject routes in routing, and is lacking related control information like the R bit in the EARO. Additionally, an RA with RIO cannot be trusted for a safe injection in the routing protocol for the lack of the equivalent of the Registration Ownership Verifier (ROVR) <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> in the EARO.
</t>
    </section>
    <section numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-terminology">Terminology</name>
      <section anchor="bcp" numbered="true" removeInRFC="false" toc="include" pn="section-2.1">
        <name slugifiedName="name-requirements-language">Requirements Language</name>
        <t indent="0" pn="section-2.1-1">
    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" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only when, they appear in all capitals, as
    shown here.
        </t>
      </section>
      <section anchor="lo" numbered="true" removeInRFC="false" toc="include" pn="section-2.2">
        <name slugifiedName="name-inherited-terms-and-concept">Inherited Terms and Concepts</name>
        <t indent="0" pn="section-2.2-1">
	This document uses terms and concepts that are discussed in:
        </t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-2.2-2">
          <li pn="section-2.2-2.1">"Neighbor Discovery for IP version 6 (IPv6)" <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> and
      </li>
          <li pn="section-2.2-2.2">
	    "IPv6 Stateless Address Autoconfiguration" <xref target="RFC4862" format="default" sectionFormat="of" derivedContent="RFC4862"/> for the Neighbor Solicitation operation,
    </li>
          <li pn="section-2.2-2.3"> "Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)" <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/>, as well as
    </li>
          <li pn="section-2.2-2.4">
	    "Registration Extensions for IPv6 over
 Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery" <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>, and
	</li>
          <li pn="section-2.2-2.5">
    "RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks" <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> for RPL, which is the routing protocol used in LLNs for SND. 
   </li>
        </ul>
      </section>
      <section anchor="acronyms" numbered="true" removeInRFC="false" toc="include" pn="section-2.3">
        <name slugifiedName="name-acronyms-and-initialisms">Acronyms and Initialisms</name>
        <t indent="0" pn="section-2.3-1"> This document uses the following abbreviations:

        </t>
        <dl spacing="compact" indent="12" newline="false" pn="section-2.3-2">
          <dt pn="section-2.3-2.1">6CIO:</dt>
          <dd pn="section-2.3-2.2"> 6LoWPAN Capability Indication Option <xref target="RFC7400" format="default" sectionFormat="of" derivedContent="RFC7400"/></dd>
          <dt pn="section-2.3-2.3">6LBR:</dt>
          <dd pn="section-2.3-2.4"> 6LoWPAN Border Router  <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/></dd>
          <dt pn="section-2.3-2.5">6LN:</dt>
          <dd pn="section-2.3-2.6"> 6LoWPAN Node  <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/> </dd>
          <dt pn="section-2.3-2.7">6LR:</dt>
          <dd pn="section-2.3-2.8"> 6LoWPAN Router  <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/></dd>
          <dt pn="section-2.3-2.9">ARO:</dt>
          <dd pn="section-2.3-2.10"> Address Registration Option  <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/></dd>
          <dt pn="section-2.3-2.11">DAD:</dt>
          <dd pn="section-2.3-2.12"> Duplicate Address Detection <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/></dd>
          <dt pn="section-2.3-2.13">DAO:</dt>
          <dd pn="section-2.3-2.14"> Destination Advertisement Object <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> </dd>
          <dt pn="section-2.3-2.15">DODAG:</dt>
          <dd pn="section-2.3-2.16"> Destination-Oriented Directed Acyclic Graph </dd>
          <dt pn="section-2.3-2.17">EARO:</dt>
          <dd pn="section-2.3-2.18"> Extended Address Registration Option <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/></dd>
          <dt pn="section-2.3-2.19">EDAC:</dt>
          <dd pn="section-2.3-2.20"> Extended Duplicate Address Confirmation <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> </dd>
          <dt pn="section-2.3-2.21">EDAR:</dt>
          <dd pn="section-2.3-2.22"> Extended Duplicate Address Request <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/></dd>
          <dt pn="section-2.3-2.23">ESS:</dt>
          <dd pn="section-2.3-2.24"> Extended Service Set <xref target="IEEE80211" format="default" sectionFormat="of" derivedContent="IEEE80211"/></dd>
          <dt pn="section-2.3-2.25">IPAM:</dt>
          <dd pn="section-2.3-2.26"> IP Address Management</dd>
          <dt pn="section-2.3-2.27">LLN:</dt>
          <dd pn="section-2.3-2.28"> Low-Power and Lossy Network </dd>
          <dt pn="section-2.3-2.29">LLA:</dt>
          <dd pn="section-2.3-2.30"> Link-Layer Address </dd>
          <dt pn="section-2.3-2.31">LoWPAN:</dt>
          <dd pn="section-2.3-2.32"> Low-Power Wireless Personal Area Network</dd>
          <dt pn="section-2.3-2.33">LR-WPAN:</dt>
          <dd pn="section-2.3-2.34">Low-Rate Wireless Personal Area Network <xref target="IEEE802154" format="default" sectionFormat="of" derivedContent="IEEE802154"/></dd>
          <dt pn="section-2.3-2.35">MAC:</dt>
          <dd pn="section-2.3-2.36"> Medium Access Control</dd>
          <dt pn="section-2.3-2.37">NA:</dt>
          <dd pn="section-2.3-2.38"> Neighbor Advertisement (message) <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/></dd>
          <dt pn="section-2.3-2.39">NBMA:</dt>
          <dd pn="section-2.3-2.40"> Non-Broadcast Multi-Access (full mesh)</dd>
          <dt pn="section-2.3-2.41">NCE:</dt>
          <dd pn="section-2.3-2.42"> Neighbor Cache Entry <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> </dd>
          <dt pn="section-2.3-2.43">ND:</dt>
          <dd pn="section-2.3-2.44"> Neighbor Discovery (protocol) </dd>
          <dt pn="section-2.3-2.45">NDP:</dt>
          <dd pn="section-2.3-2.46"> Neighbor Discovery Protocol  </dd>
          <dt pn="section-2.3-2.47">NS:</dt>
          <dd pn="section-2.3-2.48"> Neighbor Solicitation (message) <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/></dd>
          <dt pn="section-2.3-2.49">ROVR:</dt>
          <dd pn="section-2.3-2.50"> Registration Ownership Verifier (pronounced "rover") <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> </dd>
          <dt pn="section-2.3-2.51">RPL:</dt>
          <dd pn="section-2.3-2.52">IPv6 Routing Protocol for LLNs (pronounced "ripple") <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/></dd>
          <dt pn="section-2.3-2.53">RA:</dt>
          <dd pn="section-2.3-2.54"> Router Advertisement (message) <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/></dd>
          <dt pn="section-2.3-2.55">RS:</dt>
          <dd pn="section-2.3-2.56"> Router Solicitation (message) <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> </dd>
          <dt pn="section-2.3-2.57">RTO:</dt>
          <dd pn="section-2.3-2.58"> RPL Target Option <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> </dd>
          <dt pn="section-2.3-2.59">SLLAO:</dt>
          <dd pn="section-2.3-2.60">Source Link-Layer Address Option <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> </dd>
          <dt pn="section-2.3-2.61">SND:</dt>
          <dd pn="section-2.3-2.62">Subnet Neighbor Discovery (protocol)</dd>
          <dt pn="section-2.3-2.63">TID:</dt>
          <dd pn="section-2.3-2.64"> Transaction ID <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/></dd>
          <dt pn="section-2.3-2.65">TIO:</dt>
          <dd pn="section-2.3-2.66"> Transit Information Option <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> </dd>
          <dt pn="section-2.3-2.67">TLLAO:</dt>
          <dd pn="section-2.3-2.68">Target Link-Layer Address Option <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> </dd>
        </dl>
      </section>
      <section anchor="terms" numbered="true" removeInRFC="false" toc="include" pn="section-2.4">
        <name slugifiedName="name-new-terms">New Terms</name>
        <t indent="0" pn="section-2.4-1"> This document introduces the following term:</t>
        <dl newline="false" indent="7" spacing="compact" pn="section-2.4-2">
          <dt pn="section-2.4-2.1">Origin:</dt>
          <dd pn="section-2.4-2.2"> The node that issued the prefix
       advertisement, either in the form of a NS(EARO) or as a DAO(TIO, RTO) </dd>
        </dl>
      </section>
    </section>
    <section anchor="overview" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-overview">Overview</name>
      <t indent="0" pn="section-3-1">
   This specification inherits from <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/>,
   <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>, and <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/> to register prefixes as opposed to addresses. 
      </t>
      <t indent="0" pn="section-3-2">
   The IPv6 ND operation is agnostic to the routing protocol used in the
   SND. Route-over LLNs typically leverage RPL. A RPL-based SND deployment
   consists of:
      </t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-3-3">
        <li pn="section-3-3.1">
   one or more 6LBRs that act as RPL Root,
   </li>
        <li pn="section-3-3.2">
   intermediate routers down the RPL graph that propagate routing information on addresses and prefixes
   towards the Root,
   </li>
        <li pn="section-3-3.3">
   6LRs that are RPL-aware 6LNs and can leverage RPL directly to expose their addresses and prefixes, and
   </li>
        <li pn="section-3-3.4">
   6LNs that are the RPL-unaware destinations and need SND to obtain reachability over the RPL LLN for their addresses and, with this specification, their prefixes as well.
   </li>
      </ul>
      <t indent="0" pn="section-3-4">
   The SND operation for prefixes inherits from that for unicast addresses, 
   meaning that it is the same unless specified otherwise herein.
   In particular, forwarding a packet happens as specified in 
   <xref target="RFC6550" section="11" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc6550#section-11" derivedContent="RFC6550"/>, including loop avoidance and detection. However, in
   the case of multicast, multiple copies might be generated.
      </t>
      <t indent="0" pn="section-3-5"><xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> is a prerequisite to this specification.
   A node that implements this <bcp14>MUST</bcp14> also implement <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>.
   This specification does not introduce a new option; it modifies
   existing options and updates the associated behaviors to enable the
   registration for prefixes as an extension to
   <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>.
      </t>
      <t indent="0" pn="section-3-6">
   This specification updates the P-Field introduced in <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/> for use in EARO, DAR, and RTO,
   with the new value of 3 to indicate the registration of a prefix, as
   detailed in <xref target="R8505E" format="default" sectionFormat="of" derivedContent="Section 7.2"/>.
   With this extension, the 6LN can now express its willingness to receive the traffic for all addresses in the range of a prefix, using the P-Field value of 3 in the EARO to signal that the
   registration is for such prefix. Multiple 6LNs acting as border routers to the same external network or as access routers to the same subnet may register the same prefix to the same 6LR or to different 6LRs.
</t>
      <t indent="0" pn="section-3-7">
   If the R flag is set in the registration of one or more 6LNs for the same
   prefix, then, according to its redistribution policy, the 6LR <bcp14>MUST</bcp14> 
   redistribute the prefix in the routing protocol(s) (e.g., RPL) that 
   it participates in. The duration of the redistribution is   
   based on the longest registration lifetime across the
   non-expired received registrations for the prefix.`
</t>
      <t indent="0" pn="section-3-8">
    Examples of use cases where this specification may apply include virtual links, shared links,
    and hub links as shown in Sections <xref target="Shared" format="counter" sectionFormat="of" derivedContent="12.3"/> and <xref target="Hub" format="counter" sectionFormat="of" derivedContent="12.4"/>, respectively.
    More generally, the 6LN may be a router running a different routing protocol in an 
    external network, e.g., a stub network, and acting as a border router. 
    Using the prefix registration method enables decoupling the routing 
    protocol in the 6LN from the routing protocol that the 6LRs run in the main LLN
    and provide signaling to stimulate the redistribution.
</t>
    </section>
    <section anchor="tgt4861" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-updating-rfc-4861">Updating RFC 4861</name>
      <t indent="0" pn="section-4-1">
   <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> expects that the NS/NA exchange is for a unicast
   address, which is indicated in the Target Address field of the ND message.
   <xref target="RFC8505" section="5.5" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc8505#section-5.5" derivedContent="RFC8505"/> extends <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/>
   to signal the Registered Address in the Target Address field.
      </t>
      <t indent="0" pn="section-4-2">
   This specification updates <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> by allowing a 6LN to advertise a	 		
   prefix in the Target Address field when the NS or NA message is used	 		
   for a registration, per <xref target="RFC8505" section="5.5" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc8505#section-5.5" derivedContent="RFC8505"/>. In that case, the	 		
   prefix length <bcp14>MUST</bcp14> be indicated in the EARO of the NS message, overloading	 		
   the field that is used in the NA response for the Status.
   
      </t>
      <t indent="0" pn="section-4-3">
   If the 6LN owns at least one IPv6 address that is derived from the
   registered prefix with a non-zero interface ID, then it <bcp14>MUST</bcp14> indicate 
   one of these addresses in full in the Target Address field of the 
   NS(EARO) message. Else, it <bcp14>MUST</bcp14> indicate the prefix padded with zeros
   in the Target Address field. 
      </t>
    </section>
    <section anchor="CIO" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-updating-rfc-7400">Updating RFC 7400</name>
      <t indent="0" pn="section-5-1">
   This specification updates "<xref format="title" target="RFC7400" sectionFormat="of" derivedContent="6LoWPAN-GHC: Generic Header Compression for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)"/>" <xref target="RFC7400" format="default" sectionFormat="of" derivedContent="RFC7400"/> by defining a new capability bit for use in the
   6CIO.  <xref target="RFC7400" format="default" sectionFormat="of" derivedContent="RFC7400"/> was already extended by <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> for use in IPv6 ND messages.
      </t>
      <t indent="0" pn="section-5-2">
   The new "Registration for prefixes supported" (F) flag indicates
   to the 6LN that the 6LR (1) accepts IPv6 prefix
   registrations as specified in this document, (2) will ensure that packets
   for the addresses that match this prefix will be routed to the 6LNs that
   registered the prefix, and (3) will ensure that the route to the prefix will be redistributed if
   the R flag is set to 1.
      </t>
      <t indent="0" pn="section-5-3">
   <xref target="fig6CIO" format="default" sectionFormat="of" derivedContent="Figure 1"/> illustrates the F flag in its position
   (16, counting 0 to 47 in network order in the 48-bit array).
      </t>
      <figure anchor="fig6CIO" align="left" suppress-title="false" pn="figure-1">
        <name slugifiedName="name-new-capability-bit-in-the-6">New Capability Bit in the 6CIO</name>
        <artwork align="left" pn="section-5-4.1">
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Type      |   Length = 1  | Experimental  |X|A|D|L|B|P|E|G|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|                         Reserved                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+</artwork>
      </figure>
      <t indent="0" pn="section-5-5"> New Option Field:    </t>
      <dl spacing="normal" newline="false" indent="3" pn="section-5-6">
        <dt pn="section-5-6.1">F:</dt>
        <dd pn="section-5-6.2"> 1-bit flag, set to 1 to indicate "Registration for prefixes supported" </dd>
      </dl>
    </section>
    <section anchor="coex" numbered="true" removeInRFC="false" toc="include" pn="section-6">
      <name slugifiedName="name-updating-rfc-6550">Updating RFC 6550</name>
      <t indent="0" pn="section-6-1">
   <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> uses the Path Sequence in the Transit Information
   Option (TIO) to retain only the freshest unicast route and remove stale ones,
   e.g., in the case of mobility. <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/> copies the TID from
   the EARO into the Path Sequence, and the ROVR field into the associated RPL
   Target Option (RTO).
   This way, it is possible to identify both the registering node and the
   order of registration in RPL for each individual advertisement, so the
   most recent path and lifetime values are used.
</t>
      <t indent="0" pn="section-6-2">

   <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/> requires the use of the
   ROVR field as the indication of the origin of a Target advertisement in the
   RPL DAO messages, as specified in <xref target="RFC9010" section="6.1" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc9010#section-6.1" derivedContent="RFC9010"/>.
   For anycast and multicast advertisements (in NS or DAO messages), multiple
   origins may subscribe to the same address, in which case the multiple
   advertisements from the different or unknown origins are merged by the common
   parent. In that case, the common parent becomes the origin of the merged
   advertisements and uses its own ROVR value. On the other hand, a parent that
   propagates an advertisement from a single origin uses the original ROVR in
   the propagated RTO, as it does for unicast address advertisements, so the
   origin is recognized across multiple hops.

</t>
      <t indent="0" pn="section-6-3">
   This specification updates <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> to require that,
   for prefix routes, the Path Sequence is used between and only between
   advertisements for the same Target and from the same origin (i.e., with the same ROVR value); in that case, only the freshest advertisement is retained. However, the freshness comparison cannot apply if the
   origin is not determined (i.e., the origin did not support this specification).
</t>
      <t indent="0" pn="section-6-4">
   <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> uses the Path Lifetime in the TIO to indicate the
   remaining time for which the advertisement is valid for unicast route
   determination, and a Path Lifetime value of 0 invalidates that route.
   <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/> maps the Address Registration lifetime in the EARO
   and the Path Lifetime in the TIO so they are comparable when both forms of
   advertisements are received.
</t>
      <t indent="0" pn="section-6-5">
   The RPL router that merges multiple advertisements for the same prefix 
   <bcp14>MUST</bcp14> use and advertise the longest remaining lifetime
   across all the origins of the advertisements for that prefix.
   When the lifetime expires, the router sends a no-path DAO message (i.e., the lifetime
   is 0) using the same value for the ROVR value as for the previous advertisements.
   This value refers to either the single descendant that advertised the Target if there is only one or the router itself if there is more than one.
</t>
      <t indent="0" pn="section-6-6">

   Note that the Registration Lifetime, TID, and ROVR fields are also placed in
   the EDAR message, so the state created by EDAR is also comparable with that created upon an NS(EARO) or a DAO message. For simplicity, the text below
   mentions only NS(EARO) but it also applies to EDAR.
</t>
    </section>
    <section anchor="updating" numbered="true" removeInRFC="false" toc="include" pn="section-7">
      <name slugifiedName="name-updating-rfc-8505">Updating RFC 8505</name>
      <t indent="0" pn="section-7-1">
This specification updates the EARO and EDAR messages to enable the registration of prefixes and updates the registration operation in the case of a prefix, in particular from the standpoint of the 6LR, e.g., to enable the registration of overlapping prefixes.
</t>
      <section anchor="R8505EF" numbered="true" removeInRFC="false" toc="include" pn="section-7.1">
        <name slugifiedName="name-new-p-field-value">New P-Field Value</name>
        <t indent="0" pn="section-7.1-1"> <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/>  defines a 2-bit P-Field with values 0 through 2 and reserves the
value 3 for future use. This specification defines the semantics of P-Field
value 3.
</t>
        <t indent="0" pn="section-7.1-2">
When the P-Field is set to 3, it indicates that the Registered Address
represents a prefix rather than a single address. Upon receiving an NS(EARO)
message with the P-Field set to 3, the receiver <bcp14>MUST</bcp14> install a route to the
indicated prefix via the source address of the NS(EARO) message.
</t>
        <t indent="0" pn="section-7.1-3">
This specification assigns the value 3 to the P-Field, resulting in the
following complete set of defined values:

</t>
        <table anchor="pVALS" align="center" pn="table-1">
          <name slugifiedName="name-p-field-values">P-Field Values</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Meaning</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">Registration for a Unicast Address</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1</td>
              <td align="left" colspan="1" rowspan="1">Registration for a Multicast Address</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">2</td>
              <td align="left" colspan="1" rowspan="1">Registration for an Anycast Address</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">3</td>
              <td align="left" colspan="1" rowspan="1">Registration for a Unicast Prefix</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="R8505E" numbered="true" removeInRFC="false" toc="include" pn="section-7.2">
        <name slugifiedName="name-new-earo-prefix-length-fiel">New EARO Prefix Length Field and F flag</name>
        <t indent="0" pn="section-7.2-1">
   <xref target="RFC8505" section="4.1" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc8505#section-4.1" derivedContent="RFC8505"/> defines the EARO as an extension to
   the ARO option defined in <xref target="RFC6775" format="default" sectionFormat="of" derivedContent="RFC6775"/>.

</t>
        <t indent="0" pn="section-7.2-2">
  The Status field is used only when the EARO is placed in an NA message.
  This specification repurposes that field to carry the prefix length 
  when the EARO is placed in an NS message as illustrated in <xref target="EARO" format="default" sectionFormat="of" derivedContent="Figure 2"/>.
  The prefix length is expressed as 7 bits, and the most significant bit of the field
  is reserved. A 7-bit value of 0 is understood as a truncated 128, meaning that
  this registration is for an address as opposed to a prefix.
  This approach is backward compatible with <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> and spans
  both addresses and prefixes.
        </t>
        <t indent="0" pn="section-7.2-3">
   This specification adds a new F flag to signal that the Registered Prefix
   is topologically correct through the Registering Node. This means that the
   Registering Node relays packets that are sourced in the Registered Prefix
   to the outside, in accordance with "<xref target="RFC2827" format="title" sectionFormat="of" derivedContent="Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing"/>"
   <xref target="BCP38" format="default" sectionFormat="of" derivedContent="BCP38"/>.
   The receiver forwards packets to the Registering Node
   address when the source address of the packets derives from the Registered Prefix.
   Note that to avoid loops, the receiver must be in the inside so packets
   sent by the sender towards the outside may never reach the receiver.
   The notion of "inside" and "outside" are administratively defined, e.g., "inside"
   is a particular L2 network such as an Ethernet fabric.
</t>
        <t indent="0" pn="section-7.2-4">

   When the F flag is not set, the Registering Node owns the prefix and will
   deliver packets to the destination if the destination address derives
   from the prefix. Conversely, if the F flag is set, the Registering Node will
   forward traffic whose source address derives from the Registered Prefix into
   a network location (e.g., to an ISP Provider Edge) where this source address
   is topologically correct (e.g., derives from a prefix assigned by that ISP).
   The F flag is encoded in the most significant bit of the EARO Status field
   when the Status field is used to transport a Prefix Length as shown in
   <xref target="EARO" format="default" sectionFormat="of" derivedContent="Figure 2"/>.
</t>
        <figure anchor="EARO" align="left" suppress-title="false" pn="figure-2">
          <name slugifiedName="name-earo-format-for-use-in-ns-m">EARO Format for Use in NS Messages</name>
          <artwork align="center" pn="section-7.2-5.1">
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     Type      |     Length    |F|Prefix Length|    Opaque     |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |r|C| P | I |R|T|     TID       |     Registration Lifetime     |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
 ...                            ROVR                             ...
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+</artwork>
        </figure>
        <t indent="0" pn="section-7.2-6"> New and updated Option Fields:    </t>
        <dl indent="3" newline="false" spacing="normal" pn="section-7.2-7">
          <dt pn="section-7.2-7.1">F: (Forwarding Flag)</dt>
          <dd pn="section-7.2-7.2"> 
   A 1-bit flag. When set to 1, it indicates that the sender expects 
   other routers to forward packets to the sender when those packets 
   are sourced from within the registered prefix.</dd>
          <dt pn="section-7.2-7.3">Prefix Length:</dt>
          <dd pn="section-7.2-7.4"> 

    A 7-bit unsigned integer. When the P-Field is set to 3 and the EARO is included
   in an NS message, this field <bcp14>MUST</bcp14> contain a prefix
   length expressed in bits, with a value in the inclusive range of 16 to 120. When the
   EARO is included in an NA message, this field <bcp14>MUST</bcp14>
   carry a status value, regardless of the setting of the P-Field. In all other
   cases, this field is reserved; it <bcp14>MUST</bcp14> be set to zero by the sender and <bcp14>MUST</bcp14> be
   ignored by the receiver.
    </dd>
          <dt pn="section-7.2-7.5">r (reserved):</dt>
          <dd pn="section-7.2-7.6">A 1-bit reserved field. It <bcp14>MUST</bcp14> be set to zero by the sender and 
   <bcp14>MUST</bcp14> be ignored by the receiver.</dd>
        </dl>
      </section>
      <section anchor="R8505D" numbered="true" removeInRFC="false" toc="include" pn="section-7.3">
        <name slugifiedName="name-new-edar-prefix-length-fiel">New EDAR Prefix Length Field</name>
        <t indent="0" pn="section-7.3-1">
   This specification adds the new value of 3 to the P-Field to signal that the
   Registered Address is a prefix. When that is the case, the prefix is
   assumed to be at most 120 bits long, padded with zeros up to 120 bits, and the 
   remaining byte is dedicated to one reserved bit and the Prefix Length.
</t>
        <t indent="0" pn="section-7.3-2">
   <xref target="EDAR" format="default" sectionFormat="of" derivedContent="Figure 3"/> illustrates the EDAR message when the value of the
   P-Field is 3. <xref target="EDAC" format="default" sectionFormat="of" derivedContent="Figure 4"/> shows the response EDAC message, 
   with the Status field and the echoed Prefix.   
</t>
        <figure anchor="EDAR" align="left" suppress-title="false" pn="figure-3">
          <name slugifiedName="name-edar-message-format-with-p-">EDAR Message Format with P == 3</name>
          <artwork align="center" pn="section-7.3-3.1">
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |     Type      |CodePfx|CodeSfx|          Checksum             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |P=3| Reserved  |     TID       |     Registration Lifetime     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
...                          ROVR                               ...
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                           Prefix                              +
 |                                                               |
 +              (up to 120 bits, padded with zeros)              +
 |                                                               |
 +                                               +-+-+-+-+-+-+-+-+
 |                                               |r|Prefix Length|
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |   Options ...
 +-+-+-+-+-+-+-+-+-+-+-+-</artwork>
        </figure>
        <figure anchor="EDAC" align="left" suppress-title="false" pn="figure-4">
          <name slugifiedName="name-edac-message-format">EDAC Message Format</name>
          <artwork align="center" pn="section-7.3-4.1">
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |     Type      |CodePfx|CodeSfx|          Checksum             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |    Status     |     TID       |     Registration Lifetime     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
...                          ROVR                               ...
 |                                                               |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                                                               |
 +                           Prefix                              +
 |                                                               |
 +              (up to 120 bits, padded with zeros)              +
 |                                                               |
 +                                               +-+-+-+-+-+-+-+-+
 |                                               |r|Prefix Length|
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |   Options ...
 +-+-+-+-+-+-+-+-+-+-+-+-</artwork>
        </figure>
        <t indent="0" pn="section-7.3-5"> New and updated EDAR/EDAC Message Fields:    </t>
        <dl indent="3" newline="false" spacing="normal" pn="section-7.3-6">
          <dt pn="section-7.3-6.1">Prefix:</dt>
          <dd pn="section-7.3-6.2">A 15-byte field that carries up 
   to 120 bits of the prefix. If the prefix is shorter than 120 bits, the
   remaining bits <bcp14>MUST</bcp14> be padded with zeros. 
   The receiver <bcp14>MUST</bcp14> treat the padding as zeroed and <bcp14>MUST</bcp14> overwrite any 
   unused bits with zeros before using the prefix.</dd>
          <dt pn="section-7.3-6.3">r (reserved):</dt>
          <dd pn="section-7.3-6.4">A 1-bit reserved field. It <bcp14>MUST</bcp14> be set to zero by the sender and 
   <bcp14>MUST</bcp14> be ignored by the receiver.</dd>
          <dt pn="section-7.3-6.5">Prefix Length:</dt>
          <dd pn="section-7.3-6.6">A 7-bit unsigned integer
   indicating the length of the prefix in bits. The value <bcp14>MUST</bcp14> be in the
   inclusive range of 16 to 120.</dd>
        </dl>
        <t indent="0" pn="section-7.3-7">
   The capability to place the P-Field and the contiguous "Reserved" field in the EDAR message is specified in <xref target="RFC9685" section="7.2" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc9685#section-7.2" derivedContent="RFC9685"/>.
        </t>
        <t indent="0" pn="section-7.3-8">
   The capability to append ND options to the EDAR and EDAC messages is introduced in <xref target="RFC8929" section="3.1" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc8929#section-3.1" derivedContent="RFC8929"/>.
        </t>
        <t indent="0" pn="section-7.3-9">
   All other fields follow the same definition as specified in <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>. 
   The values for these fields and RFC references are maintained by IANA under the "Internet Control Message
    Protocol version 6 (ICMPv6) Parameters" <xref target="IANA.ICMP" format="default" sectionFormat="of" derivedContent="IANA.ICMP"/> registry group.
        </t>
      </section>
      <section anchor="multireg" numbered="true" removeInRFC="false" toc="include" pn="section-7.4">
        <name slugifiedName="name-updating-the-registration-o">Updating the Registration Operation</name>
        <t indent="0" pn="section-7.4-1">
   With <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>:
        </t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-7.4-2">
          <li pn="section-7.4-2.1">
   A router that expects to reboot may send a final RA message, upon which
   nodes should register elsewhere or redo the registration to the same router
   upon reboot.
   In all other cases, a node reboot is silent.
   When the node comes back to life, existing registration
   state might be lost if it was not safely stored, e.g., in persistent memory.
   </li>
          <li pn="section-7.4-2.2">
   Only unicast addresses can be registered.
   </li>
          <li pn="section-7.4-2.3">
   The 6LN must register all its Unique Local Addresses (ULAs) and Global Unicast Addresses (GUAs) with a NS(EARO).
   </li>
          <li pn="section-7.4-2.4">
   The 6LN may set the R flag in the EARO to obtain return reachability services from the 6LR, e.g., through ND proxy operations or by injecting the route in a route-over subnet.
   </li>
          <li pn="section-7.4-2.5">
   The 6LR maintains a registration state per Registered Address, including an
   NCE with the Link Layer Address (LLA) of the Registered Node (the 6LN here).
   </li>
        </ul>
        <t indent="0" pn="section-7.4-3">
   The operation for registering prefixes is similar to that for addresses from the
   perspective of the 6LN, but shows important differences on the router side,
   which maintains a separate state for each origin and merges them in its own
   advertisements. This specification adds the following behavior, similar to that introduced
   by <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/> for multicast addresses:
        </t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-7.4-4">
          <li pn="section-7.4-4.1">
            <t indent="0" pn="section-7.4-4.1.1">
   The EARO status indicating a "Registration Refresh Request" applies to prefixes
   as well.
            </t>
            <t indent="0" pn="section-7.4-4.1.2">
   This status is used in asynchronous NA(EARO) messages to indicate to peer 6LNs
   that they are requested to reregister all addresses and prefixes that were
   previously registered to the originating node. The NA message <bcp14>MAY</bcp14> be sent to
   a unicast or a multicast link-scope address and <bcp14>SHOULD</bcp14> be contained within
   the L2 range where nodes may effectively have registered/subscribed to this
   router, e.g., a radio broadcast domain to preserve energy and spectrum.
   
            </t>
            <t indent="0" pn="section-7.4-4.1.3">
   A device that wishes to refresh its state, e.g., upon reboot if it may have
   lost some registration state, <bcp14>SHOULD</bcp14> send an asynchronous NA(EARO) with this
   new status value. That asynchronous NA(EARO) <bcp14>SHOULD</bcp14> be sent to the all-nodes
   link-scope multicast address (ff02::1), and Target <bcp14>MUST</bcp14> be set to the 
   link-local address that was exposed previously by this node to accept 
   registrations, and the TID <bcp14>MUST</bcp14> be set to 0; the ROVR field <bcp14>MUST</bcp14> be set to 
   all zeros and ignored by the receiver.
            </t>
            <t indent="0" pn="section-7.4-4.1.4">
   In an environment with unreliable transmissions, the multicast NA(EARO) 
   message may be resent in a fast sequence, in which case the TID is incremented each time.
   A 6LN that has recently
   processed the NA(EARO)  indicating a "Registration Refresh Request"
   ignores the additional NA(EARO) also 
   indicating a "Registration Refresh Request" within the duration of 
   the fast sequence. That duration depends on the
   environment and has to be configured. By default, it is 10 seconds.
            </t>
          </li>
          <li pn="section-7.4-4.2">
            <t indent="0" pn="section-7.4-4.2.1">
   Registration for prefixes is now supported. The value of 3 in the P-Field of
   the EARO and the EDAR message signals when the registration is for a prefix
   as opposed to an address. DAD for prefixes and addresses becomes a prefix
   overlap match. Whether overlapping addresses and prefixes may be registered
   is a network policy decision and out of scope.
   The same prefix may be injected twice (multiple routes) as long as they use
   the same value of the ROVR.
            </t>
            <t indent="0" pn="section-7.4-4.2.2">
   Overlaps may be desirable. For instance, it may happen that a router or a 
   proxy (see <xref target="ext8929" format="default" sectionFormat="of" derivedContent="Section 10"/>) registers a prefix or an aggregation
   while a host using an address from that prefix or a prefix from that 
   aggregation also registers its piece.
            </t>
            <t indent="0" pn="section-7.4-4.2.3">
   In case of an overlapping registration, the longest prefix match wins, meaning that
   if the  network policy allows for overlapping registrations, then the
   routes for the registered prefixes are installed towards the node that
   registered with  the longest prefix match, all the way to /128.
            </t>
          </li>
          <li pn="section-7.4-4.3">
   If the 6LR acts as a border router to external prefixes or owns the prefixes entirely, 
   it <bcp14>SHOULD</bcp14> register all those prefixes on all interfaces from which it might be needed to relay traffic to that prefix. 
   It <bcp14>MUST</bcp14> set the P-Field in the
   EARO to 3 for those prefixes and set the R flag to receive the traffic 
   associated to the prefixes. It <bcp14>MAY</bcp14> refrain from registering a prefix
   on one interface if that prefix is already successfully registered on
   another interface, or the router handled the EDAR/EDAC flow by itself,
   to ensure that the prefix ownership is known and validated by the 6LBR. 
   Additionally, if the router expects to receive traffic for that prefix on that
   interface, it needs to ensure that the prefix is advertised some other way, 
   e.g., over a routing protocol such as RPL.
   </li>
          <li pn="section-7.4-4.4">
   The 6LN <bcp14>MAY</bcp14> set the R flag in the EARO to request the 6LR to redistribute
   the prefix on other links using a routing protocol. The 6LR <bcp14>MUST NOT</bcp14>
   reregister that prefix to yet another router unless loops are avoided some way,
   e.g., following a tree structure.
   </li>
          <li pn="section-7.4-4.5">
   The 6LR and the 6LBR are extended to accept more than one registration for
   the same prefix, since multiple 6LNs may register it. 
   The ROVR in the EARO identifies uniquely a registration
   within the namespace of the Registered Prefix.
   </li>
          <li pn="section-7.4-4.6">
    The 6LR <bcp14>MUST</bcp14> maintain a registration state per tuple (IPv6 prefix, prefix length, ROVR)
    for all registered prefixes. It <bcp14>SHOULD</bcp14> notify the 6LBR
    with an EDAR message, unless it determined that the 6LBR is legacy and does
	not support this specification (see <xref target="CIO" format="default" sectionFormat="of" derivedContent="Section 5"/>). In turn, the 6LBR <bcp14>MUST</bcp14> maintain a
    registration state per tuple (IPv6 prefix, ROVR) for all prefixes.
   </li>
        </ul>
      </section>
    </section>
    <section anchor="updating2" numbered="true" removeInRFC="false" toc="include" pn="section-8">
      <name slugifiedName="name-updating-rfc-9010">Updating RFC 9010</name>
      <t indent="0" pn="section-8-1">
   With <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/>:
      </t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-8-2">
        <li pn="section-8-2.1">
   The 6LR injects only unicast routes in RPL.
   </li>
        <li pn="section-8-2.2">
   Upon a registration with the R flag set to 1 in the EARO, the 6LR injects the address in the RPL unicast support.
   </li>
        <li pn="section-8-2.3">
   Upon receiving a packet directed to a unicast address for which it has an
   active registration, the 6LR delivers the packet as a unicast L2 frame
   to the LLA of the node that registered the unicast address.
   </li>
      </ul>
      <t indent="0" pn="section-8-3">
   This specification adds the following behavior:
      </t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-8-4">
        <li pn="section-8-4.1">
   Upon a registration with the R flag set to 1 and the P-Field set to 3 in the EARO, the 6LR injects the prefix in RPL using a prefix RTO.
   The P-Field in the RTP <bcp14>MUST</bcp14> be set to 3.
   
   </li>
        <li pn="section-8-4.2">
   Upon receiving a packet directed to an address that derives from a prefix for
   which it has at least one registration, the 6LR delivers a copy of the packet
   as a unicast L2 frame to the LLA of exactly one of the nodes that
   registered to that prefix, using the longest prefix match derivation to find the
   best 6LN.
   </li>
      </ul>
    </section>
    <section anchor="sec8928" numbered="true" removeInRFC="false" toc="include" pn="section-9">
      <name slugifiedName="name-updating-rfc-8928">Updating RFC 8928</name>
      <t indent="0" pn="section-9-1">
    "Address-Protected Neighbor Discovery for Low-Power and Lossy Networks" <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> was defined to protect the ownership of unicast IPv6 addresses that are registered with
    <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>.

</t>
      <t indent="0" pn="section-9-2">
    With Address-Protected Neighbor Discovery (AP-ND) <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/>, it is possible for a node to autoconfigure a
    pair of public and private keys and use them to sign the registration of
    addresses that are either autoconfigured or obtained through other methods.

</t>
      <t indent="0" pn="section-9-3">
    The first-hop router (the 6LR) can then validate a registration and
    perform source address validation on packets coming from the sender node
    (the 6LN).

</t>
      <t indent="0" pn="section-9-4">
    As multiple nodes may register the same prefix, the method specified
    in <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> cannot be used with node-local
    autoconfigured keypairs, which protect a single ownership only.
</t>
      <t indent="0" pn="section-9-5">
    For a prefix, as for an anycast or a multicast address, it is still possible
    to leverage AP-ND <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> to enforce the right to register.
    If AP-ND <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> is used, a keypair <bcp14>MUST</bcp14> be created and
    associated with the prefix before the prefix is deployed, and a ROVR <bcp14>MUST</bcp14> be
    generated from that keypair as specified in <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/>.
    The prefix and the ROVR <bcp14>MUST</bcp14> then be installed in the 6LBR at the first
    registration, or by an external mechanism such as IP Address Management 
	(IPAM) or DHCPv6 snooping prior to the first registration. 
	This way, the 6LBR can recognize the prefix
    on the future registrations and validate the right to register based on the
    ROVR.
</t>
      <t indent="0" pn="section-9-6">
    The keypair <bcp14>MUST</bcp14> then be provisioned in each node that needs to
    register the prefix or a prefix within, so the node can follow the
    steps in <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> to register the prefix.
</t>
      <t indent="0" pn="section-9-7">
    Upon receiving an NA message with the status set to 5 "Validation Requested", the
    node that registered the address or prefix performs the proof of ownership based
	on that longest prefix match.
</t>
    </section>
    <section anchor="ext8929" numbered="true" removeInRFC="false" toc="include" pn="section-10">
      <name slugifiedName="name-updating-rfc-8929">Updating RFC 8929</name>
      <t indent="0" pn="section-10-1">
  "IPv6 Backbone Router" <xref target="RFC8929" format="default" sectionFormat="of" derivedContent="RFC8929"/> defines a proxy 
  operation whereby a 6LoWPAN Border Router (6LBR)
  may impersonate a 6LN when performing an address registration.
  In that case, <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> messages are used as is, with
  one change that the SLLAO in the proxied NS(EARO) messages indicates the 
  Registering Node (the 6LBR) as opposed to the Registered Node (the 6LN).
  See Figure 5 of <xref target="RFC8929" format="default" sectionFormat="of" derivedContent="RFC8929"/> for an example of proxy operation
  by the 6LBR, which generates an NS(EARO) upon receiving an EDAR message.
</t>
      <t indent="0" pn="section-10-2">
   This specification updates that proxy operation with the updates in
   <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/> and defines the formats and content of the EARO, EDAR,
   and EDAC messages in order to support the P-Field and the signaling of
   prefixes. The proxy <bcp14>MUST</bcp14> use the P-Field as received 
  in the EDAR or NS(EARO) message to generate the proxied NS(EARO), and it <bcp14>MUST</bcp14>
  use the exact same prefix and prefix length as received in the case of 
  a prefix registration.
      
</t>
    </section>
    <section anchor="sec" numbered="true" removeInRFC="false" toc="include" pn="section-11">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-11-1">
    This specification updates <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>, and
    the security considerations of that document also apply to this document.
    In particular, the link layer <bcp14>SHOULD</bcp14> be sufficiently
    protected to prevent rogue access, else a rogue node with physical access
    to the network may inject packets and perform an attack from within.
</t>
      <t indent="0" pn="section-11-2">
   <xref target="sec8928" format="default" sectionFormat="of" derivedContent="Section 9"/> leverages AP-ND <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/> to prevent a
   rogue node from registering a unicast address that it does not own.
   The mechanism could be extended to anycast and multicast addresses 
   if the values of the ROVR they use are known in advance,
   but how this is done is
   not in scope for this specification.
   One way would be to authorize in advance the ROVR of the valid users.
   A less preferred way could be to synchronize the ROVR and TID values across
   the valid registering nodes as a preshared key material.
</t>
      <t indent="0" pn="section-11-3">
   In the latter case, it could be possible to update the keys associated to
   a prefix in all the 6LNs, but the flow is not clearly documented and may
   not complete in due time for all nodes in LLN use cases. It may be simpler
   to install an all-new address with new keys over a period of time and
   switch the traffic to that address when the migration is complete.
</t>
    </section>
    <section anchor="back" numbered="true" removeInRFC="false" toc="include" pn="section-12">
      <name slugifiedName="name-operational-considerations">Operational Considerations</name>
      <section anchor="legacy" numbered="true" removeInRFC="false" toc="include" pn="section-12.1">
        <name slugifiedName="name-partially-upgraded-networks">Partially Upgraded Networks</name>
        <t indent="0" pn="section-12.1-1">
   Devices may coexist while providing different support (i.e., only
   <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/>, both <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> and <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/>, or those two as well as this
   specification). The following cases may occur: 
</t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-12.1-2">
          <li pn="section-12.1-2.1">
   A legacy 6LN will not register prefixes, and the service will be
   the same when the network is upgraded.
</li>
          <li pn="section-12.1-2.2">
   A legacy 6LR will not set the F flag
   in the 6CIO and an upgraded 6LN will not register prefixes with that 
   router, though it may with other 6LRs that do support this specification.
</li>
          <li pn="section-12.1-2.3">
   Upon an EDAR message, a legacy 6LBR may not realize that the address being
   registered comes with a whole prefix, and return that it is duplicate in the
   EDAC status. The 6LR <bcp14>MUST</bcp14> ignore a duplicate status in the EDAR for prefixes.
</li>
        </ul>
      </section>
      <section anchor="LLN" numbered="true" removeInRFC="false" toc="include" pn="section-12.2">
        <name slugifiedName="name-application-to-rpl-based-ro">Application to RPL-Based Route-Over LLNs</name>
        <t indent="0" pn="section-12.2-1">
   This specification also updates <xref target="RFC6550" format="default" sectionFormat="of" derivedContent="RFC6550"/> and
   <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/> in the case of a route-over multilink subnet based
   on the RPL routing protocol, to add multicast ingress replication in
   Non-Storing Mode and anycast support in both Storing and Non-Storing modes.
   A 6LR that implements the RPL extensions specified therein <bcp14>MUST</bcp14> also
   implement <xref target="RFC9010" format="default" sectionFormat="of" derivedContent="RFC9010"/>.
        </t>
        <t indent="0" pn="section-12.2-2">
    <xref target="figref" format="default" sectionFormat="of" derivedContent="Figure 5"/> illustrates the classical situation of an LLN as a
    single IPv6 subnet, with a 6LoWPAN Border Router (6LBR) that acts as Root
    for RPL operations and as Address Registrar for 6LoWPAN ND.
        </t>
        <figure anchor="figref" align="center" suppress-title="false" pn="figure-5">
          <name slugifiedName="name-rpl-based-route-over-lln">RPL-Based Route-Over LLN</name>
          <artwork align="left" pn="section-12.2-3.1">
         .- -- .
      .-(        ).
     (   Internet   )
    (___.________.___)
              |
   ---+-------+--
      |
    +--------+
    |  6LBR  |
    | (Root) |
    +--------+
    o   o  o  o
      o   o  o
 o  o  o       o  o  o
 o  o  o  LLN   o   +-------+
   o  o          o  |  6LR  | RPL Router
   o o    o   o     +-------+
   o  o    o  o          +-------+  RPL
          o              |  6LN  |  leaf
                         +-------+  L

  o : LLN node
</artwork>
        </figure>
        <t indent="0" pn="section-12.2-4">
   A RPL leaf L acting as a 6LN registers its addresses and prefixes 
   to a RPL router acting as a 6LR, using a L2 unicast NS message
   with an EARO as specified in <xref target="RFC8505" format="default" sectionFormat="of" derivedContent="RFC8505"/> and <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/>. 
   Note that a RPL leaf acting as 6LN may still be a border router for another
   routing protocol, an access router for an IP link, or a virtual Router
   serving virtual machines or applications within the same physical node.
   Note also that a RPL-aware Leaf would preferably leverage RPL directly
   to inject routes, to fully leverage the routing protocol.
   The registration state is periodically renewed by the Registering Node (the 6LN),
   before the lifetime indicated in the EARO expires (at the 6LR). As for unicast IPv6
   addresses, the 6LR uses an Extended Duplicate Address Request/Confirmation 
   (EDAR/EDAC) exchange with the 6LBR to notify the 6LBR of the presence of the listeners.
   With this specification, a router that owns a prefix or provides reachability
   to an external prefix but is not a RPL router can also register those
   prefixes with the R flag set, to enable reachability to the prefix
   within the RPL domain.
</t>
      </section>
      <section anchor="Shared" numbered="true" removeInRFC="false" toc="include" pn="section-12.3">
        <name slugifiedName="name-application-to-a-shared-lin">Application to a Shared Link</name>
        <t indent="0" pn="section-12.3-1">
    A shared link is a situation where more than one prefix is deployed over
    an L2 link (say, a switched Ethernet fabric or a Wi-Fi Extended Service Set (ESS) federating multiple Access Points (APs)),
    and not necessarily all nodes are aware of all prefixes. <xref target="figshared" format="default" sectionFormat="of" derivedContent="Figure 6"/> depicts such
    a situation, with two routers 6LR1 and 6LR2 that own respective prefixes P1::
    and P2:: and expose those in their RA messages over the same link.
    Note that the shared link maybe operated with any combination of NDP and SND 
    as discussed in <xref target="I-D.ietf-6man-ipv6-over-wireless" section="7" format="default" sectionFormat="of" derivedLink="https://datatracker.ietf.org/doc/html/draft-ietf-6man-ipv6-over-wireless-09#section-7" derivedContent="IPv6-over-NBMA"/>.
</t>
        <figure anchor="figshared" align="center" suppress-title="false" pn="figure-6">
          <name slugifiedName="name-shared-link">Shared Link</name>
          <artwork align="left" pn="section-12.3-2.1">
         .- -- .
      .-(        ).
     (   Internet   )
    (___.________.___)
          |
     +----+--+          +-------+
     | P1::a |          | P2::b |
     | 6LR1  |          | 6LR2  |
     +---+---+          +---+---+
         |                  |
  ----+--+------+---------+-+-------+---------+----
      |         |         |         |         |
   +--+--+   +--+--+   +--+--+   +--+--+   +--+--+
   |P1::c|   |P2::d|   |P2::e|   |P1::f|   |P1::g|
   +-----+   +-----+   +-----+   +-----+   +-----+</artwork>
        </figure>
        <t indent="0" pn="section-12.3-3">
    Say that 6LR1 is the router providing access to the outside, and 6LR2 is
    aware of 6LR1 as its default gateway. With this specification, 6LR2
    registers P2:: to 6LR1, and 6LR1 installs a route to P2:: via 6LR2. This way,
    addresses that derive from P2:: can still be reached via 6LR1 and then 6LR2.
    
    6LR2 may then leverage ICMP Redirect messages <xref target="RFC4861" format="default" sectionFormat="of" derivedContent="RFC4861"/> to shorten the
    path between 6LR1 and the nodes that own those addresses.
        </t>
        <t indent="0" pn="section-12.3-4"> If P2 were delegated by 6LR1, e.g., using DHCPv6 <xref target="RFC9915" format="default" sectionFormat="of" derivedContent="RFC9915"/>, 
    then the expectation is that 6LR1 aggregates
    P1:: and P2:: in its advertisements to the outside, and there is no need to
    set the R flag. However, unless 6LR2 knows about such a situation, e.g., through
    configuration, 6LR2 <bcp14>SHOULD</bcp14> set the R flag requesting
    6LR1 to advertise P2:: so as to obtain reachability.
</t>
      </section>
      <section anchor="Hub" numbered="true" removeInRFC="false" toc="include" pn="section-12.4">
        <name slugifiedName="name-application-to-a-hub-link-w">Application to a Hub Link with Stub Spokes</name>
        <t indent="0" pn="section-12.4-1">
    A hub link is a situation where stub links are deployed around a backbone and
    interconnected by routers. <xref target="fighub" format="default" sectionFormat="of" derivedContent="Figure 7"/> depicts such
    a situation, with one router 6LR1 serving the hub link and at least one
    router like 6LR2 and 6LR3 providing connectivity from the stub links to the
    hub link. In this example, say that there is one prefix on each link --
    P1:: on the hub link, and P2:: and P3:: on the stub links.
</t>
        <figure anchor="fighub" align="center" suppress-title="false" pn="figure-7">
          <name slugifiedName="name-hub-and-stubs">Hub and Stubs</name>
          <artwork align="left" pn="section-12.4-2.1">
   +-----+   +-----+   +-----+       +-----+
   |P2::s|   |P2::d|   |P2::e|       |P2::f|
   +--+--+   +--+--+   +--+--+       +--+--+
      |         |         |             |
  ----+----+----+---------+--STUB-LINK--+-----
           |
       +---+---+              +-------+
       | P2::r |              |       |        .- --..
       | 6LR2  |              | 6LR1  +---- .-(       ).
       | P1::b |              | P1::a |   (   Internet  )
       +---+---+              +---+---+  (___._______.___)
           |                      |              |
  -------+-+---------+--HUB-LINK--+-----+--      |
         |           |                  |        |
     +---+---+    +--+--+           +---+---+    |
     | P1::c |    |P1::n|           | P1::q |    |
     | 6LR3  |    +-----+           | 6LR4  +----+
     | P3::m |                      | P3::a |
     +---+---+                      +---+---+
         |                              |
  ----+--+------+---------+--STUB-LINK--+-+-----
      |         |         |               |
   +--+--+   +--+--+   +--+--+         +--+--+
   |P3::h|   |P3::i|   |P3::j|         |P3::k|
   +-----+   +-----+   +-----+         +-----+</artwork>
        </figure>
        <t indent="0" pn="section-12.4-3">
    As before, say that 6LR1 is the router providing access to the outside, and
    6LR2 is aware of 6LR1 as its default gateway. With this specification, 6LR2
    registers P2:: to 6LR1, and 6LR1 installs a route to P2:: via 6LR2. This way,
    nodes on the stub link behind 6LR2 that derive their addresses from P2:: can
    still be reached via 6LR1 and then 6LR2. The same goes for 6LR3 and any other
    routers serving stub links.
</t>
        <t indent="0" pn="section-12.4-4">
    If P2 were delegated by 6LR1, then the expectation is that 6LR1 aggregates
    P1:: and P2:: in its advertisements to the outside, and there is no need to
    set the R flag. However, unless 6LR2 knows about such a situation, e.g., through
    configuration, 6LR2 <bcp14>SHOULD</bcp14> set the R flag requesting
    6LR1 to advertise P2:: so as to obtain reachability.
</t>
        <t indent="0" pn="section-12.4-5">
    In this example, routers 6LR3 and 6LR4 both connect to the same stub link where subnet P3 is installed.
    They may both register P3 to 6LR1, and 6LR1 will apply its own load-balancing logic to use
    either of the routers.
</t>
      </section>
    </section>
    <section numbered="true" removeInRFC="false" toc="include" pn="section-13">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-13-1">
    IANA has made changes under the "Internet Control Message
    Protocol version 6 (ICMPv6) Parameters" <xref target="IANA.ICMP" format="default" sectionFormat="of" derivedContent="IANA.ICMP"/> and the
    "Routing Protocol for Low Power and Lossy Networks (RPL)" <xref target="IANA.RPL" format="default" sectionFormat="of" derivedContent="IANA.RPL"/>
    registry groups, as follows.
</t>
      <section anchor="PF" numbered="true" removeInRFC="false" toc="include" pn="section-13.1">
        <name slugifiedName="name-updated-p-field-registry">Updated P-Field Registry</name>
        <t indent="0" pn="section-13.1-1">
    This specification updates the P-Field introduced in <xref target="RFC9685" format="default" sectionFormat="of" derivedContent="RFC9685"/> to assign the value of 3, which is
    the only remaining unassigned value for the 2-bit field. To that effect,
    IANA has updated the "P-Field Values" registry in the
    "Internet Control Message Protocol version 6 (ICMPv6) Parameters" registry group
    as indicated in <xref target="AM2" format="default" sectionFormat="of" derivedContent="Table 2"/>:
        </t>
        <table anchor="AM2" align="center" pn="table-2">
          <name slugifiedName="name-new-p-field-value-2">New P-Field Value</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Meaning</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">3</td>
              <td align="left" colspan="1" rowspan="1">Registration for a Unicast Prefix</td>
              <td align="left" colspan="1" rowspan="1">RFC 9926</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="CIOF" numbered="true" removeInRFC="false" toc="include" pn="section-13.2">
        <name slugifiedName="name-new-6lowpan-capability-bit">New 6LoWPAN Capability Bit</name>
        <t indent="0" pn="section-13.2-1">
    IANA has made an addition to the
    "6LoWPAN Capability Bits" <xref target="IANA.ICMP.6CIO" format="default" sectionFormat="of" derivedContent="IANA.ICMP.6CIO"/> registry in the
    "Internet Control Message Protocol version 6 (ICMPv6) Parameters" registry group
    as indicated in <xref target="CIOdat" format="default" sectionFormat="of" derivedContent="Table 3"/>:
        </t>
        <t indent="0" pn="section-13.2-2">IANA has fixed the description of bit 9 (the  "A" flag defined in <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/>).
   It is not called "1" but "A".
        </t>
        <table anchor="CIOdat" align="center" pn="table-3">
          <name slugifiedName="name-new-6lowpan-capability-bit-2">New 6LoWPAN Capability Bit</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Bit</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">9</td>
              <td align="left" colspan="1" rowspan="1">AP-ND Enabled (A bit)</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC8928" format="default" sectionFormat="of" derivedContent="RFC8928"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">16</td>
              <td align="left" colspan="1" rowspan="1">Registration for prefixes supported (F bit)</td>
              <td align="left" colspan="1" rowspan="1">RFC 9926</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.ietf-6man-ipv6-over-wireless" to="IPv6-over-NBMA"/>
    <references pn="section-14">
      <name slugifiedName="name-normative-references">Normative References</name>
      <reference anchor="IANA.ICMP" target="https://www.iana.org/assignments/icmpv6-parameters" quoteTitle="true" derivedAnchor="IANA.ICMP">
        <front>
          <title>Internet Control Message Protocol version 6 (ICMPv6) Parameters</title>
          <author>
            <organization showOnFrontPage="true">IANA</organization>
          </author>
        </front>
      </reference>
      <reference anchor="IANA.ICMP.6CIO" target="https://www.iana.org/assignments/icmpv6-parameters" quoteTitle="true" derivedAnchor="IANA.ICMP.6CIO">
        <front>
          <title>6LoWPAN Capability Bits</title>
          <author>
            <organization showOnFrontPage="true">IANA</organization>
          </author>
        </front>
      </reference>
      <reference anchor="IANA.RPL" target="https://www.iana.org/assignments/rpl" quoteTitle="true" derivedAnchor="IANA.RPL">
        <front>
          <title>Routing Protocol for Low Power and Lossy Networks (RPL)</title>
          <author>
            <organization showOnFrontPage="true">IANA</organization>
          </author>
        </front>
      </reference>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC4861" target="https://www.rfc-editor.org/info/rfc4861" quoteTitle="true" derivedAnchor="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 indent="0">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" target="https://www.rfc-editor.org/info/rfc4862" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC6550" target="https://www.rfc-editor.org/info/rfc6550" quoteTitle="true" derivedAnchor="RFC6550">
        <front>
          <title>RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks</title>
          <author fullname="T. Winter" initials="T." role="editor" surname="Winter"/>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <author fullname="A. Brandt" initials="A." surname="Brandt"/>
          <author fullname="J. Hui" initials="J." surname="Hui"/>
          <author fullname="R. Kelsey" initials="R." surname="Kelsey"/>
          <author fullname="P. Levis" initials="P." surname="Levis"/>
          <author fullname="K. Pister" initials="K." surname="Pister"/>
          <author fullname="R. Struik" initials="R." surname="Struik"/>
          <author fullname="JP. Vasseur" initials="JP." surname="Vasseur"/>
          <author fullname="R. Alexander" initials="R." surname="Alexander"/>
          <date month="March" year="2012"/>
          <abstract>
            <t indent="0">Low-Power and Lossy Networks (LLNs) are a class of network in which both the routers and their interconnect are constrained. LLN routers typically operate with constraints on processing power, memory, and energy (battery power). Their interconnects are characterized by high loss rates, low data rates, and instability. LLNs are comprised of anything from a few dozen to thousands of routers. Supported traffic flows include point-to-point (between devices inside the LLN), point-to-multipoint (from a central control point to a subset of devices inside the LLN), and multipoint-to-point (from devices inside the LLN towards a central control point). This document specifies the IPv6 Routing Protocol for Low-Power and Lossy Networks (RPL), which provides a mechanism whereby multipoint-to-point traffic from devices inside the LLN towards a central control point as well as point-to-multipoint traffic from the central control point to the devices inside the LLN are supported. Support for point-to-point traffic is also available. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6550"/>
        <seriesInfo name="DOI" value="10.17487/RFC6550"/>
      </reference>
      <reference anchor="RFC6775" target="https://www.rfc-editor.org/info/rfc6775" quoteTitle="true" derivedAnchor="RFC6775">
        <front>
          <title>Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)</title>
          <author fullname="Z. Shelby" initials="Z." role="editor" surname="Shelby"/>
          <author fullname="S. Chakrabarti" initials="S." surname="Chakrabarti"/>
          <author fullname="E. Nordmark" initials="E." surname="Nordmark"/>
          <author fullname="C. Bormann" initials="C." surname="Bormann"/>
          <date month="November" year="2012"/>
          <abstract>
            <t indent="0">The IETF work in IPv6 over Low-power Wireless Personal Area Network (6LoWPAN) defines 6LoWPANs such as IEEE 802.15.4. This and other similar link technologies have limited or no usage of multicast signaling due to energy conservation. In addition, the wireless network may not strictly follow the traditional concept of IP subnets and IP links. IPv6 Neighbor Discovery was not designed for non- transitive wireless links, as its reliance on the traditional IPv6 link concept and its heavy use of multicast make it inefficient and sometimes impractical in a low-power and lossy network. This document describes simple optimizations to IPv6 Neighbor Discovery, its addressing mechanisms, and duplicate address detection for Low- power Wireless Personal Area Networks and similar networks. The document thus updates RFC 4944 to specify the use of the optimizations defined here. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6775"/>
        <seriesInfo name="DOI" value="10.17487/RFC6775"/>
      </reference>
      <reference anchor="RFC7400" target="https://www.rfc-editor.org/info/rfc7400" quoteTitle="true" derivedAnchor="RFC7400">
        <front>
          <title>6LoWPAN-GHC: Generic Header Compression for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)</title>
          <author fullname="C. Bormann" initials="C." surname="Bormann"/>
          <date month="November" year="2014"/>
          <abstract>
            <t indent="0">RFC 6282 defines header compression in 6LoWPAN packets (where "6LoWPAN" refers to "IPv6 over Low-Power Wireless Personal Area Network"). The present document specifies a simple addition that enables the compression of generic headers and header-like payloads, without a need to define a new header compression scheme for each such new header or header-like payload.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7400"/>
        <seriesInfo name="DOI" value="10.17487/RFC7400"/>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="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 indent="0">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>
      <reference anchor="RFC8200" target="https://www.rfc-editor.org/info/rfc8200" quoteTitle="true" derivedAnchor="RFC8200">
        <front>
          <title>Internet Protocol, Version 6 (IPv6) Specification</title>
          <author fullname="S. Deering" initials="S." surname="Deering"/>
          <author fullname="R. Hinden" initials="R." surname="Hinden"/>
          <date month="July" year="2017"/>
          <abstract>
            <t indent="0">This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="86"/>
        <seriesInfo name="RFC" value="8200"/>
        <seriesInfo name="DOI" value="10.17487/RFC8200"/>
      </reference>
      <reference anchor="RFC8505" target="https://www.rfc-editor.org/info/rfc8505" quoteTitle="true" derivedAnchor="RFC8505">
        <front>
          <title>Registration Extensions for IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <author fullname="E. Nordmark" initials="E." surname="Nordmark"/>
          <author fullname="S. Chakrabarti" initials="S." surname="Chakrabarti"/>
          <author fullname="C. Perkins" initials="C." surname="Perkins"/>
          <date month="November" year="2018"/>
          <abstract>
            <t indent="0">This specification updates RFC 6775 -- the Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery specification -- to clarify the role of the protocol as a registration technique and simplify the registration operation in 6LoWPAN routers, as well as to provide enhancements to the registration capabilities and mobility detection for different network topologies, including the Routing Registrars performing routing for host routes and/or proxy Neighbor Discovery in a low-power network.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8505"/>
        <seriesInfo name="DOI" value="10.17487/RFC8505"/>
      </reference>
      <reference anchor="RFC8928" target="https://www.rfc-editor.org/info/rfc8928" quoteTitle="true" derivedAnchor="RFC8928">
        <front>
          <title>Address-Protected Neighbor Discovery for Low-Power and Lossy Networks</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <author fullname="B. Sarikaya" initials="B." surname="Sarikaya"/>
          <author fullname="M. Sethi" initials="M." surname="Sethi"/>
          <author fullname="R. Struik" initials="R." surname="Struik"/>
          <date month="November" year="2020"/>
          <abstract>
            <t indent="0">This document updates the IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery (ND) protocol defined in RFCs 6775 and 8505. The new extension is called Address-Protected Neighbor Discovery (AP-ND), and it protects the owner of an address against address theft and impersonation attacks in a Low-Power and Lossy Network (LLN). Nodes supporting this extension compute a cryptographic identifier (Crypto-ID), and use it with one or more of their Registered Addresses. The Crypto-ID identifies the owner of the Registered Address and can be used to provide proof of ownership of the Registered Addresses. Once an address is registered with the Crypto-ID and a proof of ownership is provided, only the owner of that address can modify the registration information, thereby enforcing Source Address Validation.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8928"/>
        <seriesInfo name="DOI" value="10.17487/RFC8928"/>
      </reference>
      <reference anchor="RFC8929" target="https://www.rfc-editor.org/info/rfc8929" quoteTitle="true" derivedAnchor="RFC8929">
        <front>
          <title>IPv6 Backbone Router</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <author fullname="C.E. Perkins" initials="C.E." surname="Perkins"/>
          <author fullname="E. Levy-Abegnoli" initials="E." surname="Levy-Abegnoli"/>
          <date month="November" year="2020"/>
          <abstract>
            <t indent="0">This document updates RFCs 6775 and 8505 in order to enable proxy services for IPv6 Neighbor Discovery by Routing Registrars called "Backbone Routers". Backbone Routers are placed along the wireless edge of a backbone and federate multiple wireless links to form a single Multi-Link Subnet (MLSN).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8929"/>
        <seriesInfo name="DOI" value="10.17487/RFC8929"/>
      </reference>
      <reference anchor="RFC9010" target="https://www.rfc-editor.org/info/rfc9010" quoteTitle="true" derivedAnchor="RFC9010">
        <front>
          <title>Routing for RPL (Routing Protocol for Low-Power and Lossy Networks) Leaves</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <author fullname="M. Richardson" initials="M." surname="Richardson"/>
          <date month="April" year="2021"/>
          <abstract>
            <t indent="0">This specification provides a mechanism for a host that implements a routing-agnostic interface based on IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Neighbor Discovery to obtain reachability services across a network that leverages RFC 6550 for its routing operations. It updates RFCs 6550, 6775, and 8505.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9010"/>
        <seriesInfo name="DOI" value="10.17487/RFC9010"/>
      </reference>
      <reference anchor="RFC9685" target="https://www.rfc-editor.org/info/rfc9685" quoteTitle="true" derivedAnchor="RFC9685">
        <front>
          <title>Listener Subscription for IPv6 Neighbor Discovery Multicast and Anycast Addresses</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <date month="November" year="2024"/>
          <abstract>
            <t indent="0">This document updates the 6LoWPAN extensions to IPv6 Neighbor Discovery (specified in RFCs 4861 and 8505) to enable a listener to subscribe to an IPv6 anycast or multicast address. This document also updates the Routing Protocol for Low-Power and Lossy Networks (RPL) (specified in RFCs 6550 and 6553) to add a new Non-Storing multicast mode and new support for anycast addresses in Storing and Non-Storing modes. This document extends RFC 9010 to enable a 6LoWPAN Router (6LR) to inject the anycast and multicast addresses in RPL.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9685"/>
        <seriesInfo name="DOI" value="10.17487/RFC9685"/>
      </reference>
    </references>
    <references pn="section-15">
      <name slugifiedName="name-informative-references">Informative References</name>
      <referencegroup anchor="BCP38" target="https://www.rfc-editor.org/info/bcp38" derivedAnchor="BCP38">
        <reference anchor="RFC2827" target="https://www.rfc-editor.org/info/rfc2827" quoteTitle="true">
          <front>
            <title>Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing</title>
            <author fullname="P. Ferguson" initials="P." surname="Ferguson"/>
            <author fullname="D. Senie" initials="D." surname="Senie"/>
            <date month="May" year="2000"/>
            <abstract>
              <t indent="0">This paper discusses a simple, effective, and straightforward method for using ingress traffic filtering to prohibit DoS (Denial of Service) attacks which use forged IP addresses to be propagated from 'behind' an Internet Service Provider's (ISP) aggregation point. 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="38"/>
          <seriesInfo name="RFC" value="2827"/>
          <seriesInfo name="DOI" value="10.17487/RFC2827"/>
        </reference>
      </referencegroup>
      <reference anchor="IEEE80211" target="https://ieeexplore.ieee.org/document/9363693" quoteTitle="true" derivedAnchor="IEEE80211">
        <front>
          <title>IEEE Standard for Information Technology -- Telecommunications and Information Exchange between Systems - Local and Metropolitan Area Networks -- Specific Requirements - Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications</title>
          <author>
            <organization showOnFrontPage="true">IEEE</organization>
          </author>
          <date/>
        </front>
        <seriesInfo name="IEEE Std" value="802.11-2022"/>
        <seriesInfo name="DOI" value="10.1109/IEEESTD.2021.9363693"/>
      </reference>
      <reference anchor="IEEE802151" target="https://ieeexplore.ieee.org/document/1016473" quoteTitle="true" derivedAnchor="IEEE802151">
        <front>
          <title>IEEE Standard for Telecommunications and Information Exchange Between Systems - LAN/MAN - Specific Requirements - Part 15: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Wireless Personal Area Networks (WPANs)</title>
          <author>
            <organization showOnFrontPage="true">IEEE</organization>
          </author>
        </front>
        <seriesInfo name="IEEE Std" value="802.15.1-2002"/>
        <seriesInfo name="DOI" value="10.1109/IEEESTD.2002.93621"/>
      </reference>
      <reference anchor="IEEE802154" target="https://ieeexplore.ieee.org/document/1700009" quoteTitle="true" derivedAnchor="IEEE802154">
        <front>
          <title>IEEE Standard for Information technology -- Local and metropolitan area networks -- Specific requirements -- Part 15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low Rate Wireless Personal Area Networks (WPANs)</title>
          <author>
            <organization showOnFrontPage="true">IEEE</organization>
          </author>
        </front>
        <seriesInfo name="IEEE Std" value="802.15.4-2006"/>
        <seriesInfo name="DOI" value="10.1109/IEEESTD.2006.232110"/>
      </reference>
      <reference anchor="I-D.ietf-6man-ipv6-over-wireless" target="https://datatracker.ietf.org/doc/html/draft-ietf-6man-ipv6-over-wireless-09" quoteTitle="true" derivedAnchor="IPv6-over-NBMA">
        <front>
          <title>Architecture and Framework for IPv6 over Non-Broadcast Access</title>
          <author fullname="Pascal Thubert" initials="P." surname="Thubert"/>
          <author fullname="Michael Richardson" initials="M." surname="Richardson">
            <organization showOnFrontPage="true">Sandelman Software Works</organization>
          </author>
          <date day="9" month="November" year="2025"/>
          <abstract>
            <t indent="0">This document presents an architecture and framework for IPv6 access networks that decouples the network-layer concepts of Links, Interface, and Subnets from the link-layer concepts of links, ports, and broadcast domains, and limits the reliance on link-layer broadcasts. This architecture is suitable for IPv6 over any network, including non-broadcast networks, which is typically the case for intangible media such as wireless and virtual networks such as overlays. A study of the issues with IPv6 ND over intangible media is presented, and a framework to solve those issues within the new architecture is proposed.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-6man-ipv6-over-wireless-09"/>
        <refcontent>Work in Progress</refcontent>
      </reference>
      <reference anchor="RFC4191" target="https://www.rfc-editor.org/info/rfc4191" quoteTitle="true" derivedAnchor="RFC4191">
        <front>
          <title>Default Router Preferences and More-Specific Routes</title>
          <author fullname="R. Draves" initials="R." surname="Draves"/>
          <author fullname="D. Thaler" initials="D." surname="Thaler"/>
          <date month="November" year="2005"/>
          <abstract>
            <t indent="0">This document describes an optional extension to Router Advertisement messages for communicating default router preferences and more-specific routes from routers to hosts. This improves the ability of hosts to pick an appropriate router, especially when the host is multi-homed and the routers are on different links. The preference values and specific routes advertised to hosts require administrative configuration; they are not automatically derived from routing tables. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4191"/>
        <seriesInfo name="DOI" value="10.17487/RFC4191"/>
      </reference>
      <reference anchor="RFC4919" target="https://www.rfc-editor.org/info/rfc4919" quoteTitle="true" derivedAnchor="RFC4919">
        <front>
          <title>IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs): Overview, Assumptions, Problem Statement, and Goals</title>
          <author fullname="N. Kushalnagar" initials="N." surname="Kushalnagar"/>
          <author fullname="G. Montenegro" initials="G." surname="Montenegro"/>
          <author fullname="C. Schumacher" initials="C." surname="Schumacher"/>
          <date month="August" year="2007"/>
          <abstract>
            <t indent="0">This document describes the assumptions, problem statement, and goals for transmitting IP over IEEE 802.15.4 networks. The set of goals enumerated in this document form an initial set only. This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4919"/>
        <seriesInfo name="DOI" value="10.17487/RFC4919"/>
      </reference>
      <reference anchor="RFC6282" target="https://www.rfc-editor.org/info/rfc6282" quoteTitle="true" derivedAnchor="RFC6282">
        <front>
          <title>Compression Format for IPv6 Datagrams over IEEE 802.15.4-Based Networks</title>
          <author fullname="J. Hui" initials="J." role="editor" surname="Hui"/>
          <author fullname="P. Thubert" initials="P." surname="Thubert"/>
          <date month="September" year="2011"/>
          <abstract>
            <t indent="0">This document updates RFC 4944, "Transmission of IPv6 Packets over IEEE 802.15.4 Networks". This document specifies an IPv6 header compression format for IPv6 packet delivery in Low Power Wireless Personal Area Networks (6LoWPANs). The compression format relies on shared context to allow compression of arbitrary prefixes. How the information is maintained in that shared context is out of scope. This document specifies compression of multicast addresses and a framework for compressing next headers. UDP header compression is specified within this framework. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6282"/>
        <seriesInfo name="DOI" value="10.17487/RFC6282"/>
      </reference>
      <reference anchor="RFC9030" target="https://www.rfc-editor.org/info/rfc9030" quoteTitle="true" derivedAnchor="RFC9030">
        <front>
          <title>An Architecture for IPv6 over the Time-Slotted Channel Hopping Mode of IEEE 802.15.4 (6TiSCH)</title>
          <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
          <date month="May" year="2021"/>
          <abstract>
            <t indent="0">This document describes a network architecture that provides low-latency, low-jitter, and high-reliability packet delivery. It combines a high-speed powered backbone and subnetworks using IEEE 802.15.4 time-slotted channel hopping (TSCH) to meet the requirements of low-power wireless deterministic applications.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9030"/>
        <seriesInfo name="DOI" value="10.17487/RFC9030"/>
      </reference>
      <reference anchor="RFC9915" target="https://www.rfc-editor.org/info/rfc9915" quoteTitle="true" derivedAnchor="RFC9915">
        <front>
          <title>Dynamic Host Configuration Protocol for IPv6 (DHCPv6)</title>
          <author fullname="T. Mrugalski" initials="T." surname="Mrugalski"/>
          <author fullname="B. Volz" initials="B." surname="Volz"/>
          <author fullname="M. Richardson" initials="M." surname="Richardson"/>
          <author fullname="S. Jiang" initials="S." surname="Jiang"/>
          <author fullname="T. Winters" initials="T." surname="Winters"/>
          <date month="January" year="2026"/>
          <abstract>
            <t indent="0">This document specifies the Dynamic Host Configuration Protocol for IPv6 (DHCPv6), an extensible mechanism for configuring nodes with network configuration parameters, IP addresses, and prefixes. Parameters can be provided statelessly or in combination with stateful assignment of one or more IPv6 addresses and/or IPv6 prefixes. DHCPv6 can operate either in place of or in addition to stateless address autoconfiguration (SLAAC).</t>
            <t indent="0">This document obsoletes RFC 8415. It incorporates verified errata and obsoletes the assignment of temporary addresses (the IA_TA option) and the server unicast capability (the Server Unicast option and UseMulticast status code).</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="102"/>
        <seriesInfo name="RFC" value="9915"/>
        <seriesInfo name="DOI" value="10.17487/RFC9915"/>
      </reference>
      <reference anchor="WI-SUN" target="https://wi-sun.org/" quoteTitle="true" derivedAnchor="WI-SUN">
        <front>
          <title>Wi-SUN Alliance</title>
          <author/>
          <date/>
        </front>
      </reference>
    </references>
    <section numbered="false" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">
   Many thanks to <contact fullname="Dave Thaler"/> and <contact fullname="Dan    Romascanu"/> for their early reviews, <contact fullname="Adnan Rashid"/>
   for all his contributions, and <contact fullname="Éric Vyncke"/> for his
   in-depth AD review.  Many thanks as well to the reviewers of the IETF Last
   Call and IESG rounds: <contact fullname="Dan Romascanu"/>, <contact fullname="Shuping Peng"/>, <contact fullname="Mohamed Boucadair"/>,
   <contact fullname="Paul Wouters"/>, <contact fullname="Ketan Talaulikar"/>,
   <contact fullname="Gunter Van de Velde"/>, <contact fullname="Mike    Bishop"/>, and <contact fullname="Roman Danyliw"/>.
</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-address">Author's Address</name>
      <author initials="P" surname="Thubert" fullname="Pascal Thubert" role="editor">
        <address>
          <postal>
            <city>Roquefort-les-Pins</city>
            <code>06330</code>
            <country>France</country>
          </postal>
          <email>pascal.thubert@gmail.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
