<?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.43 (Ruby 2.6.10) -->
<?rfc tocompact="yes"?>
<?rfc tocindent="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-intarea-rfc8335bis-06" category="std" consensus="true" submissionType="IETF" obsoletes="8335" updates="4884" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="PROBE">PROBE: A Utility for Probing Interfaces</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-intarea-rfc8335bis-06"/>
    <author initials="B." surname="Fenner" fullname="Bill Fenner" role="editor">
      <organization>Arista Networks</organization>
      <address>
        <postal>
          <street>5453 Great America Parkway</street>
          <city>Santa Clara</city>
          <region>California</region>
          <code>95054</code>
          <country>USA</country>
        </postal>
        <email>fenner@fenron.com</email>
      </address>
    </author>
    <author initials="R." surname="Thomas" fullname="Reji Thomas">
      <organization>Arista Networks</organization>
      <address>
        <postal>
          <street>Global Tech Park</street>
          <city>Bangalore</city>
          <region>Karnataka</region>
          <code>560103</code>
          <country>India</country>
        </postal>
        <email>reji.thomas@arista.com</email>
      </address>
    </author>
    <author initials="C." surname="Lenart" fullname="Chris Lenart">
      <organization>Verizon</organization>
      <address>
        <postal>
          <street>22001 Loudoun County Parkway</street>
          <city>Ashburn</city>
          <region>Virginia</region>
          <code>20147</code>
          <country>USA</country>
        </postal>
        <email>chris.lenart@verizon.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="12"/>
    <area>Internet Engineering Steering Group</area>
    <workgroup>int-area</workgroup>
    <keyword>Ping</keyword>
    <abstract>
      <?line 75?>

<t>This document specifies a network diagnostic tool called PROBE. PROBE
is similar to PING in that it can be used to query the status of a
probed interface, but it differs from PING in that it does not require
bidirectional connectivity between the probing and probed interfaces.
Instead, PROBE requires bidirectional connectivity between the probing
interface and a proxy interface. The proxy interface can reside on the
same node as the probed interface, or it can reside on a node to which
the probed interface is directly connected. This document updates RFC
4884 and obsoletes RFC 8335.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://fenner.github.io/probe-clarification/draft-ietf-intarea-rfc8335bis.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-intarea-rfc8335bis/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Internet Area Area mailing list (<eref target="mailto:int-area@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/int-area/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/int-area/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/fenner/probe-clarification"/>.</t>
    </note>
  </front>
  <middle>
    <?line 88?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Network operators use <xref target="RFC2151">PING</xref> to test
bidirectional connectivity between two interfaces. For the purposes of
this document, these interfaces are called the probing and probed
interfaces. PING sends an <xref target="RFC0792">ICMP</xref> <xref target="RFC4443"/> Echo Request
message from the probing interface to
the probed interface. The probing interface resides on a probing node
while the probed interface resides on a probed node.</t>
      <t>If the probed interface receives the ICMP Echo Request message, it
returns an ICMP Echo Reply. When the probing interface receives the ICMP
Echo Reply, it has verified bidirectional connectivity between the
probing and probed interfaces. Specifically, it has verified that:</t>
      <ul spacing="normal">
        <li>
          <t>The probing node can reach the probed interface.</t>
        </li>
        <li>
          <t>The probed interface is active.</t>
        </li>
        <li>
          <t>The probed node can reach the probing interface.</t>
        </li>
        <li>
          <t>The probing interface is active.</t>
        </li>
      </ul>
      <t>This document describes a network diagnostic tool called PROBE. PROBE
is similar to PING in that it can be used to query the status of a
probed interface, but it differs from PING in that it does not require
bidirectional connectivity between the probing and probed interfaces.
Instead, PROBE requires bidirectional connectivity between the probing
interface and a proxy interface. The proxy interface can reside on the
same node as the probed interface, or it can reside on a node to which
the probed interface is directly connected. A list of use cases for
this characteristic can be found in <xref target="usecase"/> of this document.</t>
      <t>Like PING, PROBE executes on a probing node. It sends an ICMP
Extended Echo Request message from a local interface, called the probing
interface, to a proxy interface. The proxy interface resides on a proxy
node.</t>
      <t>The ICMP Extended Echo Request contains an ICMP Extension Structure
and the ICMP Extension Structure contains an Interface Identification
Object. The Interface Identification Object identifies the probed
interface. The probed interface can reside on or be directly connected to the
proxy node.</t>
      <t>When the proxy interface receives the ICMP Extended Echo Request, the
proxy node executes access control procedures. If access is granted, the
proxy node determines the status of the probed interface and returns an
ICMP Extended Echo Reply message. The ICMP Extended Echo Reply indicates
the status of the probed interface.</t>
      <t>If the probed interface resides on the proxy node, PROBE determines
the status of the probed interface as it would determine its
<xref target="RFC8343">oper-status</xref>.
If oper-status is equal to 'up' (1),
PROBE reports that the probed interface is active. Otherwise, PROBE
reports that the probed interface is inactive.</t>
      <t>If the probed interface resides on a node that is directly connected
to the proxy node, and the probed interface appears in the <xref target="RFC0826">IPv4
Address Resolution Protocol (ARP) table</xref> or <xref target="RFC4861">IPv6 Neighbor
Cache</xref>, PROBE reports
interface reachability. Otherwise, PROBE reports that the table entry
does not exist.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>This document uses the following terms:</t>
        <ul spacing="normal">
          <li>
            <t>Probing interface: The interface that sends the ICMP Extended
Echo Request.</t>
          </li>
          <li>
            <t>Probing node: The node upon which the probing interface
resides.</t>
          </li>
          <li>
            <t>Proxy interface: The interface to which the ICMP Extended Echo
Request message is sent.</t>
          </li>
          <li>
            <t>Proxy node: The node upon which the proxy interface
resides.</t>
          </li>
          <li>
            <t>Probed interface: The interface whose status is being
queried.</t>
          </li>
          <li>
            <t>Probed node: The node upon which the probed interface resides.
If the proxy interface and the probed interface reside upon the
same node, the proxy node is also the probed node. Otherwise, the
proxy node is directly connected to the probed node.</t>
          </li>
        </ul>
      </section>
      <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="dontdothis">
        <name>A note on this document's use of ICMP Extensions</name>
        <t>This document defines a unique use of ICMP Extensions <xref target="RFC4884"/>.
Normally, ICMP Extensions are defined to start at a given point and
continue to the end of the packet.  However, when the extension
object is an Interface Identification Object as defined in this
memo, the extension structure (including the checksum) consists only
of that single ICMP Extension Object.  This is done to maintain
compatibility with the initial set of implementations of RFC8335,
which behave this way.
The ICMP Extension Structure checksum covers only the Interface
Identification Object.  Any data following it is not covered by
this checksum but is covered by the ICMP header checksum, which
protects the entire ICMP message (see <xref target="security"/> for further
discussion).
New uses of ICMP Extensions, and in fact
uses of Extended Echo using some object other than the Interface
Identification Object, <bcp14>SHOULD NOT</bcp14> behave this way.  Uses other than
defined in this memo <bcp14>SHOULD</bcp14> treat the ICMP Extension Structure as
extending to the end of the packet as <xref target="RFC4884"/> defines.</t>
      </section>
    </section>
    <section anchor="ExtendedEcho">
      <name>ICMP Extended Echo Request</name>
      <t>The ICMP Extended Echo Request message is defined for both ICMPv4 and
ICMPv6. Like any ICMP message, the ICMP Extended Echo Request message is
encapsulated in an IP header. The ICMPv4 version of the Extended Echo
Request message is encapsulated in an IPv4 header, while the ICMPv6
version is encapsulated in an IPv6 header.</t>
      <t><xref target="ICMPEchoFIG"/> depicts the ICMP Extended Echo Request
