<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-spring-srv6-security-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.2 -->
  <front>
    <title abbrev="Segment Routing IPv6 Security Considerations">Segment Routing IPv6 Security Considerations</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-spring-srv6-security-01"/>
    <author initials="N." surname="Buraglio" fullname="Nick Buraglio">
      <organization>Energy Sciences Network</organization>
      <address>
        <email>buraglio@forwardingplane.net</email>
      </address>
    </author>
    <author initials="T." surname="Mizrahi" fullname="Tal Mizrahi">
      <organization>Huawei</organization>
      <address>
        <email>tal.mizrahi.phd@gmail.com</email>
      </address>
    </author>
    <author initials="T." surname="Tong" fullname="Tian Tong">
      <organization>China Unicom</organization>
      <address>
        <email>tongt5@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="L. M." surname="Contreras" fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author initials="F." surname="Gont" fullname="Fernando Gont">
      <organization>SI6 Networks</organization>
      <address>
        <email>fgont@si6networks.com</email>
      </address>
    </author>
    <date year="2024" month="October" day="21"/>
    <area>Routing</area>
    <workgroup>Source Packet Routing in Networking</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 94?>

<t>SRv6 is a traffic engineering, encapsulation and steering mechanism utilizing IPv6 addresses to identify segments in a pre-defined policy. This document discusses security considerations in SRv6 networks, including the potential threats and the possible mitigation methods. The document does not define any new security protocols or extensions to existing protocols.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://buraglio.github.io/draft-bdmgct-spring-srv6-security/draft-bdmgct-spring-srv6-security.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-spring-srv6-security/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Source Packet Routing in Networking Working Group mailing list (<eref target="mailto:spring@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/spring/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/spring/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/buraglio/draft-bdmgct-spring-srv6-security"/>.</t>
    </note>
  </front>
  <middle>
    <?line 98?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Segment Routing (SR) <xref target="RFC8402"/> utilizing an IPv6 data plane is a source routing model that leverages an IPv6 underlay
and an IPv6 extension header called the Segment Routing Header (SRH) <xref target="RFC8754"/> to signal and control the forwarding and path of packets by imposing an ordered list of
path details that are processed at each hop along the signaled path. Because SRv6 is fundamentally bound to the IPv6 protocol, and because of the reliance on a
new header there are security considerations which must be noted or addressed in order to operate an SRv6 network in a reliable and secure manner.
Specifically, some primary properties of SRv6 that affect the security considerations are:</t>
      <ul spacing="normal">
        <li>
          <t>SRv6 may use the SRH which is a type of Routing Extension Header defined by <xref target="RFC8754"/>.
Some security considerations of the Routing Header, and specifically the SRH, are discussed in <xref target="RFC5095"/> section 5 and <xref target="RFC8754"/> section 7.</t>
        </li>
        <li>
          <t>SRv6 uses the IPv6 data-plane, and therefore known security considerations of IPv6 are applicable to SRv6 as well. Some of these considerations are discussed in Section 10 of <xref target="RFC8200"/> and in <xref target="RFC9099"/>.</t>
        </li>
        <li>
          <t>While SRv6 uses what appear to be typical IPv6 addresses, the address space is processed differently by segment endpoints.
