<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc>
<rfc category="std" submissionType="IETF" docName="draft-hui-stub-router-ra-flag-01" ipr="trust200902"
     xmlns:xi="http://www.w3.org/2001/XInclude" version="3" consensus="true"
     sortRefs="true" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <front>
    <title abbrev="Stub Router RA Flag">
      Stub Router Flag in ICMPv6 Router Advertisement Messages
    </title>
    <author initials="J" surname="Hui" fullname="Jonathan Hui">
      <organization>Google LLC</organization>
      <address>
        <postal>
          <street>1600 Amphitheatre Parkway</street>
          <city>Mountain View</city>
          <region>California</region>
          <code>940432</code>
          <country>US</country>
        </postal>
        <email>jonhui@google.com</email>
      </address>
    </author>

    <date year='2023'/>
    <area>Internet</area>
    <workgroup>Internet Engineering Task Force</workgroup>

    <abstract>
      <t>This document defines a new Stub Router flag in the Router Advertisement message to distinguish configuration information sent by stub routers from infrastructure routers. For example, the Stub Router flag allows stub routers to easily identify when an infrastructure router is advertising a usable IPv6 prefix, triggering the stub router to not advertise its own routable prefix.</t>
    </abstract>
  </front>

  <middle>
    <section>
      <name>Introduction</name>

      <t>A stub router provides IP connectivity between a stub network and an infrastructure network. A common stub router example is a device that attaches a 6LoWPAN-based network to a home network.</t>

      <t>To support IPv6 reachability between infrastructure network devices and stub network devices, routable IPv6 addresses must be configured on both the infrastructure and stub networks. Routers on the infrastructure network may configure routable IPv6 prefixes using Router Advertisements (RAs) containing Prefix Information Options (PIOs) <xref target="RFC4861"/>.</t>

      <t>In cases where the infrastructure network does not provide routable IPv6 address configuration, the stub router is responsible for configuring routable IPv6 addresses on the infrastructure network. If a stub router determines that routable IPv6 addresses are not available on the infrastructure link, it will locally generate a Unique Local Address (ULA) Prefix <xref target="RFC4193"/> and begin advertising that via a PIO contained in RA messages.</t>

      <t>Both infrastructure routers and stub routers may advertise routable IPv6 prefixes in the same way (via RAs containing PIOs). To distinguish between an infrastructure router and a stub router, this document defines a new Stub Router flag in the RA message. The Stub Router flag allows stub routers to easily identify when an infrastructure router is advertising a routable IPv6 prefix, triggering the stub router to stop advertising its ULA prefix.</t>
    </section>

    <section>
      <name>Terminology</name>

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

    <section>
      <name>Stub Router Flag</name>

      <t>This document defines a new "Stub Router" flag as flag bit 8 in the Router Advertisement flags field. Setting the Stub Router flag requires use of the RA Flags Extension Option <xref target="RFC5175"/> to encode the flag.</t>

      <figure>
        <name>Router Advertisement Expanded Flags Option</name>
        <artset>
          <artwork alt="Router Advertisement Expanded Flags Option" type="ascii-art">
 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     |S|       Bit fields available ..
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... for assignment                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          </artwork>
        </artset>
      </figure>
    </section>

    <section>
      <name>Router Advertisement Transmission</name>
      
      <t>A stub router that is not explicitly configured as part of the infrastructure network MUST set the Stub Router flag in outgoing RA messages.</t>

      <t>How and when a stub router includes PIOs in outgoing RAs is specified in <xref target="I-D.ietf-snac-simple"/>.</t>
    </section>

    <section>
      <name>IANA Considerations</name>

      <t>IANA is requested to allocate a flag from the "IPv6 ND Router Advertisement flags" registry of <xref target="RFC5175"/>, as specified below:</t>

      <table>
        <tbody>
          <tr>
            <td>RA Option Bit</td>
            <td>Description</td>
            <td>Reference</td>
          </tr>
          <tr>
            <td>8 (suggested)</td>
            <td>S - Stub Router Flag</td>
            <td>This Document</td>
          </tr>
        </tbody>
      </table>

      <t>Note that RA Option Bit 8 requires use of the RA Flags Extension Option <xref target="RFC5175"/> to encode the flag.</t>
    </section>

    <section>
      <name>Security Considerations</name>

      <t>This protocol shares the security issues of NDP that are documented in the "Security Considerations" section of <xref target="RFC4861"/>.</t>
    </section>
  </middle>

  <back>
    <references>
      <name>Normative References</name>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-snac-simple-00.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4193.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4861.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5175.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
    </references>
  </back>
</rfc>