message.</t>
      <figure anchor="ICMPEchoFIG">
        <name>ICMP Extended Echo Request Message</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="208" width="528" viewBox="0 0 528 208" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 8,64 L 8,176" fill="none" stroke="black"/>
              <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
              <path d="M 264,64 L 264,128" fill="none" stroke="black"/>
              <path d="M 392,96 L 392,128" fill="none" stroke="black"/>
              <path d="M 504,96 L 504,128" fill="none" stroke="black"/>
              <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
              <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
              <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,160 L 80,160" fill="none" stroke="black"/>
              <g class="text">
                <text x="16" y="36">0</text>
                <text x="176" y="36">1</text>
                <text x="336" y="36">2</text>
                <text x="496" y="36">3</text>
                <text x="16" y="52">0</text>
                <text x="32" y="52">1</text>
                <text x="48" y="52">2</text>
                <text x="64" y="52">3</text>
                <text x="80" y="52">4</text>
                <text x="96" y="52">5</text>
                <text x="112" y="52">6</text>
                <text x="128" y="52">7</text>
                <text x="144" y="52">8</text>
                <text x="160" y="52">9</text>
                <text x="176" y="52">0</text>
                <text x="192" y="52">1</text>
                <text x="208" y="52">2</text>
                <text x="224" y="52">3</text>
                <text x="240" y="52">4</text>
                <text x="256" y="52">5</text>
                <text x="272" y="52">6</text>
                <text x="288" y="52">7</text>
                <text x="304" y="52">8</text>
                <text x="320" y="52">9</text>
                <text x="336" y="52">0</text>
                <text x="352" y="52">1</text>
                <text x="368" y="52">2</text>
                <text x="384" y="52">3</text>
                <text x="400" y="52">4</text>
                <text x="416" y="52">5</text>
                <text x="432" y="52">6</text>
                <text x="448" y="52">7</text>
                <text x="464" y="52">8</text>
                <text x="480" y="52">9</text>
                <text x="496" y="52">0</text>
                <text x="512" y="52">1</text>
                <text x="68" y="84">Type</text>
                <text x="196" y="84">Code</text>
                <text x="380" y="84">Checksum</text>
                <text x="140" y="116">Identifier</text>
                <text x="300" y="116">Sequence</text>
                <text x="364" y="116">Number</text>
                <text x="452" y="116">Reserved</text>
                <text x="512" y="116">L</text>
                <text x="52" y="148">ICMP</text>
                <text x="112" y="148">Extension</text>
                <text x="192" y="148">Structure</text>
                <text x="72" y="180">[Data...]</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type      |     Code      |          Checksum             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Identifier          |Sequence Number|   Reserved  |L|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   ICMP Extension Structure
   +-+-+-+-+-
   |   [Data...]
]]></artwork>
        </artset>
      </figure>
      <t>IP Header fields:</t>
      <ul spacing="normal">
        <li>
          <t>Source Address: The Source Address identifies the probing
interface. It <bcp14>MUST</bcp14> be a valid IPv4 or IPv6 unicast address.</t>
        </li>
        <li>
          <t>Destination Address: The Destination Address identifies the proxy
interface. It <bcp14>MUST</bcp14> be a unicast address.</t>
        </li>
      </ul>
      <t>ICMP fields:</t>
      <ul spacing="normal">
        <li>
          <t>Type: Extended Echo Request. The value for ICMPv4 is 42.
The value for ICMPv6 is 160.</t>
        </li>
        <li>
          <t>Code: <bcp14>MUST</bcp14> be set to 0 and <bcp14>MUST</bcp14> be ignored upon receipt.</t>
        </li>
        <li>
          <t>Checksum: For ICMPv4, see <xref target="RFC0792"/>. For ICMPv6, see <xref target="RFC4443"/>.</t>
        </li>
        <li>
          <t>Identifier: An Identifier to aid in matching Extended Echo
Replies to Extended Echo Requests. May be 0.</t>
        </li>
        <li>
          <t>Sequence Number: A Sequence Number to aid in matching Extended
Echo Replies to Extended Echo Requests. May be 0.</t>
        </li>
        <li>
          <t>Reserved: This field <bcp14>MUST</bcp14> be set to 0 and ignored upon
receipt.</t>
        </li>
        <li>
          <t>L (local): The L-bit is set if the probed interface resides on
the proxy node. The L-bit is clear if the probed interface is
directly connected to the proxy node.</t>
        </li>
        <li>
          <t>ICMP Extension Structure: The ICMP Extension Structure contains an
Interface Identification Object that identifies the probed interface.
The checksum in the ICMP Extension structure covers the Interface
Identification Object but not any (optional) data that follows.</t>
        </li>
      </ul>
      <t>Section 7 of <xref target="RFC4884"/> defines the ICMP Extension
Structure. As per RFC 4884, the Extension Structure contains exactly one
Extension Header followed by one or more objects. When applied to the
ICMP Extended Echo Request message, the Extension Object(s) define the
operation to perform. In the PROBE application, the ICMP Extension Structure <bcp14>MUST</bcp14>
contain exactly one instance of the <xref target="IntIdObj">Interface Identification Object</xref>,
and the ICMP Extension Structure
does not cover the rest of the packet; it ends at the end of the
single Interface Identification Object, and what follows is simply optional
data. The behavior when it contains a different Extension Object is not
defined by this memo. <xref target="I-D.ietf-6man-icmpv6-reflection"/> is an example
of a document which defines a different Extension Object and the corresponding
behavior.</t>
      <t>If the L-bit is set, the Interface Identification Object can identify
the probed interface by name, index, or address. If the L-bit is clear,
the Interface Identification Object <bcp14>MUST</bcp14> identify the probed interface
by address.</t>
      <t>If the Interface Identification Object identifies the probed
interface by address, that address can be a member of any address
family. For example, an ICMPv4 Extended Echo Request message can carry
an Interface Identification Object that identifies the probed interface
by IPv4 or IPv6 address. Likewise, an ICMPv6 Extended Echo
Request message can carry an Interface Identification Object that
identifies the probed interface by IPv4 or IPv6 address.</t>
      <t>The Interface Identification Object <bcp14>MAY</bcp14> be followed by an optional
data section, which is not interpreted but is simply present to be
copied to the ICMP Extended Echo Reply.</t>
      <t>The size of the resulting
packet <bcp14>MUST NOT</bcp14> exceed the outgoing interface MTU.</t>
      <section anchor="IntIdObj">
        <name>Interface Identification Object</name>
        <t>The Interface Identification Object identifies the probed interface
by name, index, or address. Like any other ICMP Extension Object, it
contains an Object Header and Object Payload. The Object Header
contains the following fields:</t>
        <ul spacing="normal">
          <li>
            <t>Class-Num: Interface Identification Object. The value is 3.</t>
          </li>
          <li>
            <t>C-Type: Values are (1) Identifies Interface by Name, (2)
Identifies Interface by Index, and (3) Identifies Interface by
Address.</t>
          </li>
          <li>
            <t>Length: Length of the object, measured in octets, including the
Object Header and Object Payload.</t>
          </li>
        </ul>
        <t>If the Interface Identification Object identifies the probed
interface by name, the Object Payload <bcp14>MUST</bcp14> be the interface name as
defined in <xref target="RFC8343"/>. If the Object Payload would not otherwise
terminate on a 32-bit boundary, it <bcp14>MUST</bcp14> be padded with ASCII NUL
characters, adjusting the Length accordingly.</t>
        <t>If the Interface Identification Object identifies the probed
interface by index, the length is equal to 8 and the payload contains
the if-index <xref target="RFC8343"/>.</t>
        <t>If the Interface Identification Object identifies the probed
interface by address, the payload is as depicted in <xref target="addrFig"/>.</t>
        <figure anchor="addrFig">
          <name>Interface Identification Object - C-Type 3 Payload</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="128" width="528" viewBox="0 0 528 128" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,112" fill="none" stroke="black"/>
                <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
                <path d="M 392,64 L 392,96" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,96" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="120" y="84">AFI</text>
                  <text x="304" y="84">Address</text>
                  <text x="364" y="84">Length</text>
                  <text x="452" y="84">Reserved</text>
                  <text x="168" y="116">Address</text>
                  <text x="236" y="116">....</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            AFI                | Address Length|   Reserved    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                Address   ....
]]></artwork>
          </artset>
        </figure>
        <t>Payload fields are defined as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Address Family Identifier (AFI): This 16-bit field identifies
the type of address represented by the Address field. All values
found in the IANA registry of Address Family Numbers (available
from <xref target="IANA.address-family-numbers"/>)
are valid in this field.</t>
          </li>
          <li>
            <t>Address Length: Number of significant bytes contained by the
Address field. (The Address field contains significant bytes and
padding bytes.)</t>
          </li>
          <li>
            <t>Reserved: This field <bcp14>MUST</bcp14> be set to 0 and ignored upon
receipt.</t>
          </li>
          <li>
            <t>Address: This variable-length field represents a unicast address