A typical IPv6 unicast address is composed of a network prefix, host identifier, and a subnet mask.
A typical SRv6 segment identifier (SID) consists of a locator, a function identifier, and optionally, function arguments (LOC:FUNCT:ARG <xref target="RFC8986"/>).
The locator must be routable, which enables both SRv6 capable and incapable devices to participate in forwarding, either as normal IPv6 unicast or SRv6.
The capability to operate in environments that may have gaps in SRv6 support allows the bridging of islands of SRv6 devices with standard IPv6 unicast routing.</t>
        </li>
      </ul>
      <t>This document describes various threats to SRv6 networks and also presents existing approaches to avoid or mitigate the threats.</t>
    </section>
    <section anchor="scope-of-this-document">
      <name>Scope of this Document</name>
      <t>The following IETF RFCs were selected for security assessment as part of this effort:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="RFC8402"/> : "Segment Routing Architecture"</t>
        </li>
        <li>
          <t><xref target="RFC8754"/> : "IPv6 Segment Routing Header (SRH)"</t>
        </li>
        <li>
          <t><xref target="RFC8986"/> : "Segment Routing over IPv6 (SRv6) Network Programming"</t>
        </li>
        <li>
          <t><xref target="RFC9020"/> : "YANG Data Model for Segment Routing"</t>
        </li>
        <li>
          <t><xref target="RFC9256"/> : "Segment Routing Policy Architecture"</t>
        </li>
        <li>
          <t><xref target="RFC9491"/> : "Integration of the Network Service Header (NSH) and Segment Routing for Service Function Chaining (SFC)"</t>
        </li>
        <li>
          <t><xref target="RFC9524"/> : "Segment Routing Replication for Multipoint Service Delivery"</t>
        </li>
      </ul>
      <t>We note that SRv6 is under active development and, as such, the above documents might not cover all protocols employed in an SRv6 deployment.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
      <section anchor="terminology">
        <name>Terminology</name>
        <ul spacing="normal">
          <li>
            <t>HMAC TLV: Hashed Message Authentication Code Type Length Value <xref target="RFC8754"/></t>
          </li>
          <li>
            <t>SID: Segment Identifier <xref target="RFC8402"/></t>
          </li>
          <li>
            <t>SRH: Segment Routing Header <xref target="RFC8754"/></t>
          </li>
          <li>
            <t>SRv6: Segment Routing over IPv6 <xref target="RFC8402"/></t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="threat">
      <name>Threat Model</name>
      <t>This section introduces the threat model that is used in this document. The model is based on terminology from the Internet threat model <xref target="RFC3552"/>, as well as some concepts from <xref target="RFC9055"/>, <xref target="RFC7384"/> and <xref target="RFC9416"/>. Details regarding inter-domain segment routing (SR) are out of scope for this document.</t>
      <dl>
        <dt>Internal vs. External:</dt>
        <dd>
          <t>An internal attacker in the context of SRv6 is an attacker who is located within an SR domain.  Specifically, an internal attacker either has access to a node in the SR domain, or is located on an internal path between two nodes in the SR domain.  External attackers, on the other hand, are not within the SR domain.</t>
        </dd>
        <dt>On-path vs. Off-path:</dt>
        <dd>
          <t>On-path attackers are located in a position that allows interception, modification or dropping of in-flight packets, as well as insertion (generation) of packets. Off-path attackers can only attack by insertion of packets.</t>
        </dd>
      </dl>
      <t>The following figure depicts the attacker types according to the taxonomy above. As illustrated in the figure, on-path attackers are located along the path of the traffic that is under attack, and therefore can listen, insert, delete, modify or replay packets in transit. Off-path attackers can insert packets, and in some cases can passively listen to some traffic, such as multicast transmissions.</t>
      <figure anchor="threat-figure">
        <name>Threat Model Taxonomy</name>
        <artwork><![CDATA[
     on-path         on-path        off-path      off-path
     external        internal       internal      external
     attacker        attacker       attacker      attacker
       |                   |        |__            |
       |     SR      __    | __   _/|  \           |
       |     domain /  \_/ |   \_/  v   \__        v
       |            \      |        X      \       X
       v            /      v                \
 ----->X---------->O------>X------->O------->O---->
                   ^\               ^       /^
                   | \___/\_    /\_ | _/\__/ |
                   |        \__/    |        |
                   |                |        |
                  SR               SR        SR
                  ingress        endpoint    egress
                  node                       node
]]></artwork>
      </figure>
      <t>As defined in <xref target="RFC8402"/>, SR operates within a "trusted domain". Therefore, in the current threat model the SR domain defines the boundary that distinguishes internal from external threats. Specifically, an attack on one domain that is invoked from within a different domain is considered an external attack in the context of the current document.</t>
    </section>
    <section anchor="impact">
      <name>Impact</name>
      <t>One of the important aspects of a threat analysis is the potential impact of each threat. SRv6 allows for the forwarding of IPv6 packets via predetermined SR policies, which determine the paths and the processing of these packets. An attack on SRv6 may cause packets to traverse arbitrary paths and to be subject to arbitrary processing by SR endpoints within an SR domain. This may allow an attacker to perform a number of attacks on the victim networks and hosts that would be mostly unfeasible for a non-SRv6 environment.</t>
      <t>The threat model in <xref target="ANSI-Sec"/> classifies threats according to their potential impact, defining six categories. For each of these categories we briefly discuss its applicability to SRv6 attacks.</t>
      <ul spacing="normal">
        <li>
          <t>Unauthorized Access: an attack that results in unauthorized access might be achieved by having an attacker leverage SRv6 to circumvent security controls as a result of security devices being unable to enforce security policies. For example, this can occur if packets are directed through paths where packet filtering policies are not enforced, or if some of the security policies are not enforced in the presence of IPv6 Extension Headers.</t>
        </li>
        <li>
          <t>Masquerade: various attacks that result in spoofing or masquerading are possible in IPv6 networks. However, these attacks are not specific to SRv6, and are therefore not within the scope of this document.</t>
        </li>
        <li>
          <t>System Integrity: attacks on SRv6 can manipulate the path and the processing that the packet is subject to, thus compromising the integrity of the system. Furthermore, an attack that compromises the control plane and/or the management plane is also a means of impacting the system integrity.</t>
        </li>
        <li>
          <t>Communication Integrity: SRv6 attacks may cause packets to be forwarded through paths that the attacker controls, which may facilitate other attacks that compromise the integrity of user data. Integrity protection of user data, which is implemented in higher layers, avoids these aspects, and therefore communication integrity is not within the scope of this document.</t>
        </li>
        <li>
          <t>Confidentiality: as in communication integrity, packets forwarded through unintended paths may traverse nodes controlled by the attacker. Since eavesdropping to user data can be avoided by using encryption in higher layers, it is not within the scope of this document. However, eavesdropping to a network that uses SRv6 allows the attacker to collect information about SR endpoint addresses, SR policies, and network topologies, is a specific form of reconnaissance</t>
        </li>
        <li>
          <t>Denial of Service: the availability aspects of SRv6 include the ability of attackers to leverage SRv6 as a means for compromising the performance of a network or for causing Denial of Service (DoS). Compromising the availability of the system can be achieved by sending multiple SRv6-enabled packets to/through victim nodes, where the SRv6-enabled packets result in a negative performance impact of the victim systems (see <xref target="RFC9098"/> for further details). Alternatively, an attacker might achieve attack amplification by causing packets to "bounce" multiple times between a set of victim nodes, with the goal of exhausting processing resources and/or bandwidth (see <xref target="CanSecWest2007"/> for a discussion of this type of attack).</t>
        </li>
      </ul>
      <t><xref target="attacks"/> discusses specific implementations of these attacks, and possible mitigations are discussed in <xref target="mitigations"/>.</t>
    </section>
    <section anchor="attacks">
      <name>Attacks</name>
      <section anchor="attack-abstractions">
        <name>Attack Abstractions</name>
        <t>Packet manipulation and processing attacks can be implemented by performing a set of one or more basic operations. These basic operations (abstractions) are as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Passive listening: an attacker who reads packets off the network can collect information about SR endpoint addresses, SR policies and the network topology. This information can then be used to deploy other types of attacks.</t>
          </li>
          <li>
            <t>Packet replaying: in a replay attack the attacker records one or more packets and transmits them at a later point in time.</t>
          </li>
          <li>
            <t>Packet insertion: an attacker generates and injects a packet to the network. The generated packet may be maliciously crafted to include false information, including for example false addresses and SRv6-related information.</t>
          </li>
          <li>
            <t>Packet deletion: by intercepting and removing packets from the network, an attacker prevents these packets from reaching their destination. Selective removal of packets may, in some cases, cause more severe damage than random packet loss.</t>
          </li>
          <li>
            <t>Packet modification: the attacker modifies packets during transit.</t>
          </li>
        </ul>
        <t>This section describes attacks that are based on packet manipulation and processing, as well as attacks performed by other means.</t>
      </section>
      <section anchor="modification">
        <name>SR Modification Attack</name>
        <section anchor="overview">
          <name>Overview</name>
          <t>An attacker can modify a packet while it is in transit in a way that directly affects the packet's SR policy. The modification can affect the destination address of the IPv6 header and/or the SRH. In this context SRH modification may refer to inserting an SRH, removing an SRH, or modifying some fields of an existing SRH.</t>
          <t>Modification of an existing SRH can be further classified into several possible attacks. Specifically, the attack can include adding one or more SIDs to the segment list, removing one or more SIDs or replacing some SIDs with different SIDs. Another possible type of modification is by adding, removing or modifying TLV fields in the SRH.</t>
          <t>When an SRH is present modifying the destination address (DA) of the IPv6 header affects the active segment. However, DA modification can affect the SR policy even in the absence of an SRH. One example is modifying a DA which is used as a Binding SID <xref target="RFC8402"/>. Another example is modifying a DA which represents a compressed segment list <xref target="I-D.ietf-spring-srv6-srh-compression"/>. SRH compression allows encoding multiple compressed SIDs within a single 128-bit SID, and thus modifying the DA can affect one or more hops in the SR policy.</t>
        </section>
        <section anchor="scope">
          <name>Scope</name>
          <t>An SR modification attack can be performed by on-path attackers. If filtering is deployed at the domain boundaries (<xref target="filtering"/>), the ability of implementing SR modification attacks is limited to on-path internal attackers.</t>
        </section>
        <section anchor="mod-impact">
          <name>Impact</name>
          <t>The SR modification attack allows an attacker to change the SR policy that the packet is steered through and thus to manipulate the path and the processing that the packet is subject to.</t>
          <t>Specifically, the SR modification attack can impact the network and the forwarding behavior of packets in one or more of the following ways:</t>
          <dl>
            <dt>Avoiding a specific node or path:</dt>
            <dd>
              <t>An attacker can manipulate the DA and/or SRH in order to avoid a specific node or path. This approach can be used, for example, for bypassing the billing service or avoiding access controls and security filters.</t>
            </dd>
            <dt>Preferring a specific path:</dt>
            <dd>
              <t>The packet can be manipulated to avert packets to a specific path. This attack can result in allowing various unauthorized services such as traffic acceleration. Alternatively, an attacker can avert traffic to be forwarded through a specific node that the attacker has access to, thus facilitating more complex on-path attacks such as passive listening, recon and various man-in-the-middle attacks. It is noted that the SR modification attack is performed by an on-path attacker who has access to packets in transit, and thus can implement these attacks directly. However, SR modification is relatively easy to implement and requires low processing resources by an attacker, while it facilitates more complex on-path attacks by averting the traffic to another node that the attacker has access to and has more processing resources.</t>
            </dd>
            <dt>Forwarding through a path that causes the packet to be discarded:</dt>
            <dd>
              <t>SR modification may cause a packet to be forwarded to a point in the network where it can no longer be forwarded, causing the packet to be discarded.</t>
            </dd>
            <dt>Manipulating the SRv6 network programming:</dt>
            <dd>
              <t>An attacker can trigger a specific endpoint behavior by modifying the destination address and/or SIDs in the segment list. This attack can be invoked in order to manipulate the path or in order to exhaust the resources of the SR endpoint.</t>
            </dd>
            <dt>Availability:</dt>
            <dd>
              <t>An attacker can add SIDs to the segment list in order to increase the number hops that each packet is forwarded through and thus increase the load on the network. For example, a set of SIDs can be inserted in a way that creates a forwarding loop (<xref target="RFC8402"/>, <xref target="RFC5095"/>) and thus loads the nodes along the loop. Network programming can be used in some cases to manipulate segment endpoints to perform unnecessary functions that consume processing resources. TLV fields such as the HMAC TLV can be maliciously added to the SRH in order to consume processing resources.  Path inflation, malicious looping and unnecessary instructions and TLVs have a common outcome, resource exhaustion, which may in severe cases cause Denial of Service (DoS).</t>
            </dd>
          </dl>
        </section>
      </section>
      <section anchor="passive-listening">
        <name>Passive Listening</name>
        <section anchor="overview-1">
          <name>Overview</name>
          <t>An on-path attacker can passively listen to packets and specifically to the SRv6-related information that is conveyed in the IPv6 header and the SRH. This approach can be used for reconnaissance, i.e., for collecting information about SIDs and policies, and thus it can facilitate mapping the structure of the network and its potential vulnerabilities.</t>
        </section>
        <section anchor="scope-1">
          <name>Scope</name>
          <t>A recon attack is limited to on-path attackers.</t>
          <t>If filtering is deployed at the domain boundaries (<xref target="filtering"/>), it prevents any leaks of explicit SRv6 routing information through the boundaries of the administrative domain. In this case external attackers can only collect SRv6-related data in a malfunctioning network in which SRv6-related information is leaked through the boundaries of an SR domain.</t>
        </section>
        <section anchor="impact-1">
          <name>Impact</name>
          <t>While the information collected in a recon attack does not compromise the confidentiality of the user data, it allows an attacker to gather information about the network which in turn can be used to enable other attacks.</t>
        </section>
      </section>
      <section anchor="packet-insertion">
        <name>Packet Insertion</name>
        <section anchor="overview-2">
          <name>Overview</name>
          <t>In this attack packets are inserted (injected) into the network with a segment list that defines a specific SR policy. The attack can be applied either by using synthetic packets or by replaying previously recorded packets.</t>
        </section>
        <section anchor="scope-2">
          <name>Scope</name>
          <t>Packet insertion can be performed by either on-path or off-path attackers. In the case of a replay attack, recording packets in-flight requires on-path access and the recorded packets can later be injected either from an on-path or an off-path location.</t>
          <t>If filtering is deployed at the domain boundaries (<xref target="filtering"/>), insertion attacks can only be implemented by internal attackers.</t>
        </section>
        <section anchor="impact-2">
          <name>Impact</name>
          <t>The main impact of this attack is resource exhaustion which compromises the availability of the network, as described in <xref target="mod-impact"/>.</t>
        </section>
      </section>
      <section anchor="control-and-management-plane-attacks">
        <name>Control and Management Plane Attacks</name>
        <section anchor="overview-3">
          <name>Overview</name>
          <t>Depending on the control plane protocols used in a network, it is possible to use the control plane as a way of compromising the network. For example, an attacker can advertise SIDs in order to manipulate the SR policies used in the network. Known IPv6 control plane attacks (e.g., overclaiming) are applicable to SRv6 as well.</t>
          <t>A compromised management plane can also facilitate a wide range of attacks, including manipulating the SR policies or compromising the network availability.</t>
        </section>
        <section anchor="scope-3">
          <name>Scope</name>
          <t>The control plane and management plane may be either in-band or out-of-band, and thus the on-path and off-path taxonomy of <xref target="threat"/> is not necessarily common between the data plane, control plane and management plane. As in the data plane, on-path attackers can be implement a wide range of attacks in order to compromise the control and/or management plane, including selectively removing legitimate messages, replaying them or passively listening to them. However, while an on-path attacker in the data plane is potentially more harmful than an off-path attacker, effective control and/or management plane attacks can be implemented off-path rather than by trying to intercept or modify traffic in-flight, for example by exchanging malicious control plane messages with legitimate routers, by spoofing an SDN (Software Defined Network) controller, or by gaining access to an NMS (Network Management System).</t>
          <t>SRv6 domain boundary filtering can be used for mitigating potential control plane and management plane attacks from external attackers. Segment routing does not define any specific security mechanisms in existing control plane or management plane protocols. However, existing control plane and management plane protocols use authentication and security mechanisms to validate the authenticity of information.</t>
        </section>
        <section anchor="impact-3">
          <name>Impact</name>
          <t>A compromised control plane or management plane can impact the network in various possible ways. SR policies can be manipulated by the attacker to avoid specific paths or to prefer specific paths, as described in <xref target="mod-impact"/>. Alternatively, the attacker can compromise the availability, either by defining SR policies that load the network resources, as described in <xref target="mod-impact"/>, or by blackholing some or all of the SR policies. A passive attacker can use the control plane or management plane messages as a means for recon, similarly to <xref target="mod-impact"/>.</t>
        </section>
      </section>
      <section anchor="other-attacks">
        <name>Other Attacks</name>
        <t>Various attacks which are not specific to SRv6 can be used to compromise networks that deploy SRv6. For example, spoofing is not specific to SRv6, but can be used in a network that uses SRv6. Such attacks are outside the scope of this document.</t>
        <t>Because SRv6 is completely reliant on IPv6 for addressing, forwarding, and fundamental networking basics, it is potentially subject to any existing or emerging IPv6 vulnerabilities <xref target="RFC9099"/>, however, this is out of scope for this document.</t>
      </section>
    </section>
    <section anchor="mitigations">
      <name>Mitigation Methods</name>
      <t>This section presents methods that can be used to mitigate the threats and issues that were presented in previous sections. This section does not introduce new security solutions or protocols.</t>
      <section anchor="filtering">
        <name>Trusted Domains and Filtering</name>
        <section anchor="overview-4">
          <name>Overview</name>
          <t>As specified in <xref target="RFC8402"/>:</t>
          <artwork><![CDATA[
   By default, SR operates within a trusted domain.  Traffic MUST be
   filtered at the domain boundaries.
   The use of best practices to reduce the risk of tampering within the
   trusted domain is important.  Such practices are discussed in
   [RFC4381] and are applicable to both SR-MPLS and SRv6.
]]></artwork>
          <t>Following the spirit of <xref target="RFC8402"/>, the current document assumes that SRv6 is deployed within a trusted domain. Traffic <bcp14>MUST</bcp14> be filtered at the domain boundaries. Thus, most of the attacks described in this document are limited to within the domain (i.e., internal attackers).</t>
        </section>
        <section anchor="srh-filtering">
          <name>SRH Filtering</name>
          <t>SRv6 packets rely on the routing header in order to steer traffic that adheres to a defined SRv6 traffic policy. Thus, SRH filtering can be enforced at the ingress and egress nodes of the SR domain, so that packets with an SRH cannot be forwarded into the SR domain or out of the SR domain. Specifically, such filtering is performed by detecting Next Header 43 (Routing Header) with Routing Type 4 (SRH).</t>
          <t>Because of the methodologies used in SID compression <xref target="I-D.ietf-spring-srv6-srh-compression"/>, SRH compression does not necessarily use an SRH. In practice this means that when compressed segment lists are used without an SRH, filtering based on the Next Header is not relevant, and thus filtering can only be applied based on the address range, as described below.</t>
        </section>
        <section anchor="address-range-filtering">
          <name>Address Range Filtering</name>
          <t>The IPv6 destination address can be filtered at the SR ingress node in order to mitigate external attacks. An ingress packet with a destination address that defines an active segment with an SR endpoint in the SR domain is filtered.</t>
          <t>In order to apply such a filtering mechanism the SR domain needs to have an allocated address range that can be detected and enforced by the SR ingress, for example by using ULA addresses, or preferably, by using the IANA special use prefix <xref target="IANAIPv6SPAR"/> for SRv6, 5f00::/16.</t>
          <t>Note that the use of GUA addressing in data plane programming could result in an fail open scenario when appropriate border filtering is not implemented or supported.</t>
        </section>
      </section>
      <section anchor="encapsulation-of-packets">
        <name>Encapsulation of Packets</name>
        <t>Packets steered in an SR domain are often encapsulated in an IPv6 encapsulation. This mechanism allows for encapsulation of both IPv4 and IPv6 packets. Encapsulation of packets at the SR ingress node and decapsulation at the SR egress node mitigates the ability of external attackers to impact SR steering within the domain.</t>
      </section>
      <section anchor="hmac">
        <name>Hashed Message Authentication Code (HMAC)</name>
        <t>The SRH can be secured by an HMAC TLV, as defined in <xref target="RFC8754"/>. The HMAC is an optional TLV that secures the segment list, the SRH flags, the SRH Last Entry field and the IPv6 source address. A pre-shared key is used in the generation and verification of the HMAC.</t>
        <t>Using an HMAC in an SR domain can mitigate some of the SR Modification Attacks (<xref target="modification"/>). For example, the segment list is protected by the HMAC.</t>
        <t>The following aspects of the HAMC should be considered:</t>
        <ul spacing="normal">
          <li>
            <t>The HMAC TLV is <bcp14>OPTIONAL</bcp14>.</t>
          </li>
          <li>
            <t>While it is presumed that unique keys will be employed by each participating node, in scenarios where the network resorts to manual configuration of pre-shared keys, the same key might be reused by multiple systems as an (incorrect) shortcut to keeping the problem of pre-shared key configuration manageable.</t>
          </li>
          <li>
            <t>When the HMAC is used there is a distinction between an attacker who becomes internal by having physical access, for example by plugging into an active port of a network device, and an attacker who has full access to a legitimate network node, including for example encryption keys if the network is encrypted. The latter type of attacker is an internal attacker who can perform any of the attacks that were described in the previous section as relevant to internal attackers.</t>
          </li>
          <li>
            <t>An internal attacker who does not have access to the pre-shared key can capture legitimate packets, and later replay the SRH and HMAC from these recorded packets. This allows the attacker to insert the previously recorded SRH and HMAC into a newly injected packet. An on-path internal attacker can also replace the SRH of an in-transit packet with a different SRH that was previously captured.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="implications-on-existing-equipment">
      <name>Implications on Existing Equipment</name>
      <section anchor="limitations-in-filtering-capabilities">
        <name>Limitations in Filtering Capabilities</name>
        <t><xref target="RFC9288"/> provides recommendations on the filtering of IPv6 packets containing IPv6 extension headers at transit routers. SRv6 relies on the routing header (RH4). Because the technology is reasonably new, many platforms, routing and otherwise, do not possess the capability to filter and in some cases even provide logging for IPv6 next-header 43 Routing type 4.</t>
      </section>
      <section anchor="middlebox-filtering-issues">
        <name>Middlebox Filtering Issues</name>
        <t>When an SRv6 packet is forwarded in the SRv6 domain, its destination address changes constantly, the real destination address is hidden. Security devices on SRv6 network may not learn the real destination address and fail to take access control on some SRv6 traffic.</t>
        <t>The security devices on SRv6 networks need to take care of SRv6 packets. However, the SRv6 packets usually use loopback address of the PE device as a source address. As a result, the address information of SR packets may be asymmetric, resulting in improper filter traffic problems, which affects the effectiveness of security devices.