associated with the probed interface. If the address field would
not otherwise terminate on a 32-bit boundary, it <bcp14>MUST</bcp14> be padded
with zeroes.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="ExtendedEchoReply">
      <name>ICMP Extended Echo Reply</name>
      <t>The ICMP Extended Echo Reply message is defined for both ICMPv4 and
ICMPv6. Like any ICMP message, the ICMP Extended Echo Reply message is
encapsulated in an IP header. The ICMPv4 version of the Extended Echo
Reply message is encapsulated in an IPv4 header, while the ICMPv6
version is encapsulated in an IPv6 header.</t>
      <t><xref target="ICMPEchoReplyFIG"/> depicts the ICMP Extended Echo
Reply message.</t>
      <figure anchor="ICMPEchoReplyFIG">
        <name>ICMP Extended Echo Reply Message</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="208" width="528" viewBox="0 0 528 208" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 8,64 L 8,176" fill="none" stroke="black"/>
              <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
              <path d="M 264,64 L 264,128" fill="none" stroke="black"/>
              <path d="M 392,96 L 392,128" fill="none" stroke="black"/>
              <path d="M 440,96 L 440,128" fill="none" stroke="black"/>
              <path d="M 472,96 L 472,128" fill="none" stroke="black"/>
              <path d="M 488,96 L 488,128" fill="none" stroke="black"/>
              <path d="M 504,96 L 504,128" fill="none" stroke="black"/>
              <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
              <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
              <path d="M 8,128 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,160 L 80,160" fill="none" stroke="black"/>
              <g class="text">
                <text x="16" y="36">0</text>
                <text x="176" y="36">1</text>
                <text x="336" y="36">2</text>
                <text x="496" y="36">3</text>
                <text x="16" y="52">0</text>
                <text x="32" y="52">1</text>
                <text x="48" y="52">2</text>
                <text x="64" y="52">3</text>
                <text x="80" y="52">4</text>
                <text x="96" y="52">5</text>
                <text x="112" y="52">6</text>
                <text x="128" y="52">7</text>
                <text x="144" y="52">8</text>
                <text x="160" y="52">9</text>
                <text x="176" y="52">0</text>
                <text x="192" y="52">1</text>
                <text x="208" y="52">2</text>
                <text x="224" y="52">3</text>
                <text x="240" y="52">4</text>
                <text x="256" y="52">5</text>
                <text x="272" y="52">6</text>
                <text x="288" y="52">7</text>
                <text x="304" y="52">8</text>
                <text x="320" y="52">9</text>
                <text x="336" y="52">0</text>
                <text x="352" y="52">1</text>
                <text x="368" y="52">2</text>
                <text x="384" y="52">3</text>
                <text x="400" y="52">4</text>
                <text x="416" y="52">5</text>
                <text x="432" y="52">6</text>
                <text x="448" y="52">7</text>
                <text x="464" y="52">8</text>
                <text x="480" y="52">9</text>
                <text x="496" y="52">0</text>
                <text x="512" y="52">1</text>
                <text x="68" y="84">Type</text>
                <text x="196" y="84">Code</text>
                <text x="380" y="84">Checksum</text>
                <text x="140" y="116">Identifier</text>
                <text x="300" y="116">Sequence</text>
                <text x="364" y="116">Number</text>
                <text x="416" y="116">State</text>
                <text x="456" y="116">Res</text>
                <text x="480" y="116">A</text>
                <text x="496" y="116">4</text>
                <text x="512" y="116">6</text>
                <text x="52" y="148">ICMP</text>
                <text x="112" y="148">Extension</text>
                <text x="192" y="148">Structure</text>
                <text x="72" y="180">[Data...]</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type      |     Code      |          Checksum             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Identifier          |Sequence Number|State|Res|A|4|6|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   ICMP Extension Structure
   +-+-+-+-+-
   |   [Data...]
]]></artwork>
        </artset>
      </figure>
      <t>IP Header fields:</t>
      <ul spacing="normal">
        <li>
          <t>Source Address: Copied from the Destination Address field of the
invoking Extended Echo Request message.</t>
        </li>
        <li>
          <t>Destination Address: Copied from the Source Address field of the
invoking Extended Echo Request message.</t>
        </li>
      </ul>
      <t>ICMP fields:</t>
      <ul spacing="normal">
        <li>
          <t>Type: Extended Echo Reply. The value for ICMPv4 is 43.
The value for ICMPv6 is 161.</t>
        </li>
        <li>
          <t>Code: Values are (0) No Error, (1) Malformed Query, (2) No Such Interface,
(3) No Such Table Entry, and (4) Multiple Interfaces Satisfy Query.</t>
        </li>
        <li>
          <t>Checksum: For ICMPv4, see <xref target="RFC0792"/>. For ICMPv6, see <xref target="RFC4443"/>.</t>
        </li>
        <li>
          <t>Identifier: Copied from the Identifier field of the invoking
Extended Echo Request packet.</t>
        </li>
        <li>
          <t>Sequence Number: Copied from the Sequence Number field of the
invoking Extended Echo Request packet.</t>
        </li>
        <li>
          <t>State: If Code is not equal to 0, this field <bcp14>MUST</bcp14> be set to 0
and ignored upon receipt. Likewise, if the probed interface resides
upon the proxy node, this field <bcp14>MUST</bcp14> be set to 0 and ignored upon
receipt. Otherwise, this field reflects the state of the ARP table
or Neighbor Cache entry associated with the probed interface. Values
are (0) Reserved, (1) Incomplete, (2) Reachable, (3) Stale, (4) Delay,
(5) Probe, and (6) Failed.</t>
        </li>
        <li>
          <t>Res: This field <bcp14>MUST</bcp14> be set to 0 and ignored upon receipt.</t>
        </li>
        <li>
          <t>A (Active): The A-bit is set if the Code is equal to 0, the
probed interface resides on the proxy node, and the probed interface
is active. Otherwise, the A-bit is clear.</t>
        </li>
        <li>
          <t>4 (IPv4): The 4-bit is set if the A-bit is also set and IPv4 is
running on the probed interface. Otherwise, the 4-bit is clear.</t>
        </li>
        <li>
          <t>6 (IPv6): The 6-bit is set if the A-bit is also set and IPv6 is
running on the probed interface. Otherwise, the 6-bit is clear.</t>
        </li>
      </ul>
    </section>
    <section anchor="proc">
      <name>ICMP Message Processing</name>
      <t>When a node receives an ICMP Extended Echo Request message and any of
the following conditions apply, the node <bcp14>MUST</bcp14> silently discard the
incoming message:</t>
      <ul spacing="normal">
        <li>
          <t>The node does not recognize ICMP Extended Echo Request
messages.</t>
        </li>
        <li>
          <t>The node has not explicitly enabled ICMP Extended Echo
functionality.</t>
        </li>
        <li>
          <t>The incoming ICMP Extend Echo Request carries a Source Address
that is not explicitly authorized for the L-bit setting of the
incoming ICMP Extended Echo Request.</t>
        </li>
        <li>
          <t>The incoming ICMP Extend Echo Request carries a Source Address
that is not explicitly authorized for the incoming ICMP Extended
Echo Request type (i.e., by name, by if-index, or by address).</t>
        </li>
        <li>
          <t>The Source Address of the incoming message is not a unicast
address.</t>
        </li>
        <li>
          <t>The Destination Address of the incoming message is a multicast
address.</t>
        </li>
      </ul>
      <t>Otherwise, when a node receives an ICMPv4 Extended Echo Request, it
<bcp14>MUST</bcp14> format the IPv4 header of an ICMPv4 Extended Echo Reply as follows:</t>
      <ul spacing="normal">
        <li>
          <t>TTL is 255</t>
        </li>
        <li>
          <t>Protocol is ICMP</t>
        </li>
        <li>
          <t>Indicate that the packet is not source fragmented and must not be on-path fragmented with the following values:  </t>
          <ul spacing="normal">
            <li>
              <t>Don't Fragment (DF) flag is 1</t>
            </li>
            <li>
              <t>More Fragments flag is 0</t>
            </li>
            <li>
              <t>Fragment Offset is 0</t>
            </li>
          </ul>
        </li>
      </ul>
      <t>When a node receives an ICMPv6 Extended Echo Request, it <bcp14>MUST</bcp14>
format the IPv6 header of an ICMPv6 Extended Echo Reply as follows:</t>
      <ul spacing="normal">
        <li>
          <t>Hop Limit is 255</t>
        </li>
        <li>
          <t>Next Header is ICMPv6</t>
        </li>
        <li>
          <t>Indicate that the packet is not source fragmented  </t>
          <ul spacing="normal">
            <li>
              <t>Do not include an IPv6 Fragmentation Header</t>
            </li>
          </ul>
        </li>
        <li>
          <t>This document does not specify any value for the Flow Label field</t>
        </li>
      </ul>
      <t>In either case, the responding node <bcp14>MUST</bcp14> do the following:</t>
      <ul spacing="normal">
        <li>
          <t>Copy the Source Address from the Extended Echo Request message to
the Destination Address of the Extended Echo Reply.</t>
        </li>
        <li>
          <t>Copy the Destination Address from the Extended Echo Request
message to the Source Address of the Extended Echo Reply.</t>
        </li>
        <li>
          <t>Set the DiffServ codepoint to <xref target="RFC4594">CS0</xref>.</t>
        </li>
        <li>
          <t>Set the ICMP Type to Extended Echo Reply.</t>
        </li>
        <li>
          <t>Copy the Identifier from the Extended Echo Request message to the
Extended Echo Reply.</t>
        </li>
        <li>
          <t>Copy the Sequence Number from the Extended Echo Request message
to the Extended Echo Reply.</t>
        </li>
        <li>
          <t>Set the Code field as described in <xref target="code"/>.</t>
        </li>
        <li>
          <t>Set the State field to 0.</t>
        </li>
        <li>
          <t>Clear the A-bit, the 4-bit, and the 6-bit.</t>
        </li>
        <li>
          <t>If (1) the Code Field is equal to (0) No Error, (2) the L-bit is set,
and (3) the probed interface is active, set the A-bit. Also, set the
4-bit and the 6-bit as appropriate.</t>
        </li>
        <li>
          <t>If the Code field is equal to (0) No Error and the L-bit is
clear, then set the State field to reflect the state of the ARP table or
Neighbor Cache entry that represents the probed interface.</t>
        </li>
        <li>
          <t>Copy the ICMP Extension Structure, ICMP Extension Object, and Data
(if any) from the Extended Echo Request message.</t>
        </li>
        <li>
          <t>Set the Checksum appropriately.</t>
        </li>
        <li>
          <t>Forward the ICMP Extended Echo Reply to its destination. The size of the
resulting packet <bcp14>MUST NOT</bcp14> exceed the outgoing interface MTU.</t>
        </li>
      </ul>
      <section anchor="code">
        <name>Code Field Processing</name>
        <t>The Code field <bcp14>MUST</bcp14> be set to (1) Malformed Query if any of the
following conditions apply:</t>
        <ul spacing="normal">
          <li>
            <t>The ICMP Extended Echo Request does not include an ICMP
Extension Structure.</t>
          </li>
          <li>
            <t>The ICMP Extension Structure does not include exactly one
Interface Identification Object.</t>
          </li>
          <li>
            <t>The ICMP Extension Structure checksum is 0 or incorrect.</t>
          </li>
          <li>
            <t>The L-bit is clear and the Interface Identification Object
identifies the probed interface by name or if-index.</t>
          </li>
          <li>
            <t>The query is otherwise malformed.</t>
          </li>
        </ul>
        <t>The Code field <bcp14>MUST</bcp14> be set to (2) No Such Interface if the
L-bit is set and the ICMP Extension Structure does not identify an
interface that resides on the proxy node.</t>
        <t>The Code field <bcp14>MUST</bcp14> be set to (3) No Such Table Entry if the L-bit
is clear and the address found in the Interface Identification Object
does not appear in the IPv4 Address Resolution Protocol (ARP) table or
the IPv6 Neighbor Cache. More precisely, if the AFI is 1 (IPv4), the
IPv4 ARP table is used. If the AFI is 2 (IPv6), the IPv6 Neighbor Cache
is used. For any other AFI value, No Such Table Entry is used as there
is no table to inspect.</t>
        <t>The Code field <bcp14>MUST</bcp14> be set to (4) Multiple Interfaces Satisfy Query
if any of the following conditions apply:</t>
        <ul spacing="normal">
          <li>
            <t>The L-bit is set and the ICMP Extension Structure identifies
more than one interface that resides in the proxy node.</t>
          </li>
          <li>
            <t>The L-bit is clear and the address found in the Interface
Identification Object maps to multiple IPv4 ARP or IPv6 Neighbor
Cache entries.</t>
          </li>
        </ul>
        <t>Otherwise, the Code field <bcp14>MUST</bcp14> be set to (0) No Error.</t>
      </section>
    </section>
    <section anchor="usecase">
      <name>Use Cases</name>
      <t>In the scenarios listed below, network operators can use PROBE to
determine the status of a probed interface but cannot use PING for the
same purpose. In all scenarios, assume bidirectional connectivity
between the probing and proxy interfaces. However, bidirectional
connectivity between the probing and probed interfaces is lacking.</t>
      <ul spacing="normal">
        <li>
          <t>The probed interface is unnumbered.</t>
        </li>
        <li>
          <t>The probing and probed interfaces are not directly connected to
one another. The probed interface has an IPv6 link-local address
but does not have a more globally scoped address.</t>
        </li>
        <li>
          <t>The probing interface runs IPv4 only while the probed interface
runs IPv6 only.</t>
        </li>
        <li>
          <t>The probing interface runs IPv6 only while the probed interface
runs IPv4 only.</t>
        </li>
        <li>
          <t>For lack of a route, the probing node cannot reach the probed
interface.</t>
        </li>
      </ul>
      <section anchor="caveats">
        <name>Caveats</name>
        <t>A limitation of PROBE is that if probing a link-local destination
with the L-bit clear, and the same link-local address is used by
multiple neighbors, you may get one of three code values in response:</t>
        <ul spacing="normal">
          <li>
            <t>No Such Table Entry, if none of the neighbors are currently in
the table.</t>
          </li>
          <li>
            <t>No Error, if one neighbor is currently in the table, but there is
no indication as to which neighbor.</t>
          </li>
          <li>
            <t>Multiple Interfaces Satisfy Query, if more than one such neighbor
is in the table.</t>
          </li>
        </ul>
        <t>Similarly, when identifying a local interface by link-local address
(the L-bit is set), and the same link-local address is assigned to
multiple interfaces, you will get a response with the code Multiple
Interfaces Satisfy Query, with no indication which interface is
active or able to pass traffic.</t>
      </section>
    </section>
    <section anchor="updates-to-rfc-4884">
      <name>Updates to RFC 4884</name>
      <t>Section 4.6 of <xref target="RFC4884"/> provides a list of extensible ICMP messages
(i.e., messages that can carry the ICMP Extension Structure). This
document adds the ICMP Extended Echo Request message and the ICMP
Extended Echo Reply message to that list.</t>
    </section>
    <section anchor="changes">
      <name>Changes from RFC 8335</name>
      <t>This document updates <xref target="RFC8335"/> to clarify the handling of
extra data beyond the ICMP Extension Structure, that data is
echoed in the response packet, and checksum handling in the ICMP
Extension Structure.</t>
      <t>Specifically,</t>
      <ul spacing="normal">
        <li>
          <t>Updated <xref target="ICMPEchoFIG"/> to reflect the presence of the ICMP Extension Object
and additional data.</t>
        </li>
        <li>
          <t>Updated <xref target="ExtendedEcho"/> to mention the ICMP Extension Structure checksum,
and extra verbosity about how the Extension Structure does not cover the
rest of the packet.</t>
        </li>
        <li>
          <t>Updated <xref target="ICMPEchoReplyFIG"/> to reflect the presence of the ICMP Extension
Structure and additional data.</t>
        </li>
        <li>
          <t>Added a step in <xref target="proc"/> about copying data from the request to the
response.</t>
        </li>
        <li>
          <t>Added a step in <xref target="code"/> about validating the ICMP Extension Structure checksum.</t>
        </li>
        <li>
          <t>Added section <xref target="applicationDisplay"/> to suggest human-readable display
of PROBE responses</t>
        </li>
        <li>
          <t>Clarified in <xref target="IntIdObj"/> that the length of an ifName Object is adjusted
when padding is added.</t>
        </li>
      </ul>
    </section>
    <section removeInRFC="true" anchor="internet-draft-change-history">
      <name>Internet Draft Change History</name>
      <section anchor="changes-from-draft-fenner-intarea-probe-clarification-00">
        <name>Changes from draft-fenner-intarea-probe-clarification-00</name>
        <ul spacing="normal">
          <li>
            <t>Changed "NULL" to "NUL" when referring to the ASCII control character,