For example, along the forwarding path in SRv6 network, the SR-aware firewall will check the association relationships of the bidirectional VPN traffic packets. And it is able to retrieve the final destination of SRv6 packet from the last entry in the SRH. When the &lt;source, destination&gt; tuple of the packet from PE1 to PE2 is &lt;PE1-IP-ADDR, PE2-VPN-SID&gt;, and the other direction is &lt;PE2-IP-ADDR, PE1-VPN-SID&gt;, the source address and destination address of the forward and backward VPN traffic are regarded as different flow. Eventually, the legal traffic may be blocked by the firewall.</t>
        <t>SRv6 is commonly used as a tunneling technology in operator networks. To provide VPN service in an SRv6 network, the ingress PE encapsulates the payload with an outer IPv6 header with the SRH carrying the SR Policy segment List along with the VPN service SID. The user traffic towards SRv6 provider backbone will be encapsulated in SRv6 tunnel. When constructing an SRv6 packet, the destination address field of the SRv6 packet changes constantly and the source address field of the SRv6 packet is usually assigned using an address on the originating device, which may be a host or a network element depending on configuration. This may affect the security equipment and middle boxes in the traffic path. Because of the existence of the SRH, and the additional headers, security appliances, monitoring systems, and middle boxes could react in different ways if do not incorporate support for the supporting SRv6 mechanisms, such as the IPv6 Segment Routing Header (SRH) <xref target="RFC8754"/>. Additionally, implementation limitations in the processing of IPv6 packets with extension headers may result in SRv6 packets being dropped <xref target="RFC7872"/>,<xref target="RFC9098"/>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations of SRv6 are presented throughout this document.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="topics-for-further-consideration">
      <name>Topics for Further Consideration</name>
      <t>This section lists topics that will be discussed further before deciding whether they need to be included in this document, as well as some placeholders for items that need further work.</t>
      <ul spacing="normal">
        <li>
          <t>The following references may be used in the future: <xref target="RFC8986">RFC9256</xref></t>
        </li>
        <li>
          <t>SRH compression</t>
        </li>
        <li>
          <t>Spoofing</t>
        </li>
        <li>
          <t>Path enumeration</t>
        </li>
        <li>
          <t>Infrastructure and topology exposure: this seems like a non-issue from a WAN perspective. Needs more thought - could be problematic in a host to host scenario involving a WAN and/or a data center fabric.</t>
        </li>
        <li>
          <t>Terms that may be used in a future version: Locator Block, FRR, uSID</t>
        </li>
        <li>
          <t>L4 checksum: <xref target="RFC8200"/> specifies that when the Routing header is present the L4 checksum is computed by the originating node based on the IPv6 address of the last element of the Routing header.  When compressed segment lists <xref target="I-D.ietf-spring-srv6-srh-compression"/> are used, the last element of the Routing header may be different than the Destination Address as received by the final destination. Furthermore, compressed segment lists can be used in the Destination Address without the presence of a Routing header, and in this case the IPv6 Destination address can be modified along the path. As a result, some existing middleboxes which verify the L4 checksum might miscalculate the checksum. This issue is currently under discussion in the SPRING WG.</t>
        </li>
        <li>
          <t>Segment Routing Header figure: the SRv6 Segment Routing Header (SRH) is defined in <xref target="RFC8754"/>.</t>
        </li>
      </ul>
      <artwork><![CDATA[
     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Next Header   |  Hdr Ext Len  | Routing Type  | Segments Left |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |  Last Entry   |     Flags     |              Tag              |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[0] (128 bits IPv6 address)            |
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |                                                               |
                                  ...
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[n] (128 bits IPv6 address)            |
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8402">
          <front>
            <title>Segment Routing Architecture</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source routing paradigm. A node steers a packet through an ordered list of instructions, called "segments". A segment can represent any instruction, topological or service based. A segment can have a semantic local to an SR node or global within an SR domain. SR provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SR domain.</t>
              <t>SR can be directly applied to the MPLS architecture with no change to the forwarding plane. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. Upon completion of a segment, the related label is popped from the stack.</t>
              <t>SR can be applied to the IPv6 architecture, with a new type of routing header. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address (DA) of the packet. The next active segment is indicated by a pointer in the new routing header.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8402"/>
          <seriesInfo name="DOI" value="10.17487/RFC8402"/>
        </reference>
        <reference anchor="RFC8754">
          <front>
            <title>IPv6 Segment Routing Header (SRH)</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="D. Dukes" initials="D." role="editor" surname="Dukes"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>Segment Routing can be applied to the IPv6 data plane using a new type of Routing Extension Header called the Segment Routing Header (SRH). This document describes the SRH and how it is used by nodes that are Segment Routing (SR) capable.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8754"/>
          <seriesInfo name="DOI" value="10.17487/RFC8754"/>
        </reference>
        <reference anchor="RFC8986">
          <front>
            <title>Segment Routing over IPv6 (SRv6) Network Programming</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="P. Camarillo" initials="P." role="editor" surname="Camarillo"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="Z. Li" initials="Z." surname="Li"/>
            <date month="February" year="2021"/>
            <abstract>
              <t>The Segment Routing over IPv6 (SRv6) Network Programming framework enables a network operator or an application to specify a packet processing program by encoding a sequence of instructions in the IPv6 packet header.</t>
              <t>Each instruction is implemented on one or several nodes in the network and identified by an SRv6 Segment Identifier in the packet.</t>
              <t>This document defines the SRv6 Network Programming concept and specifies the base set of SRv6 behaviors that enables the creation of interoperable overlays with underlay optimization.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8986"/>
          <seriesInfo name="DOI" value="10.17487/RFC8986"/>
        </reference>
        <reference anchor="RFC9020">
          <front>
            <title>YANG Data Model for Segment Routing</title>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="Y. Qu" initials="Y." surname="Qu"/>
            <author fullname="A. Lindem" initials="A." surname="Lindem"/>
            <author fullname="P. Sarkar" initials="P." surname="Sarkar"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines three YANG data models. The first is for Segment Routing (SR) configuration and operation, which is to be augmented by different Segment Routing data planes. The next is a YANG data model that defines a collection of generic types and groupings for SR. The third module defines the configuration and operational states for the Segment Routing MPLS data plane.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9020"/>
          <seriesInfo name="DOI" value="10.17487/RFC9020"/>
        </reference>
        <reference anchor="RFC9256">
          <front>
            <title>Segment Routing Policy Architecture</title>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="A. Bogdanov" initials="A." surname="Bogdanov"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>Segment Routing (SR) allows a node to steer a packet flow along any path. Intermediate per-path states are eliminated thanks to source routing. SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated called a headend node. The packets steered into an SR Policy carry an ordered list of segments associated with that SR Policy.</t>
              <t>This document updates RFC 8402 as it details the concepts of SR Policy and steering into an SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9256"/>
          <seriesInfo name="DOI" value="10.17487/RFC9256"/>
        </reference>
        <reference anchor="RFC9491">
          <front>
            <title>Integration of the Network Service Header (NSH) and Segment Routing for Service Function Chaining (SFC)</title>
            <author fullname="J. Guichard" initials="J." role="editor" surname="Guichard"/>
            <author fullname="J. Tantsura" initials="J." role="editor" surname="Tantsura"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document describes the integration of the Network Service Header (NSH) and Segment Routing (SR), as well as encapsulation details, to efficiently support Service Function Chaining (SFC) while maintaining separation of the service and transport planes as originally intended by the SFC architecture.</t>
              <t>Combining these technologies allows SR to be used for steering packets between Service Function Forwarders (SFFs) along a given Service Function Path (SFP), whereas the NSH is responsible for maintaining the integrity of the service plane, the SFC instance context, and any associated metadata.</t>
              <t>This integration demonstrates that the NSH and SR can work cooperatively and provide a network operator with the flexibility to use whichever transport technology makes sense in specific areas of their network infrastructure while still maintaining an end-to-end service plane using the NSH.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9491"/>
          <seriesInfo name="DOI" value="10.17487/RFC9491"/>
        </reference>
        <reference anchor="RFC9524">
          <front>
            <title>Segment Routing Replication for Multipoint Service Delivery</title>
            <author fullname="D. Voyer" initials="D." role="editor" surname="Voyer"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="R. Parekh" initials="R." surname="Parekh"/>
            <author fullname="H. Bidgoli" initials="H." surname="Bidgoli"/>
            <author fullname="Z. Zhang" initials="Z." surname="Zhang"/>
            <date month="February" year="2024"/>
            <abstract>
              <t>This document describes the Segment Routing Replication segment for multipoint service delivery. A Replication segment allows a packet to be replicated from a replication node to downstream nodes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9524"/>
          <seriesInfo name="DOI" value="10.17487/RFC9524"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3552">
          <front>
            <title>Guidelines for Writing RFC Text on Security Considerations</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="B. Korver" initials="B." surname="Korver"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>All RFCs are required to have a Security Considerations section. Historically, such sections have been relatively weak. This document provides guidelines to RFC authors on how to write a good Security Considerations section. 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="72"/>
          <seriesInfo name="RFC" value="3552"/>
          <seriesInfo name="DOI" value="10.17487/RFC3552"/>
        </reference>
        <reference anchor="RFC9055">
          <front>
            <title>Deterministic Networking (DetNet) Security Considerations</title>
            <author fullname="E. Grossman" initials="E." role="editor" surname="Grossman"/>
            <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
            <author fullname="A. Hacker" initials="A." surname="Hacker"/>
            <date month="June" year="2021"/>
            <abstract>
              <t>A DetNet (deterministic network) provides specific performance guarantees to its data flows, such as extremely low data loss rates and bounded latency (including bounded latency variation, i.e., "jitter"). As a result, securing a DetNet requires that in addition to the best practice security measures taken for any mission-critical network, additional security measures may be needed to secure the intended operation of these novel service properties.</t>
              <t>This document addresses DetNet-specific security considerations from the perspectives of both the DetNet system-level designer and component designer. System considerations include a taxonomy of relevant threats and attacks, and associations of threats versus use cases and service properties. Component-level considerations include ingress filtering and packet arrival-time violation detection.</t>
              <t>This document also addresses security considerations specific to the IP and MPLS data plane technologies, thereby complementing the Security Considerations sections of those documents.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9055"/>
          <seriesInfo name="DOI" value="10.17487/RFC9055"/>
        </reference>
        <reference anchor="RFC7384">
          <front>
            <title>Security Requirements of Time Protocols in Packet Switched Networks</title>
            <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
            <date month="October" year="2014"/>
            <abstract>
              <t>As time and frequency distribution protocols are becoming increasingly common and widely deployed, concern about their exposure to various security threats is increasing. This document defines a set of security requirements for time protocols, focusing on the Precision Time Protocol (PTP) and the Network Time Protocol (NTP). This document also discusses the security impacts of time protocol practices, the performance implications of external security practices on time protocols, and the dependencies between other security services and time synchronization.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7384"/>
          <seriesInfo name="DOI" value="10.17487/RFC7384"/>
        </reference>
        <reference anchor="RFC9416">
          <front>
            <title>Security Considerations for Transient Numeric Identifiers Employed in Network Protocols</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="I. Arce" initials="I." surname="Arce"/>
            <date month="July" year="2023"/>
            <abstract>
              <t>Poor selection of transient numerical identifiers in protocols such as the TCP/IP suite has historically led to a number of attacks on implementations, ranging from Denial of Service (DoS) or data injection to information leakages that can be exploited by pervasive monitoring. Due diligence in the specification of transient numeric identifiers is required even when cryptographic techniques are employed, since these techniques might not mitigate all the associated issues. This document formally updates RFC 3552, incorporating requirements for transient numeric identifiers, to prevent flaws in future protocols and implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="72"/>
          <seriesInfo name="RFC" value="9416"/>
          <seriesInfo name="DOI" value="10.17487/RFC9416"/>
        </reference>
        <reference anchor="RFC7855">
          <front>
            <title>Source Packet Routing in Networking (SPRING) Problem Statement and Requirements</title>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="M. Horneffer" initials="M." surname="Horneffer"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="May" year="2016"/>
            <abstract>
              <t>The ability for a node to specify a forwarding path, other than the normal shortest path, that a particular packet will traverse, benefits a number of network functions. Source-based routing mechanisms have previously been specified for network protocols but have not seen widespread adoption. In this context, the term "source" means "the point at which the explicit route is imposed"; therefore, it is not limited to the originator of the packet (i.e., the node imposing the explicit route may be the ingress node of an operator's network).</t>
              <t>This document outlines various use cases, with their requirements, that need to be taken into account by the Source Packet Routing in Networking (SPRING) architecture for unicast traffic. Multicast use cases and requirements are out of scope for this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7855"/>
          <seriesInfo name="DOI" value="10.17487/RFC7855"/>
        </reference>
        <reference anchor="RFC7872">
          <front>
            <title>Observations on the Dropping of Packets with IPv6 Extension Headers in the Real World</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="J. Linkova" initials="J." surname="Linkova"/>
            <author fullname="T. Chown" initials="T." surname="Chown"/>
            <author fullname="W. Liu" initials="W." surname="Liu"/>
            <date month="June" year="2016"/>
            <abstract>
              <t>This document presents real-world data regarding the extent to which packets with IPv6 Extension Headers (EHs) are dropped in the Internet (as originally measured in August 2014 and later in June 2015, with similar results) and where in the network such dropping occurs. The aforementioned results serve as a problem statement that is expected to trigger operational advice on the filtering of IPv6 packets carrying IPv6 EHs so that the situation improves over time. This document also explains how the results were obtained, such that the corresponding measurements can be reproduced by other members of the community and repeated over time to observe changes in the handling of packets with IPv6 EHs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7872"/>
          <seriesInfo name="DOI" value="10.17487/RFC7872"/>
        </reference>
        <reference anchor="RFC9098">
          <front>
            <title>Operational Implications of IPv6 Packets with Extension Headers</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="N. Hilliard" initials="N." surname="Hilliard"/>
            <author fullname="G. Doering" initials="G." surname="Doering"/>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <author fullname="W. Liu" initials="W." surname="Liu"/>
            <date month="September" year="2021"/>
            <abstract>
              <t>This document summarizes the operational implications of IPv6 extension headers specified in the IPv6 protocol specification (RFC 8200) and attempts to analyze reasons why packets with IPv6 extension headers are often dropped in the public Internet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9098"/>
          <seriesInfo name="DOI" value="10.17487/RFC9098"/>
        </reference>
        <reference anchor="RFC5095">
          <front>
            <title>Deprecation of Type 0 Routing Headers in IPv6</title>
            <author fullname="J. Abley" initials="J." surname="Abley"/>
            <author fullname="P. Savola" initials="P." surname="Savola"/>
            <author fullname="G. Neville-Neil" initials="G." surname="Neville-Neil"/>
            <date month="December" year="2007"/>
            <abstract>
              <t>The functionality provided by IPv6's Type 0 Routing Header can be exploited in order to achieve traffic amplification over a remote path for the purposes of generating denial-of-service traffic. This document updates the IPv6 specification to deprecate the use of IPv6 Type 0 Routing Headers, in light of this security concern. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5095"/>
          <seriesInfo name="DOI" value="10.17487/RFC5095"/>
        </reference>
        <reference anchor="RFC9288">
          <front>
            <title>Recommendations on the Filtering of IPv6 Packets Containing IPv6 Extension Headers at Transit Routers</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="W. Liu" initials="W." surname="Liu"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document analyzes the security implications of IPv6 Extension Headers and associated IPv6 options. Additionally, it discusses the operational and interoperability implications of discarding packets based on the IPv6 Extension Headers and IPv6 options they contain. Finally, it provides advice on the filtering of such IPv6 packets at transit routers for traffic not directed to them, for those cases where such filtering is deemed as necessary.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9288"/>
          <seriesInfo name="DOI" value="10.17487/RFC9288"/>
        </reference>
        <reference anchor="RFC9099">
          <front>
            <title>Operational Security Considerations for IPv6 Networks</title>
            <author fullname="É. Vyncke" surname="É. Vyncke"/>
            <author fullname="K. Chittimaneni" initials="K." surname="Chittimaneni"/>
            <author fullname="M. Kaeo" initials="M." surname="Kaeo"/>
            <author fullname="E. Rey" initials="E." surname="Rey"/>
            <date month="August" year="2021"/>
            <abstract>
              <t>Knowledge and experience on how to operate IPv4 networks securely is available, whether the operator is an Internet Service Provider (ISP) or an enterprise internal network. However, IPv6 presents some new security challenges. RFC 4942 describes security issues in the protocol, but network managers also need a more practical, operations-minded document to enumerate advantages and/or disadvantages of certain choices.</t>
              <t>This document analyzes the operational security issues associated with several types of networks and proposes technical and procedural mitigation techniques. This document is only applicable to managed networks, such as enterprise networks, service provider networks, or managed residential networks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9099"/>
          <seriesInfo name="DOI" value="10.17487/RFC9099"/>
        </reference>
        <reference anchor="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>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="I-D.ietf-spring-srv6-srh-compression">
          <front>
            <title>Compressed SRv6 Segment List Encoding</title>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Zhenbin Li" initials="Z." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Francois Clad" initials="F." surname="Clad">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <date day="22" month="July" year="2024"/>
            <abstract>
              <t>   Segment Routing over IPv6 (SRv6) is the instantiation of Segment
   Routing (SR) on the IPv6 dataplane.  This document specifies new
   flavors for the SR segment endpoint behaviors defined in RFC 8986,
   which enable the compression of an SRv6 SID list.  Such compression
   significantly reduces the size of the SRv6 encapsulation needed to
   steer packets over long segment lists.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-srv6-srh-compression-18"/>
        </reference>
        <reference anchor="IANAIPv6SPAR" target="https://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml">
          <front>
            <title>IANA IPv6 Special-Purpose Address Registry</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="STRIDE" target="https://msdn.microsoft.com/en-us/library/ee823878(v=cs.20).aspx">
          <front>
            <title>The STRIDE Threat Model</title>
            <author>
              <organization/>
            </author>
            <date year="2018"/>
          </front>
        </reference>
        <reference anchor="ANSI-Sec" target="https://www.ieee802.org/1/ecsg-linksec/meetings/July03/3m150075.pdf">
          <front>
            <title>Operations, Administration, Maintenance, and Provisioning Security Requirements for the Public Telecommunications Network: A Baseline of Security Requirements for the Management Plane</title>
            <author>
              <organization/>
            </author>
            <date year="2003"/>
          </front>
        </reference>
        <reference anchor="CanSecWest2007" target="https://airbus-seclab.github.io/ipv6/IPv6_RH_security-csw07.pdf">
          <front>
            <title>IPv6 Routing Header Security</title>
            <author>
              <organization/>
            </author>
            <date year="2007"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 425?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to acknowledge the valuable input and contributions from Zafar Ali, Andrew Alston, Dale Carder, Bruno Decraene, Dhruv Dhody, Joel Halpern, Bruno Hassanov, Alvaro Retana, Eric Vyncke, and Russ White.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+V9a3MbR5Lgd/yKOirijtwFQFIPi8bNeE2TksVdkuKRlD1z
Gq2jARSAXjW64X6Awsi633K/ZX/Z5bMe3YCk2fGHiTg6wgIa3VVZWfnOrOzB
YNCr0zqzI7N3Z+dLm9fmtmjqNJ+bi5v1N+bOTpoyrTfmrMirdGrLpE7h014v
GY9Lu/6bH5sktZ0X5WZkqnraW6Uj87YuJn1TFWVd2lkFnzZL/PCu15sWkzxZ
AmjTMpnVg9TWs0G1KmGSQVWuvxlUMsng6LhXNeNlWlUwSb1ZwSMXL+5fGvPI
JFlVAJBpPrUrC//L672+2bPTtC7KNMnwy8XpD/BPUcKn2/uXe728WY5tOepN
AdRRbwJg27xqqpGpy8b2YMlPeklpExhVlrzXeyjK9/OyaFaIj6IpJ9bcJJP3
1mMlzc21rfE+euC93cDn6ahnBuYir22Z23pwjsvsrW3ewLzG/E0DGsPr3vuZ
r5gf8Wm8vkzSDK4z4r5HJA6Lkp5IyskCflnU9aoaHR7ijXgpXduh3naIFw7H
ZfFQ2UMe4hAfnaf1ohnDw+OmTOZZWhzyHo2ny/mk3rpL+FgGKK3qYE59fMgD
Dr9moC/fMVzUy2yv10uaelGUiGSY2wDKYBOvh+YHmZQuMoVdp5P38XVY/Mi8
yG0535i7SWrzia0U43SDZcTqCr6fFeVDUk4BmFWW5HYIOxpNfD80V+lfy2SR
BvPeJ1l0lWZ91SQPNg0nqZNsuOTbhqvF9Ps5Xh5OimV7hvsin4fDp0nur9Hg
Z4s0T8ybPKWngyngrvrZ9xP8uaFfh5M8Gv5yeDVEfgY+LZMqmOWySSvT+Y1m
u7eZnRUwXBLOlcEDy3TeWFyDPLOEncuy4vvaPUHriyB4OTQ/wv3B1C+Bc5J8
WvjrNO3dxTe6V1U48WwOt31fpd/k8iPP0cuLcgkSak18d/vy7PHx8bfy8eTp
0WP9+PzZ0y1Xvz35Rj5+e/T4SD8+fuauPv32WD8+ewwj9NJ81prwybNnj90g
z57Jx+dPTp66QY51vOcn/oaT5/6xb0/k47Ojb585ME5O/A1uTY+PCM6Lwfmw
K1XLxQCwsiotiVO67/T6FMX63c3p7YjwWSfl3AIjKx8/PDwMgdYSlhnw4DxH
pVAd4sVBusJxV3YCEndQ2nla1eXmMz8NPyAD80SinBAEUS1y801TrorKmtPp
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
AA==

-->

</rfc>