per RFC20.</t>
          </li>
          <li>
            <t>Consistently refer to interface name and index using their yang names,
not SNMP names.</t>
          </li>
          <li>
            <t>Added [] around the Data following the ICMP Extension Structure in <xref target="ICMPEchoFIG"/>
and <xref target="ICMPEchoReplyFIG"/> to indicate that it is optional.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-fenner-intarea-probe-clarification-01">
        <name>Changes from draft-fenner-intarea-probe-clarification-01</name>
        <ul spacing="normal">
          <li>
            <t>Updated the section on ICMP Extension header format to say that different
ICMP Extension Option headers may be present, and if they are, the
mechanism is not as specified in this memo.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-fenner-intarea-probe-clarification-02">
        <name>Changes from draft-fenner-intarea-probe-clarification-02</name>
        <ul spacing="normal">
          <li>
            <t>Made a stronger statement about not copying this behavior in
<xref target="dontdothis"/></t>
          </li>
          <li>
            <t>Renamed to rfc8335bis and made WG document</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-00">
        <name>Changes from draft-int-intarea-rfc8335bis-00</name>
        <ul spacing="normal">
          <li>
            <t>Changed "For the operations in this memo" to "In the PROBE application" to
better align with draft-ietf-6man-icmpv6-reflection</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-01">
        <name>Changes from draft-int-intarea-rfc8335bis-01</name>
        <ul spacing="normal">
          <li>
            <t>None</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-02">
        <name>Changes from draft-int-intarea-rfc8335bis-02</name>
        <ul spacing="normal">
          <li>
            <t>Added reference to draft-ietf-6man-icmpv6-reflection</t>
          </li>
          <li>
            <t>Updated some "RFC NNN" references to bibliography references</t>
          </li>
          <li>
            <t>Add <bcp14>MUST NOT</bcp14> exceed MTU.</t>
          </li>
          <li>
            <t>Added details of IPv4/IPv6 headers and avoidance of fragmentation to <xref target="proc"/></t>
          </li>
          <li>
            <t>Added IP address and interface index considerations to <xref target="security"/></t>
          </li>
          <li>
            <t>Add new <xref target="manageability"/> (Manageability Considerations) immediately
before <xref target="security"/>, per RFC 5706 Section 4.3 guidance.</t>
          </li>
          <li>
            <t>Add to <xref target="security"/> details of Amplification risk, Covert channel potential,
On-path attacker modification, ICMP header checksum scope.</t>
          </li>
          <li>
            <t>Broaden VPN isolation language to cover network instances
and logical network elements.</t>
          </li>
          <li>
            <t>Clarify the wording of <xref target="dontdothis"/>, including further wording about
the checksum coverage.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-03">
        <name>Changes from draft-int-intarea-rfc8335bis-03</name>
        <ul spacing="normal">
          <li>
            <t>Manageability Considerations:  </t>
            <ul spacing="normal">
              <li>
                <t>Don't duplicate the configuration items from the security
considerations section</t>
              </li>
              <li>
                <t>Clarify that response is the same size as the request, so there
is no amplification vector.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-04">
        <name>Changes from draft-int-intarea-rfc8335bis-04</name>
        <ul spacing="normal">
          <li>
            <t>Marked this section as removeInRFC="true", while splitting off
<xref target="changes"/></t>
          </li>
          <li>
            <t>Clarified that the address object must identify a unicast address</t>
          </li>
          <li>
            <t>Added <xref target="deployment"/></t>
          </li>
          <li>
            <t>Clarified that we do not specify the flow label</t>
          </li>
          <li>
            <t>Removed "densely" from the concern of enumerating all interfaces,
since it only takes 4,294,967,295 packets to enumerate the entire
number space.</t>
          </li>
          <li>
            <t>Use "specifies" instead of "describes" in abstract</t>
          </li>
          <li>
            <t>Clarified that AFI=1 means look in the ARP table, AFI=2 means
look in the IPv6 Neighbor Cache, and any other AFI means
No Such Table Entry since there is no table.</t>
          </li>
          <li>
            <t>Split the acknowledgements, and created a placeholder authors
section.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-from-draft-int-intarea-rfc8335bis-05">
        <name>Changes from draft-int-intarea-rfc8335bis-05</name>
        <ul spacing="normal">
          <li>
            <t>Moved historical authors to RFC8335 authors section.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>IANA is requested to update the references for the below
actions from <xref target="RFC8335"/> to refer to this document.</t>
      <t>IANA has performed the following actions:</t>
      <ul spacing="normal">
        <li>
          <t>Added the following to the "ICMP Type Numbers" registry:  </t>
          <artwork><![CDATA[
   42 Extended Echo Request
]]></artwork>
          <t>
Added the following to the "Type 42 - Extended Echo Request"
subregistry:  </t>
          <artwork><![CDATA[
   (0) No Error
]]></artwork>
        </li>
        <li>
          <t>Added the following to the "ICMPv6 'type' Numbers" registry:  </t>
          <artwork><![CDATA[
   160 Extended Echo Request

   As ICMPv6 distinguishes between informational and error
   messages, and this is an informational message, the value has
   been assigned from the range 128-255.
]]></artwork>
          <t>
Added the following to the "Type 160 - Extended Echo Request"
subregistry:  </t>
          <artwork><![CDATA[
   (0) No Error
]]></artwork>
        </li>
        <li>
          <t>Added the following to the "ICMP Type Numbers" registry:  </t>
          <artwork><![CDATA[
   43 Extended Echo Reply
]]></artwork>
          <t>
Added the following to the "Type 43 - Extended Echo Reply"
subregistry:  </t>
          <artwork><![CDATA[
   (0) No Error
   (1) Malformed Query
   (2) No Such Interface
   (3) No Such Table Entry
   (4) Multiple Interfaces Satisfy Query
]]></artwork>
        </li>
        <li>
          <t>Added the following to the "ICMPv6 'type' Numbers" registry:  </t>
          <artwork><![CDATA[
   161 Extended Echo Reply

   As ICMPv6 distinguishes between informational and error
   messages, and this is an informational message, the value has
   been assigned from the range 128-255.
]]></artwork>
          <t>
Added the following to the "Type 161 - Extended Echo Reply"
subregistry:  </t>
          <artwork><![CDATA[
   (0) No Error
   (1) Malformed Query
   (2) No Such Interface
   (3) No Such Table Entry
   (4) Multiple Interfaces Satisfy Query
]]></artwork>
        </li>
        <li>
          <t>Added the following to the "ICMP Extension Object Classes and
Class Sub-types" registry:  </t>
          <artwork><![CDATA[
   (3) Interface Identification Object
]]></artwork>
          <t>
Added the following C-types to the "Sub-types - Class 3 -
Interface Identification Object" subregistry:  </t>
          <artwork><![CDATA[
   (0) Reserved
   (1) Identifies Interface by Name
   (2) Identifies Interface by Index
   (3) Identifies Interface by Address
]]></artwork>
          <t>
C-Type values are assigned on a First Come First Serve (FCFS)
basis with a range of 0-255.</t>
        </li>
      </ul>
      <t>All codes mentioned above are assigned on an FCFS basis with a range
of 0-255.</t>
    </section>
    <section anchor="manageability">
      <name>Manageability Considerations</name>
      <t>This section discusses manageability aspects of PROBE.
PROBE is an on-demand diagnostic tool analogous to PING.
It does not run autonomously, does not maintain
persistent protocol state, and does not require a formal
information model or data-model definition.  The subsections below
address the aspects of <xref target="RFC5706"/> that are applicable to PROBE.</t>
      <section anchor="control-of-function-and-policy">
        <name>Control of Function and Policy</name>
        <t>Security configuration for implementations of the
ICMP Extended Echo functionality support
are specified in <xref target="security"/>.</t>
        <t>These parameters are local to each node and take effect
immediately; no protocol restart or network-wide coordination is
required.  An operator must explicitly enable the feature and
configure authorized source prefixes before a node will respond
to any Extended Echo Request.</t>
        <t>No MIB module or YANG data model is defined for these parameters.
A YANG model may be defined in a separate document in the future.</t>
      </section>
      <section anchor="monitoring-and-verifying-operation">
        <name>Monitoring and Verifying Operation</name>
        <t>Correct operation of PROBE can be verified by sending an ICMP
Extended Echo Request to a proxy node and examining the Code field
of the ICMP Extended Echo Reply (<xref target="code"/>).  A Code of 0 (No
Error) with the expected interface status confirms correct
operation.  Non-zero Code values indicate specific error conditions
enumerated in <xref target="code"/>.</t>
        <t>The PROBE application described in <xref target="application"/> sends iterative
queries and reports per-query results including round-trip time.
This round-trip time reflects the path latency between the probing
node and the proxy node, not a property of the probed interface
itself.</t>
        <t>Implementations <bcp14>MAY</bcp14> log received Extended Echo Requests at a debug
level and <bcp14>MAY</bcp14> maintain counters of received, accepted, and
discarded Extended Echo Requests as part of their general ICMP
statistics, to assist operators in troubleshooting access-control
configuration and detecting unexpected traffic.</t>
      </section>
      <section anchor="deployment-and-backward-compatibility">
        <name>Deployment and Backward Compatibility</name>
        <t>PROBE is deployed on individual nodes and invoked on demand by
operators or network management applications.  It does not require
network-wide signaling, discovery, or coordination.  Operators
deploying PROBE <bcp14>SHOULD</bcp14>:</t>
        <ul spacing="normal">
          <li>
            <t>Enable Extended Echo functionality only on nodes that require
diagnostic access.</t>
          </li>
          <li>
            <t>Restrict permitted source prefixes to authorized management
networks.</t>
          </li>
          <li>
            <t>Apply rate-limiting to Extended Echo Requests consistent with
existing ICMP rate-limiting policies.</t>
          </li>
        </ul>
        <t>This document obsoletes <xref target="RFC8335"/>.  All known implementations of
<xref target="RFC8335"/> are compatible with this document.  The differences
between this document and <xref target="RFC8335"/> are clarifications of the
packet format and processing rules and not changes to on-the-wire
behavior.  Nodes implementing this document interoperate with
nodes implementing <xref target="RFC8335"/> without any transition mechanism or
behavioral migration.</t>
      </section>
      <section anchor="impact-on-network-operation">
        <name>Impact on Network Operation</name>
        <t>Each PROBE invocation generates one ICMP Extended Echo Request and
one ICMP Extended Echo Reply.  Each query is independent; there is
no persistent session or periodic message exchange.  The
processing cost on the proxy node is comparable to that of a
standard ICMP Echo Request.</t>
        <t>Frequent automated use of PROBE (e.g., by a management
application polling many interfaces) could increase ICMP traffic
on the network.  Operators <bcp14>SHOULD</bcp14> apply rate-limiting at the
responder (<xref target="security"/>) consistent with their existing ICMP
rate-limiting policies to bound this load.</t>
      </section>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>The following are legitimate uses of PROBE:</t>
      <ul spacing="normal">
        <li>
          <t>to determine the operational status of an interface.</t>
        </li>
        <li>
          <t>to determine which protocols (e.g., IPv4 or IPv6) are active on an
interface.</t>
        </li>
      </ul>
      <t>However, malicious parties can use PROBE to obtain additional
information. For example, a malicious party can use PROBE to discover
interface names. Having discovered an interface name, the malicious
party may be able to infer additional information. Additional
information may include:</t>
      <ul spacing="normal">
        <li>
          <t>interface bandwidth</t>
        </li>
        <li>
          <t>the type of device that supports the interface (e.g., vendor
identity)</t>
        </li>
        <li>
          <t>the operating system version that the above-mentioned device
executes</t>
        </li>
      </ul>
      <t>Addresses and interface index values can also give away information
that might not want to be shared. For example, a malicious party can
use PROBE to determine that a given IP address is assigned to any
interface on the probed node, or
it can determine how many interfaces exist on the
probed node.</t>
      <t>Understanding these risks, network operators establish policies that
restrict access to ICMP Extended Echo functionality. In order to enforce
these policies, nodes that support ICMP Extended Echo functionality <bcp14>MUST</bcp14>
support the following configuration options:</t>
      <ul spacing="normal">
        <li>
          <t>Enable/disable ICMP Extended Echo functionality. By default, ICMP
Extend Echo functionality is disabled.</t>
        </li>
        <li>
          <t>Define enabled L-bit settings. By default, the option to set the L-bit
is enabled and the option to clear the L-bit is disabled.</t>
        </li>
        <li>
          <t>Define enabled query types (i.e., by name, by index, or by address);
by default, all query types are disabled.</t>
        </li>
        <li>
          <t>For each enabled query type, define the prefixes from which ICMP
Extended Echo Request messages are permitted.</t>
        </li>
        <li>
          <t>For each interface, determine whether ICMP Echo Request messages
are accepted.</t>
        </li>
      </ul>
      <t>When a node receives an ICMP Extended Echo Request message that it is
not configured to support, it <bcp14>MUST</bcp14> silently discard the message. See <xref target="proc"/> for details.</t>
      <t>PROBE must not leak information across network instance boundaries.
Therefore, when a node receives an ICMP Extended Echo Request and
the proxy interface and the probed interface are in different
Virtual Private Networks (VPNs), network instances <xref target="RFC8529"/>, or
logical network elements <xref target="RFC8530"/>, the node <bcp14>MUST</bcp14> return an ICMP
Extended Echo Reply with error code equal to (2) No Such Interface.</t>
      <t>In order to protect local resources, implementations <bcp14>SHOULD</bcp14>
rate-limit incoming ICMP Extended Echo Request messages.</t>
      <t>PROBE does not present an amplification risk.  The ICMP
Extended Echo Reply is the same size as the corresponding
ICMP Extended Echo Request; therefore, PROBE is not a useful
amplification vector.</t>
      <t>As with any ICMP message that carries an opaque data payload, the
optional data field could theoretically be used as a covert channel.
The rate-limiting recommended above bounds the throughput of any such
channel.</t>
      <t>An on-path attacker can modify ICMP Extended Echo Request or Reply
messages to return incorrect interface status information.  This
risk is shared with all ICMP messages and is not unique to PROBE.
When integrity protection of PROBE messages is required, IPsec
<xref target="RFC4301"/> <bcp14>SHOULD</bcp14> be used.</t>
      <t>The ICMP header checksum provides integrity protection for the
entire ICMP message, including any data following the ICMP Extension
Structure.  However, this is a non-cryptographic checksum intended
for error detection, not protection against intentional
modification.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC4884">
          <front>
            <title>Extended ICMP to Support Multi-Part Messages</title>
            <author fullname="R. Bonica" initials="R." surname="Bonica"/>
            <author fullname="D. Gan" initials="D." surname="Gan"/>
            <author fullname="D. Tappan" initials="D." surname="Tappan"/>
            <author fullname="C. Pignataro" initials="C." surname="Pignataro"/>
            <date month="April" year="2007"/>
            <abstract>
              <t>This document redefines selected ICMP messages to support multi-part operation. A multi-part ICMP message carries all of the information that ICMP messages carried previously, as well as additional information that applications may require.</t>
              <t>Multi-part messages are supported by an ICMP extension structure. The extension structure is situated at the end of the ICMP message. It includes an extension header followed by one or more extension objects. Each extension object contains an object header and object payload. All object headers share a common format.</t>
              <t>This document further redefines the above mentioned ICMP messages by specifying a length attribute. All of the currently defined ICMP messages to which an extension structure can be appended include an "original datagram" field. The "original datagram" field contains the initial octets of the datagram that elicited the ICMP error message. Although the original datagram field is of variable length, the ICMP message does not include a field that specifies its length. Therefore, in order to facilitate message parsing, this document allocates eight previously reserved bits to reflect the length of the "original datagram" field.</t>
              <t>The proposed modifications change the requirements for ICMP compliance. The impact of these changes on compliant implementations is discussed, and new requirements for future implementations are presented.</t>
              <t>This memo updates RFC 792 and RFC 4443. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4884"/>
          <seriesInfo name="DOI" value="10.17487/RFC4884"/>
        </reference>
        <reference anchor="RFC0826">
          <front>
            <title>An Ethernet Address Resolution Protocol: Or Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware</title>
            <author fullname="D. Plummer" initials="D." surname="Plummer"/>
            <date month="November" year="1982"/>
            <abstract>
              <t>The purpose of this RFC is to present a method of Converting Protocol Addresses (e.g., IP addresses) to Local Network Addresses (e.g., Ethernet addresses). This is an issue of general concern in the ARPA Internet Community at this time. The method proposed here is presented for your consideration and comment. This is not the specification of an Internet Standard.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="37"/>
          <seriesInfo name="RFC" value="826"/>
          <seriesInfo name="DOI" value="10.17487/RFC0826"/>
        </reference>
        <reference anchor="RFC0792">
          <front>
            <title>Internet Control Message Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="September" year="1981"/>
          </front>
          <seriesInfo name="STD" value="5"/>
          <seriesInfo name="RFC" value="792"/>
          <seriesInfo name="DOI" value="10.17487/RFC0792"/>
        </reference>
        <reference anchor="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>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="RFC8343">
          <front>
            <title>A YANG Data Model for Interface Management</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines a YANG data model for the management of network interfaces. It is expected that interface-type-specific data models augment the generic interfaces data model defined in this document. The data model includes definitions for configuration and system state (status information and counters for the collection of statistics).</t>
              <t>The YANG data model in this document conforms to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document obsoletes RFC 7223.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8343"/>
          <seriesInfo name="DOI" value="10.17487/RFC8343"/>
        </reference>
        <reference anchor="RFC4443">
          <front>
            <title>Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification</title>
            <author fullname="A. Conta" initials="A." surname="Conta"/>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="M. Gupta" initials="M." role="editor" surname="Gupta"/>
            <date month="March" year="2006"/>
            <abstract>
              <t>This document describes the format of a set of control messages used in ICMPv6 (Internet Control Message Protocol). ICMPv6 is the Internet Control Message Protocol for Internet Protocol version 6 (IPv6). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="89"/>
          <seriesInfo name="RFC" value="4443"/>
          <seriesInfo name="DOI" value="10.17487/RFC4443"/>
        </reference>
        <reference anchor="RFC8335">
          <front>
            <title>PROBE: A Utility for Probing Interfaces</title>
            <author fullname="R. Bonica" initials="R." surname="Bonica"/>
            <author fullname="R. Thomas" initials="R." surname="Thomas"/>
            <author fullname="J. Linkova" initials="J." surname="Linkova"/>
            <author fullname="C. Lenart" initials="C." surname="Lenart"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <date month="February" year="2018"/>
            <abstract>
              <t>This document describes a network diagnostic tool called PROBE. PROBE is similar to PING in that it can be used to query the status of a probed interface, but it differs from PING in that it does not require bidirectional connectivity between the probing and probed interfaces. Instead, PROBE requires bidirectional connectivity between the probing interface and a proxy interface. The proxy interface can reside on the same node as the probed interface, or it can reside on a node to which the probed interface is directly connected. This document updates RFC 4884.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8335"/>
          <seriesInfo name="DOI" value="10.17487/RFC8335"/>
        </reference>
        <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="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="I-D.ietf-6man-icmpv6-reflection">
          <front>
            <title>Internet Control Message Protocol (ICMPv6) Reflection</title>
            <author fullname="Tal Mizrahi" initials="T." surname="Mizrahi">
              <organization>Huawei</organization>
            </author>
            <author fullname="hexiaoming" initials="X." surname="hexiaoming">
              <organization>China Telecom</organization>
            </author>
            <author fullname="Tianran Zhou" initials="T." surname="Zhou">
              <organization>Huawei</organization>
            </author>
            <author fullname="Ron Bonica" initials="R. P." surname="Bonica">
              <organization>HPE</organization>
            </author>
            <author fullname="Xiao Min" initials="X." surname="Min">
              <organization>ZTE Corp.</organization>
            </author>
            <date day="15" month="December" year="2025"/>
            <abstract>
              <t>   This document specifies the ICMPv6 Reflection utility.  The ICMPv6
   Reflection utility is a diagnostic tool, similar to Ping and the
   ICMPv6 PROBE utility.  It is similar to Ping and PROBE in that it
   relies on a stateless message exchange between a probing node and a
   probed node.  The probing node sends a request to the probed node and
   the probed node responds to the request.

   The ICMPv6 Reflection utility differs from Ping and PROBE because, in
   the ICMPv6 Reflection utility, the probing node requests a snapshot
   of the message that it sent, as it was when arrived at the probed
   node.  The probed node returns the requested snapshot.

   The ICMPv6 Reflection utility is useful because it can allow the user
   to see how the network modified the request as it traveled from the
   probing node to the probed node.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-6man-icmpv6-reflection-19"/>
        </reference>
        <reference anchor="RFC2151">
          <front>
            <title>A Primer On Internet and TCP/IP Tools and Utilities</title>
            <author fullname="G. Kessler" initials="G." surname="Kessler"/>
            <author fullname="S. Shepard" initials="S." surname="Shepard"/>
            <date month="June" year="1997"/>
            <abstract>
              <t>This memo is an introductory guide to many of the most commonly- available TCP/IP and Internet tools and utilities. It also describes discussion lists accessible from the Internet, ways to obtain Internet and TCP/IP documents, and some resources that help users weave their way through the Internet. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="FYI" value="30"/>
          <seriesInfo name="RFC" value="2151"/>
          <seriesInfo name="DOI" value="10.17487/RFC2151"/>
        </reference>
        <reference anchor="RFC4301">
          <front>
            <title>Security Architecture for the Internet Protocol</title>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <author fullname="K. Seo" initials="K." surname="Seo"/>
            <date month="December" year="2005"/>
            <abstract>
              <t>This document describes an updated version of the "Security Architecture for IP", which is designed to provide security services for traffic at the IP layer. This document obsoletes RFC 2401 (November 1998). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4301"/>
          <seriesInfo name="DOI" value="10.17487/RFC4301"/>
        </reference>
        <reference anchor="RFC4594">
          <front>
            <title>Configuration Guidelines for DiffServ Service Classes</title>
            <author fullname="J. Babiarz" initials="J." surname="Babiarz"/>
            <author fullname="K. Chan" initials="K." surname="Chan"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>This document describes service classes configured with Diffserv and recommends how they can be used and how to construct them using Differentiated Services Code Points (DSCPs), traffic conditioners, Per-Hop Behaviors (PHBs), and Active Queue Management (AQM) mechanisms. There is no intrinsic requirement that particular DSCPs, traffic conditioners, PHBs, and AQM be used for a certain service class, but as a policy and for interoperability it is useful to apply them consistently. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4594"/>
          <seriesInfo name="DOI" value="10.17487/RFC4594"/>
        </reference>
        <reference anchor="RFC8529">
          <front>
            <title>YANG Data Model for Network Instances</title>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <author fullname="A. Lindem" initials="A." surname="Lindem"/>
            <author fullname="D. Bogdanovic" initials="D." surname="Bogdanovic"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document defines a network instance module. This module can be used to manage the virtual resource partitioning that may be present on a network device. Examples of common industry terms for virtual resource partitioning are VPN Routing and Forwarding (VRF) instances and Virtual Switch Instances (VSIs).</t>
              <t>The YANG data model in this document conforms to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8529"/>
          <seriesInfo name="DOI" value="10.17487/RFC8529"/>
        </reference>
        <reference anchor="RFC8530">
          <front>
            <title>YANG Model for Logical Network Elements</title>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <author fullname="A. Lindem" initials="A." surname="Lindem"/>
            <author fullname="D. Bogdanovic" initials="D." surname="Bogdanovic"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document defines a logical network element (LNE) YANG module that is compliant with the Network Management Datastore Architecture (NMDA). This module can be used to manage the logical resource partitioning that may be present on a network device. Examples of common industry terms for logical resource partitioning are logical systems or logical routers. The YANG model in this document conforms with NMDA as defined in RFC 8342.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8530"/>
          <seriesInfo name="DOI" value="10.17487/RFC8530"/>
        </reference>
        <reference anchor="RFC5706">
          <front>
            <title>Guidelines for Considering Operations and Management of New Protocols and Protocol Extensions</title>
            <author fullname="D. Harrington" initials="D." surname="Harrington"/>
            <date month="November" year="2009"/>
            <abstract>
              <t>New protocols or protocol extensions are best designed with due consideration of the functionality needed to operate and manage the protocols. Retrofitting operations and management is sub-optimal. The purpose of this document is to provide guidance to authors and reviewers of documents that define new protocols or protocol extensions regarding aspects of operations and management that should be considered. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5706"/>
          <seriesInfo name="DOI" value="10.17487/RFC5706"/>
        </reference>
        <reference anchor="IANA.address-family-numbers" target="https://www.iana.org/assignments/address-family-numbers">
          <front>
            <title>Address Family Numbers</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
      </references>
    </references>
    <?line 1022?>

<section anchor="application">
      <name>The PROBE Application</name>
      <t>The PROBE application accepts input parameters, sets a counter, and
enters a loop to be exited when the counter is equal to 0. On each
iteration of the loop, PROBE emits an ICMP Extended Echo Request,
decrements the counter, sets a timer, and waits. The ICMP Extended Echo
Request includes an Identifier and a Sequence Number.</t>
      <t>If an ICMP Extended Echo Reply carrying the same Identifier and
Sequence Number arrives, PROBE relays information returned by that
message to its user. However, on each iteration of the loop, PROBE waits
for the timer to expire regardless of whether an Extended Echo Reply
message arrives.</t>
      <t>PROBE accepts the following parameters:</t>
      <ul spacing="normal">
        <li>
          <t>Count</t>
        </li>
        <li>
          <t>Wait</t>
        </li>
        <li>
          <t>Probing Interface Address</t>
        </li>
        <li>
          <t>Hop Count</t>
        </li>
        <li>
          <t>Proxy Interface Address</t>
        </li>
        <li>
          <t>Local</t>
        </li>
        <li>
          <t>Probed Interface Identifier</t>
        </li>
      </ul>
      <t>Count is a positive integer whose default value is 3. Count
determines the number of times that PROBE iterates through the
above-mentioned loop.</t>
      <t>Wait is a positive integer whose minimum and default values are 1.
Wait determines the duration of the above-mentioned timer, measured in
seconds.</t>
      <t>Probing Interface Address specifies the Source Address of the ICMP
Extended Echo Request. The Probing Interface Address <bcp14>MUST</bcp14> be a unicast
address and <bcp14>MUST</bcp14> identify an interface that resides on the probing
node.</t>
      <t>The Proxy Interface Address identifies the interface to which the
ICMP Extended Echo Request message is sent. It must be an IPv4 or IPv6
unicast address. If it is an IPv4 address, PROBE emits an ICMPv4 message. If it
is an IPv6 address, PROBE emits an ICMPv6 message.</t>
      <t>Local is a boolean value. It is TRUE if the proxy and probed
interfaces both reside on the same node. Otherwise, it is FALSE.</t>
      <t>The Probed Interface Identifier identifies the probed interface. It
is one of the following:</t>
      <ul spacing="normal">
        <li>
          <t>an interface name;</t>
        </li>
        <li>
          <t>an address from any address family (e.g., IPv4, IPv6, IEEE 802,
48-bit MAC, or 64-bit MAC); or</t>
        </li>
        <li>
          <t>an if-index.</t>
        </li>
      </ul>
      <t>If the Probed Interface Identifier is an address, it does not need to
be of the same address family as the proxy interface address. For
example, PROBE accepts an IPv4 Proxy Interface Address and an IPv6
Probed Interface Identifier.</t>
      <section anchor="applicationDisplay">
        <name>Information Display</name>
        <t>For the PING application, the primary available piece of information
is the fact that we received an ICMP Echo Reply.  Therefore, the
appropriate information to display is all of the available information
about the received reply, e.g., size, ttl, etc.  However, with
PROBE, the primary piece of information is the reported status of
the probed interface: the code, status, A, 4, and 6 fields.
It's appropriate to convert the combination of the returned values
into a "human-readable" response.</t>
        <t>For example, an application may perform these steps:</t>
        <ul spacing="normal">
          <li>
            <t>If the code field is non-zero, print the code value as described
in <xref target="ExtendedEchoReply"/>.</t>
          </li>
          <li>
            <t>If the code field is zero, then if the L field sent is zero,
print the state value as described in <xref target="ExtendedEchoReply"/>.</t>
          </li>
          <li>
            <t>Otherwise, the L field sent is 1; print the state represented
by the A, 4, and 6
bits.  Sample textual translations for these bits are shown
in <xref target="BitCombinationTable"/>.</t>
          </li>
        </ul>
        <table anchor="BitCombinationTable">
          <name>Sample translations for bit settings</name>
          <thead>
            <tr>
              <th align="left">A</th>
              <th align="left">4</th>
              <th align="left">6</th>
              <th align="left">Text</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0</td>
              <td align="left">0</td>
              <td align="left">0</td>
              <td align="left">Interface inactive</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">0</td>
              <td align="left">0</td>
              <td align="left">Interface active, with no ipv4 or ipv6 running</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">0</td>
              <td align="left">1</td>
              <td align="left">Interface active, with ipv6 running</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">1</td>
              <td align="left">0</td>
              <td align="left">Interface active, with ipv4 running</td>
            </tr>
            <tr>
              <td align="left">1</td>
              <td align="left">1</td>
              <td align="left">1</td>
              <td align="left">Interface active, with ipv4 and ipv6 running</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="deployment">
      <name>Deployment Experience</name>
      <t>As described in <xref target="security"/>, this feature defaults to "off", and
is expected to be tightly controlled by an operator in order to
prevent leakage of sensitive information. Therefore, most deployments
are expected to effectively be within a domain in which the same
organization controls, e.g., middleboxes and firewalls, if those
devices do not pass these ICMP messages properly. While individual
experiments have shown that this protocol can be used across pieces
of the public Internet, there are no broad experimental results.</t>
      <section anchor="naming-is-very-important-to-implementers">
        <name>Naming is Very Important to Implementers</name>
        <t>The biggest lesson to take away from RFC8335 is that it was described
as similar to ping, which appears to have led implementors to
understand that the packet format was similar to ping, which led
to the unusual and awkward packet format described in this document,
as these implementations ended up violating RFC4884.</t>
        <t>While it is tempting to relate a new development with something that
users are already familiar with, evidence is that this can result in
undesired misunderstanding and shortcuts.</t>
      </section>
      <section anchor="naming-is-very-important-to-operators">
        <name>Naming is Very Important to Operators</name>
        <t>Initial implementations of the probe client displayed information in a
very similar way to ping, e.g.,</t>
        <figure anchor="originaloutput">
          <name>Sample output from initial probe client</name>
          <artwork><![CDATA[
64 bytes from 192.0.2.2: icmp_seq=1 ttl=63 active=1 ipv4=0 ipv6=0
]]></artwork>
        </figure>
        <t>A careful read will show that the ipv4 and ipv6 responses are "0",
perhaps meaning that the desired interface state is not present.
However, given that more than half of the line matches a successful
response from "ping", and that people are very good at pattern
matching, users are inclined to recognize this as success, not as
failure. This experience led to the suggestions in <xref target="applicationDisplay"/>.</t>
      </section>
    </section>
    <section numbered="false" anchor="Acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Joe Touch, Sue Hares,
Xaio Min, Tony Przygienda, Nick Buraglio and Tal Mizrahi for their
thoughtful review of this document.</t>
    </section>
    <section numbered="false" anchor="rfc8335-acknowledgements">
      <name>RFC8335 Acknowledgements</name>
      <t>Thanks to Sowmini Varadhan, Jeff Haas, Carlos Pignataro, Jonathan
Looney, Dave Thaler, Mikio Hara, Joel Halpern, Yaron Sheffer, Stefan
Winter, Jean-Michel Combes, Amanda Barber, and Joe Touch for their
thoughtful review of this document.</t>
    </section>
    <section numbered="false" anchor="rfc8335-authors">
      <name>RFC8335 Authors</name>
      <ul spacing="compact" empty="true">
        <li>Ron Bonica</li>
        <li>Juniper Networks</li>
        <li>2251 Corporate Park Drive</li>
        <li>Herndon, Virginia 20171</li>
        <li>United States of America</li>
        <li>Email: rbonica@juniper.net</li>
      </ul>
      <t/>
      <ul spacing="compact" empty="true">
        <li>Jen Linkova</li>
        <li>Google</li>
        <li>1600 Amphitheatre Parkway</li>
        <li>Mountain View, California 94043</li>
        <li>United States of America</li>
        <li>Email: furry@google.com</li>
      </ul>
      <t/>
      <ul spacing="compact" empty="true">
        <li>Mohamed Boucadair</li>
        <li>Orange</li>
        <li>Rennes 35000</li>
        <li>France</li>
        <li>Email: mohamed.boucadair@orange.com</li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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
A9vvDxl114T4PwDiTrT8G6cAAA==

-->

</rfc>
