<?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 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-intarea-extended-icmp-nodeid-05" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="ICMP Node ID">ICMP Message Extension for Originating Node Identification</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-intarea-extended-icmp-nodeid-05"/>
    <author initials="B." surname="Fenner" fullname="Bill Fenner">
      <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>
    <date year="2026" month="September" day="07"/>
    <area>Internet</area>
    <workgroup>Internet Area Working Group</workgroup>
    <keyword>ICMP</keyword>
    <keyword>IPv6 next-hops</keyword>
    <keyword>Node identification</keyword>
    <abstract>
      <?line 63?>

<t>RFC5837 describes a mechanism for Extending ICMP for Interface and Next-Hop Identification,
which allows providing additional information in an ICMP error that helps identify
interfaces participating in the path.  This is especially useful in environments
where a given interface may not have a unique IP address to respond to, e.g., a traceroute.</t>
      <t>This document introduces a similar ICMP extension for Node Identification.
It allows providing a unique IP address and/or a textual name for the node, in
the case where each node may not have a unique IP address (e.g., a deployment
in which all interfaces have IPv6 addresses and all next-hops are IPv6 next-hops,
even for IPv4 routes).</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/icmp-node-id/draft-ietf-intarea-extended-icmp-nodeid.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-intarea-extended-icmp-nodeid/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Internet Area Working Group Working Group 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/icmp-node-id"/>.</t>
    </note>
  </front>
  <middle>
    <?line 76?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In addition to adding incoming interface information to a traceroute
using the mechanisms described in <xref target="RFC5837"/>, a network operator
may be interested in adding information to unambiguously identify nodes themselves.
For example, <xref target="I-D.ietf-intarea-v4-via-v6"/> describes a scenario in which individual
nodes do not have unique IPv4 addresses to use to reply to an IPv4
traceroute, so additional information is needed.
Another scenario is described in <xref target="I-D.ietf-v6ops-icmpext-xlat-v6only-source"/>:
when an IPv6-only node runs the customer-side translator (CLAT, <xref target="RFC6877"/>),
traceroute to an IPv4 destination can not represent intermediate IPv6-only routers
as they do not have IPv4 addresses.</t>
      <t>The goal of this specification is to have a mechanism to provide
additional useful information about the identification of a node
sending an ICMP error, which depends on the actual context and scope
of the message being delivered.  To this end, it is <bcp14>RECOMMENDED</bcp14> to
use a combination of IP Address and Name sub-objects (including
combinations where one of the sub-objects is not used) that is
unique and meaningful in the actual context and scope.  It is
explicitly permitted to use an IP address that may have only local
meaning (e.g., ULA <xref target="RFC4193"/>), since that information can then
be provided to the operator of the domain who can then determine
the local meaning.</t>
      <t>This document defines an ICMP extension that fills that void.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</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?>

<t>ICMPv4 is used to refer to Internet Control Message Protocol (ICMP) specified in <xref target="RFC0792"/>.</t>
      <t>ICMPv6 is used to refer to Internet Control Message Protocol (ICMPv6)
for the Internet Protocol Version 6 (IPv6) specified in <xref target="RFC4443"/>.</t>
      <t>ICMP is used to refer to both ICMPv4 and ICMPv6.</t>
    </section>
    <section anchor="nodeid">
      <name>Node Identification Object</name>
      <t>This section defines the Node Identification Object, an ICMP Extension
Object with a Class-Num (Object Class Value) of 5 (see <xref target="sec-iana"/>).</t>
      <t>Similar to <xref section="4" sectionFormat="of" target="RFC5837"/>, this object can be added
to the following messages:</t>
      <ul spacing="normal">
        <li>
          <t>ICMPv4 Time Exceeded</t>
        </li>
        <li>
          <t>ICMPv4 Destination Unreachable</t>
        </li>
        <li>
          <t>ICMPv4 Parameter Problem</t>
        </li>
        <li>
          <t>ICMPv6 Time Exceeded</t>
        </li>
        <li>
          <t>ICMPv6 Destination Unreachable</t>
        </li>
      </ul>
      <t>For reasons described in <xref target="RFC4884"/>, this extension cannot be added
to any of the currently defined ICMPv4 or ICMPv6 messages other than
those listed above.</t>
      <t>The extension defined herein, Node Identification Object,
<bcp14>MAY</bcp14> be added to any of the above
listed messages and <bcp14>MUST</bcp14> be added whenever the responding IP
address may not be sufficient to identify
the node, unless local policy or security
considerations supersede this requirement.  (It is permissible
to unconditionally include this extension in all of the above messages.)
See <xref target="security"/> for
suggested configuration regarding including these messages.</t>
      <t>Similarly to the Interface Identification Object defined in <xref target="RFC5837"/>,
there are two different pieces of information that can appear in a
Node Identification Object:</t>
      <ol spacing="normal" type="1"><li>
          <t>An IP Address Sub-Object <bcp14>MAY</bcp14> be included, containing an address
of sufficient scope to identify the node.
The IP Address Sub-Object is defined in <xref target="IPAddr"/> of this document.</t>
        </li>
        <li>
          <t>A Name Sub-Object <bcp14>MAY</bcp14> be included, as specified in <xref target="Name"/>,
containing up to 63 octets of the YANG sys:hostname (<xref target="RFC7317"/>)
or another appropriate name uniquely identifying the node.</t>
        </li>
      </ol>
      <section anchor="c-type-meaning-in-a-node-identification-object">
        <name>C-Type Meaning in a Node Identification Object</name>
        <t>In this object, the C-Type, defined in <xref section="8" sectionFormat="of" target="RFC4884"/>,
contains a bitmask describing what information is included
in this Node Identification Object (<xref target="ctypeFig"/>).  The fields in this
bitmask are chosen so that the IPAddr and name bits overlap
with the same bits as defined in <xref target="RFC5837"/>, so that an implementation
that supports exactly these bits can reuse packet generation and parsing code.</t>
        <figure anchor="ctypeFig">
          <name>C-Type for the Node Identification Object</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="96" width="560" viewBox="0 0 560 96" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 40,48 L 40,80" fill="none" stroke="black"/>
                <path d="M 360,48 L 360,80" fill="none" stroke="black"/>
                <path d="M 424,48 L 424,80" fill="none" stroke="black"/>
                <path d="M 488,48 L 488,80" fill="none" stroke="black"/>
                <path d="M 552,48 L 552,80" fill="none" stroke="black"/>
                <path d="M 40,48 L 552,48" fill="none" stroke="black"/>
                <path d="M 40,80 L 552,80" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">Bit</text>
                  <text x="72" y="36">0</text>
                  <text x="136" y="36">1</text>
                  <text x="200" y="36">2</text>
                  <text x="264" y="36">3</text>
                  <text x="328" y="36">4</text>
                  <text x="392" y="36">5</text>
                  <text x="456" y="36">6</text>
                  <text x="520" y="36">7</text>
                  <text x="204" y="68">Unassigned</text>
                  <text x="396" y="68">IPAddr</text>
                  <text x="460" y="68">Name</text>
                  <text x="520" y="68">Un2</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
Bit     0       1       2       3       4       5       6       7
    +-------+-------+-------+-------+-------+-------+-------+-------+
    |               Unassigned              | IPAddr|  Name |  Un2  |
    +-------+-------+-------+-------+-------+-------+-------+-------+
]]></artwork>
          </artset>
        </figure>
        <t>The following are bit-field definitions for C-Type:</t>
        <ul spacing="normal">
          <li>
            <t>Unassigned (bits 0-4): These bits are reserved for future use
  and <bcp14>MUST</bcp14> be set to 0 on transmit and ignored on receipt.</t>
          </li>
          <li>
            <t>IP Addr (bit 5) : When set, an IP Address Sub-Object is present.
  When clear, an IP Address Sub-Object is not present.  The IP Address
  Sub-Object is described in <xref target="IPAddr"/> of this document.</t>
          </li>
          <li>
            <t>Name (bit 6): When set, a Name Sub-Object is
  included.  When clear, it is not included.  The Name Sub-Object is
  described in <xref target="Name"/> of this document.</t>
          </li>
          <li>
            <t>Un2 (bit 7): This bit is reserved for future use
  and <bcp14>MUST</bcp14> be set to 0 on transmit and ignored on receipt.</t>
          </li>
        </ul>
        <t>The information included does not self-identify, so this
specification defines a specific ordering for sending the information
that must be followed.</t>
        <t>If bit 5 (IP Address) is set, an IP Address Sub-Object <bcp14>MUST</bcp14>
be sent first.  If bit 6 (Name) is set, a Name Sub-Object
<bcp14>MUST</bcp14> be sent next.  The information order is thus: IP Address Sub-Object,
Name Sub-Object.  Any or all pieces of information may be
present or absent, as indicated by the C-Type.  As defined in
<xref target="fooblewomp"/>, future assignments of bits in the C-Type
field will result in additional Sub-Objects being sent after
these objects. If an implementation does not support these
future assignments,
these optional pieces of information <bcp14>MUST</bcp14> be ignored.</t>
        <t>It is valid (though pointless until additional bits are assigned by
IANA) to receive a Node Identification Object where bits 5 and 6
are both 0; this <bcp14>MUST NOT</bcp14> generate a warning or error.
A packet with such a Node Identification Object <bcp14>MUST</bcp14> be treated
as though it contains no Node Identification Object.</t>
        <section anchor="fooblewomp">
          <name>Behavior when additional bits are reserved</name>
          <t>Bit values <bcp14>MUST</bcp14> be assigned from left to right in the diagram
above, i.e., starting at zero.  The sub-objects associated with each
new bit <bcp14>MUST</bcp14> be placed in the packet after the sub-objects defined
in this document.  For example, if bit 0 is assigned to the Fooblewomp,
a packet with bits 0 and 5 set <bcp14>MUST</bcp14> contain the IP Address
Sub-Object, followed by the Fooblewomp sub-object.</t>
          <t>If a bit is set that a receiver does not support, followed by
a bit that the receiver does support, the receiver <bcp14>MUST</bcp14> ignore
all of the additional data, since the length of the unsupported
data is unknown.</t>
        </section>
      </section>
      <section anchor="IPAddr">
        <name>IP Address Sub-Object</name>
        <t>If the Node Identification Object identifies the node by
address, the Object Payload contains an address sufficient
to identify the node within the appropriate scope - global
or as otherwise configured - as depicted in <xref target="addrFig"/>.</t>
        <figure anchor="addrFig">
          <name>IP Address Sub-Object</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 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="136" y="84">AFI</text>
                  <text x="396" y="84">Reserved</text>
                  <text x="268" y="116">Address...</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              |            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.
Values for this field represent a subset of values
found in the IANA registry of Address Family Numbers (available
from  <xref target="IANA.address-family-numbers"/>).  Valid values are as
follows:  </t>
            <ul spacing="normal">
              <li>
                <t>1: 32-bit IPv4 address</t>
              </li>
              <li>
                <t>2: 128-bit IPv6 address.</t>
              </li>
            </ul>
          </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 an address
of appropriate scope (global, if none other defined) that
can be used to identify the node.  The length of this field
is derived from the AFI (i.e., 32 bits if the AFI field is set to 1,
and 128 bits if the AFI is set to 2).</t>
          </li>
        </ul>
      </section>
      <section anchor="Name">
        <name>Name Sub-Object</name>
        <t><xref target="nodeFig"/> depicts the Name Sub-Object:</t>
        <figure anchor="nodeFig">
          <name>Name Sub-Object</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="112" width="528" viewBox="0 0 528 112" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,96" fill="none" stroke="black"/>
                <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,80" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 376,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="76" y="84">Length</text>
                  <text x="284" y="84">Node</text>
                  <text x="324" y="84">Name</text>
                  <text x="352" y="84">.</text>
                  <text x="368" y="84">.</text>
                  <text x="384" y="84">.</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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Length    |                Node Name . . .                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </artset>
        </figure>
        <t>The Name Sub-Object <bcp14>MUST</bcp14> have a length that is a multiple
of 4 octets and <bcp14>MUST NOT</bcp14> exceed 64 octets. If the length field
exceeds 64 octets, the receiver <bcp14>MUST</bcp14> ignore the sub-object.</t>
        <t>The Length field represents the length of the Name Sub-Object,
including the length, the node name, and any padding, in octets.  The
maximum valid length is 64 octets.  The length is constrained to
ensure there is space for the start of the original packet and
additional information.</t>
        <t>The second field contains the human-readable node name.  The node
name <bcp14>SHOULD</bcp14> be the YANG sys:hostname <xref target="RFC7317"/>, if less than 64 octets,
or the first 63 octets of the sys:hostname, if the sys:hostname is
longer.  The node name <bcp14>MAY</bcp14> be some other human-meaningful name of
the node.  The node name <bcp14>MUST</bcp14> be padded with ASCII NUL characters
if the object would not otherwise terminate on a 4-octet boundary.
An example of truncation of a 66-octet node name, beginning
"HelpMyAscii" and ending "xyzpdqha" would be encoded as follows:</t>
        <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,192" fill="none" stroke="black"/>
              <path d="M 136,64 L 136,128" fill="none" stroke="black"/>
              <path d="M 136,160 L 136,192" fill="none" stroke="black"/>
              <path d="M 264,64 L 264,128" fill="none" stroke="black"/>
              <path d="M 264,160 L 264,192" fill="none" stroke="black"/>
              <path d="M 392,64 L 392,128" fill="none" stroke="black"/>
              <path d="M 392,160 L 392,192" fill="none" stroke="black"/>
              <path d="M 520,64 L 520,192" 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 520,160" fill="none" stroke="black"/>
              <path d="M 8,192 L 520,192" 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="76" y="84">64</text>
                <text x="200" y="84">H</text>
                <text x="328" y="84">e</text>
                <text x="456" y="84">l</text>
                <text x="72" y="116">p</text>
                <text x="200" y="116">M</text>
                <text x="328" y="116">y</text>
                <text x="456" y="116">A</text>
                <text x="240" y="148">.</text>
                <text x="256" y="148">.</text>
                <text x="272" y="148">.</text>
                <text x="288" y="148">.</text>
                <text x="72" y="180">y</text>
                <text x="200" y="180">z</text>
                <text x="328" y="180">p</text>
                <text x="456" y="180">d</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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       64      |       H       |       e       |       l       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       p       |       M       |       y       |       A       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            . . . .                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       y       |       z       |       p       |       d       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </artset>
        <t>The node name <bcp14>MUST</bcp14> be represented in the UTF-8 charset <xref target="RFC3629"/>
using the Default Language <xref target="RFC2277"/>.  When truncating a name
to 63 octets, the truncation <bcp14>MUST</bcp14> occur on a character boundary
(e.g., if the 63rd octet is the first octet of a 2-octet character,
then the truncation will omit that octet altogether, and be padded
with an ASCII NUL character to reach the 4-octet boundary.)</t>
      </section>
    </section>
    <section anchor="nat">
      <name>Addition of Node Identification Object by Intermediate Nodes</name>
      <t>An IP/ICMP translator <bcp14>MAY</bcp14> use this extension when translating
an ICMP message listed above to include the
pre-translation source address of a packet. When doing so, it <bcp14>MUST</bcp14>
include the IP Address Sub-Object.
If an ICMP Extension Structure is already present
in the packet being translated, this Extension Object is added to
the existing ICMP Extension Structure and the checksum is updated.
If an ICMP Extension Structure is not present in the packet being
translated, one is added using the rules of <xref target="RFC4884"/>.
Further details of this mode of operation are outside the
scope of this document.</t>
      <t>If adding this object results in the ICMP message exceeding the
underlying MTU, the translator <bcp14>SHOULD</bcp14> calculate the number of bytes
that need to be removed from the "original datagram" field to
allow this object to fit, and reduce the length field in the ICMP
header by that value, moving any existing ICMP Extension Structure
back in the packet appropriately. If this operation is not possible
(for example, because the "original datagram" field is already at
a minimum size), then the translator <bcp14>MUST NOT</bcp14> add an additional
object. (Note that this number of bytes <bcp14>MUST</bcp14> be rounded up to the
nearest multiple of 4 for ICMPv4 and 8 for ICMPv6 due to the definition
of the length field in the ICMP header; see <xref target="RFC4884"/>)</t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>A node name may reveal sensitive information, especially when it
encodes semantic information.
It may not be desirable to allow this information to be sent to
an arbitrary receiver.  The addition of this information to
the ICMP responses listed in <xref target="nodeid"/> is configurable, and
<bcp14>SHOULD</bcp14> be disabled by default, with the exception of IP/ICMP translators <xref target="RFC7915"/>.
Those translators <bcp14>SHOULD</bcp14> add the Node Identification Extension Object
with the IP Address Sub-Object, as described in <xref target="I-D.ietf-v6ops-icmpext-xlat-v6only-source"/>.
An implementation
may determine what objects may be added to a given message
based on the destination IP address of the ICMP message that will
contain the objects.  Access control lists (ACLs) may be used to
filter the destinations to which this information may be communicated.</t>
      <t>This document does not specify an authentication mechanism for the
extension that it defines.  Application developers should be aware
that ICMP messages and their contents are easily spoofed.</t>
    </section>
    <section anchor="sec-iana">
      <name>IANA Considerations</name>
      <t>This IANA has allocated the ICMP Extension
Object Class value 5 to the extension described above.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Class Value</th>
            <th align="left">Class Name</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">5</td>
            <td align="left">Node Identification Object</td>
            <td align="left">[This document]</td>
          </tr>
        </tbody>
      </table>
      <t>IANA is requested to create a corresponding
<eref target="https://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml#icmp-parameters-ext-classes">Class Sub-types Registry</eref>
 as follows:</t>
      <table>
        <thead>
          <tr>
            <th align="left">C-Type (Value)</th>
            <th align="left">Description</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">0-4</td>
            <td align="left">Unassigned - allocatable with Standards Action</td>
            <td align="left">[This document]</td>
          </tr>
          <tr>
            <td align="left">5</td>
            <td align="left">IP Address Sub-object included</td>
            <td align="left">[This document]</td>
          </tr>
          <tr>
            <td align="left">6</td>
            <td align="left">Name Sub-object included</td>
            <td align="left">[This document]</td>
          </tr>
          <tr>
            <td align="left">7</td>
            <td align="left">Unassigned - allocatable with Standards Action</td>
            <td align="left">[This document]</td>
          </tr>
        </tbody>
      </table>
      <t>As indicated in the table above, the remaining bits in the C-Type value
are to be allocated via Standards Action <xref target="RFC8126"/>.</t>
      <t>As mentioned in <xref target="fooblewomp"/>, IANA is requested to assign additional
bits starting at zero.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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/RFC792"/>
        </reference>
        <reference anchor="RFC3629">
          <front>
            <title>UTF-8, a transformation format of ISO 10646</title>
            <author fullname="F. Yergeau" initials="F." surname="Yergeau"/>
            <date month="November" year="2003"/>
            <abstract>
              <t>ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems. The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values. This memo obsoletes and replaces RFC 2279.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="63"/>
          <seriesInfo name="RFC" value="3629"/>
          <seriesInfo name="DOI" value="10.17487/RFC3629"/>
        </reference>
        <reference anchor="RFC2277">
          <front>
            <title>IETF Policy on Character Sets and Languages</title>
            <author fullname="H. Alvestrand" initials="H." surname="Alvestrand"/>
            <date month="January" year="1998"/>
            <abstract>
              <t>This document is the current policies being applied by the Internet Engineering Steering Group (IESG) towards the standardization efforts in the Internet Engineering Task Force (IETF) in order to help Internet protocols fulfill these requirements. 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="18"/>
          <seriesInfo name="RFC" value="2277"/>
          <seriesInfo name="DOI" value="10.17487/RFC2277"/>
        </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="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="RFC5837">
          <front>
            <title>Extending ICMP for Interface and Next-Hop Identification</title>
            <author fullname="A. Atlas" initials="A." role="editor" surname="Atlas"/>
            <author fullname="R. Bonica" initials="R." role="editor" surname="Bonica"/>
            <author fullname="C. Pignataro" initials="C." role="editor" surname="Pignataro"/>
            <author fullname="N. Shen" initials="N." surname="Shen"/>
            <author fullname="JR. Rivers" initials="JR." surname="Rivers"/>
            <date month="April" year="2010"/>
            <abstract>
              <t>This memo defines a data structure that can be appended to selected ICMP messages. The ICMP extension defined herein can be used to identify any combination of the following: the IP interface upon which a datagram arrived, the sub-IP component of an IP interface upon which a datagram arrived, the IP interface through which the datagram would have been forwarded had it been forwardable, and the IP next hop to which the datagram would have been forwarded.</t>
              <t>Devices can use this ICMP extension to identify interfaces and their components by any combination of the following: ifIndex, IPv4 address, IPv6 address, name, and MTU. ICMP-aware devices can use these extensions to identify both numbered and unnumbered interfaces. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5837"/>
          <seriesInfo name="DOI" value="10.17487/RFC5837"/>
        </reference>
        <reference anchor="RFC7317">
          <front>
            <title>A YANG Data Model for System Management</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="August" year="2014"/>
            <abstract>
              <t>This document defines a YANG data model for the configuration and identification of some common system properties within a device containing a Network Configuration Protocol (NETCONF) server. This document also includes data node definitions for system identification, time-of-day management, user management, DNS resolver configuration, and some protocol operations for system management.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7317"/>
          <seriesInfo name="DOI" value="10.17487/RFC7317"/>
        </reference>
        <reference anchor="RFC7915">
          <front>
            <title>IP/ICMP Translation Algorithm</title>
            <author fullname="C. Bao" initials="C." surname="Bao"/>
            <author fullname="X. Li" initials="X." surname="Li"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="T. Anderson" initials="T." surname="Anderson"/>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <date month="June" year="2016"/>
            <abstract>
              <t>This document describes the Stateless IP/ICMP Translation Algorithm (SIIT), which translates between IPv4 and IPv6 packet headers (including ICMP headers). This document obsoletes RFC 6145.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7915"/>
          <seriesInfo name="DOI" value="10.17487/RFC7915"/>
        </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>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </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="RFC4193">
          <front>
            <title>Unique Local IPv6 Unicast Addresses</title>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <author fullname="B. Haberman" initials="B." surname="Haberman"/>
            <date month="October" year="2005"/>
            <abstract>
              <t>This document defines an IPv6 unicast address format that is globally unique and is intended for local communications, usually inside of a site. These addresses are not expected to be routable on the global Internet. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4193"/>
          <seriesInfo name="DOI" value="10.17487/RFC4193"/>
        </reference>
        <reference anchor="RFC6877">
          <front>
            <title>464XLAT: Combination of Stateful and Stateless Translation</title>
            <author fullname="M. Mawatari" initials="M." surname="Mawatari"/>
            <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
            <author fullname="C. Byrne" initials="C." surname="Byrne"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>This document describes an architecture (464XLAT) for providing limited IPv4 connectivity across an IPv6-only network by combining existing and well-known stateful protocol translation (as described in RFC 6146) in the core and stateless protocol translation (as described in RFC 6145) at the edge. 464XLAT is a simple and scalable technique to quickly deploy limited IPv4 access service to IPv6-only edge networks without encapsulation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6877"/>
          <seriesInfo name="DOI" value="10.17487/RFC6877"/>
        </reference>
        <reference anchor="I-D.ietf-intarea-v4-via-v6">
          <front>
            <title>IPv4 routes with an IPv6 next hop</title>
            <author fullname="Juliusz Chroboczek" initials="J." surname="Chroboczek">
              <organization>IRIF, Université Paris-Cité</organization>
            </author>
            <author fullname="Warren Kumari" initials="W." surname="Kumari">
              <organization>Google, LLC</organization>
            </author>
            <author fullname="Toke Høiland-Jørgensen" initials="T." surname="Høiland-Jørgensen">
              <organization>Red Hat</organization>
            </author>
            <date day="17" month="April" year="2026"/>
            <abstract>
              <t>   V4-via-v6 routing is a technique that uses IPv6 next-hop addresses
   for routing IPv4 packets, and thus makes it possible to route IPv4
   packets across a network where some routers have not been assigned
   IPv4 addresses.  This document describes v4-via-v6 routing, and
   defines related operational procedures, notably the origination of
   ICMPv4 packets by nodes that might not have an IPv4 address.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-intarea-v4-via-v6-08"/>
        </reference>
        <reference anchor="I-D.ietf-v6ops-icmpext-xlat-v6only-source">
          <front>
            <title>Using Dummy IPv4 Address and Node Identification Extensions for IP/ICMP translators (XLATs)</title>
            <author fullname="David 'equinox' Lamparter" initials="D. E." surname="Lamparter">
              <organization>NetDEF, Inc.</organization>
            </author>
            <author fullname="Jen Linkova" initials="J." surname="Linkova">
              <organization>Google</organization>
            </author>
            <date day="6" month="November" year="2025"/>
            <abstract>
              <t>   This document suggests that when a source IPv6 address of an ICMPv6
   message can not be translated to an IPv4 address, the protocol
   translators use the dummy IPv4 address (192.0.0.8) to translate the
   IPv6 source address, and utilize the ICMP extension for Node
   Identification (draft-ietf-intarea-extended-icmp-nodeid) to carry the
   original IPv6 source address of ICMPv6 messages.  This document
   obsoletes RFC6791, Stateless Source Address Mapping for ICMPv6
   Packets and updates IP/ICMP Translation Algorithm (RFC7915).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-v6ops-icmpext-xlat-v6only-source-01"/>
        </reference>
      </references>
    </references>
    <?line 417?>

<section anchor="change-history">
      <name>Change history</name>
      <t>This section is to be removed before publishing as an RFC.</t>
      <section anchor="changes-since-draft-fenner-intarea-extended-icmp-hostid-00">
        <name>Changes since draft-fenner-intarea-extended-icmp-hostid-00</name>
        <ul spacing="normal">
          <li>
            <t>Instead of having two different messages with the same Class Value
and different CType values, we copy the bitmap implementation
from <xref target="RFC5837"/>.  The re-use of bit positions means that packet
parsing and generation code can be largely reused from existing
<xref target="RFC5837"/> code.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-fenner-intarea-extended-icmp-hostid-01">
        <name>Changes since draft-fenner-intarea-extended-icmp-hostid-01</name>
        <ul spacing="normal">
          <li>
            <t>Fixed several copy-pasta errors that still referred to
interface names instead of node name.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-fenner-intarea-extended-icmp-hostid-02">
        <name>Changes since draft-fenner-intarea-extended-icmp-hostid-02</name>
        <ul spacing="normal">
          <li>
            <t>Renamed to draft-ietf-intarea-extended-icmp-nodeid-00 to reflect
adoption by WG</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-ietf-intarea-extended-icmp-nodeid-00">
        <name>Changes since draft-ietf-intarea-extended-icmp-nodeid-00</name>
        <ul spacing="normal">
          <li>
            <t>Several edits suggested by Med Boucadair</t>
          </li>
          <li>
            <t>Added <xref target="nat"/> to address the needs of XLAT</t>
          </li>
          <li>
            <t>Changed title to "Adding Extensions to ICMP Errors for
Originating Node Identification"</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-ietf-intarea-extended-icmp-nodeid-01">
        <name>Changes since draft-ietf-intarea-extended-icmp-nodeid-01</name>
        <ul spacing="normal">
          <li>
            <t>Added the request to assign bits starting at 0 to the IANA
Considerations</t>
          </li>
          <li>
            <t>Updated IANA Considerations wording based on RFC8126</t>
          </li>
          <li>
            <t>Shortened sub-object names to "IP Address" and "Name", eliminating
"Node".</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-ietf-intarea-extended-icmp-nodeid-02">
        <name>Changes since draft-ietf-intarea-extended-icmp-nodeid-02</name>
        <ul spacing="normal">
          <li>
            <t>Added table to reflect Object Class assignment to IANA Considerations</t>
          </li>
          <li>
            <t>Use SVG for packet figures</t>
          </li>
          <li>
            <t>Add example of an encoded, truncated node name</t>
          </li>
          <li>
            <t>Be explicit on treatment of a packet with no bits set</t>
          </li>
          <li>
            <t>Clarified "defaults to off" in security considerations</t>
          </li>
          <li>
            <t>Clarified use of IP address and names</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-ietf-intarea-extended-icmp-nodeid-03">
        <name>Changes since draft-ietf-intarea-extended-icmp-nodeid-03</name>
        <ul spacing="normal">
          <li>
            <t>Added Standards Action sentence to IANA Considerations</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-since-draft-ietf-intarea-extended-icmp-nodeid-04">
        <name>Changes since draft-ietf-intarea-extended-icmp-nodeid-04</name>
        <ul spacing="normal">
          <li>
            <t>Changes from AD Review
see https://mailarchive.ietf.org/arch/msg/int-area/jhtF0oqj3O0IoKBmb4Q_jwYEzA8/</t>
          </li>
        </ul>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document derives text heavily from <xref target="RFC5837"/>, since the
underlying mechanism is identical, and only the semantics of the
message differs.  Thanks are therefore due to that document's
authors: Alia K. Atlas, Ronald P. Bonica, Carlos Pignataro,
Naiming Shen, and JR. Rivers.</t>
      <t>Further thanks are due to the following who have provided
valuable contributions to this document: Med Boucadair,
Jen Linkova, David Lamparter, and Luigi Iannone.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA91c63YbN5L+j6fA0j8sZUhaV1rmXOlbrIksayQ52Zxszh6w
GyQRN7uZRjdlWtE+yz7LPtnWBUCjSUrxxJk/oxxHZDcuharCVxcU1Ov1RGWq
TA9l5/TF2wv5Vlurplq++ljp3Joil5OilO9KMzW5qkw+ledFquVpqvPKTEwC
z4q8I9R4XOqlH4SbvOwIeK2nRbkaSlulQqRFkqs5zJWWalL1jK4mPZNXqtSq
p3HCVKc9k8wXvRxGMGlv71jYejw3FimpVgvoevrq+rXI6/lYl0ORwvhDkRS5
BWJrO5RVWWsBdBwKHBTpyStd5rrqiJui/DAti3oRPZUjaCW/gze4sq/xbUd8
0Ctomw6F7ElcDv2+WA5kDjT2ZsXC4hNao2mxQSx1XgM9Un7WPFLyijobz+fK
ZPAcWNPDZfwNGdUvyim+U2Uyg3ezqlrY4ZMn2BQfmaXu+2ZP8MGTcVncWP3E
D/IEO09NNavH0H2i81yXTwKveybF9xnw01bR8Nyuz/36pmj1ePKZYuzPqnnW
EULV1awAqfUka8Fzk2XyNc0AcwPhQ+CTsZWS57pCcQGjQXFKrYGk46PjQ+CQ
VsDMuS6B5fJClR9u1AoaJaYCHbtSQIR8AfxQ+AzmHsrHz473jo8ew/dST0FG
Q/lCZQZ0OjfcqM4r1M/3VyP4qpnzvOq/wa+yyPtJMQ8kX+qfjLyeFXNlf53k
r7NirDJ5rZMZ0RoIfa7yqcqKUkdkfaNK2GDqQ0T68WBvf+/wcUzmaZ4S3Y7Q
EsjpV0TO3xTRQdSKvCjnoJJLUsbL1y/2nj47cB8PBwfP3MeDg6dP3cejo6ND
//Hk5Mh9PD459A2eHu6Hj8/2j/Hj6eh81FdpWgJk9CZqbrJVjzemdS1P9g8G
QyFMPlmj52j/mZ9ucMJEnPZe9luatDzqLQ38GrTeLgew/0i5cDN+BIXFRzlM
bYu6TGACIXq9nlRjkIJKKiHcOmSqbVKasbZSyTmIROXGzgndCOtS3IGEXviI
Nu5EJVqqPAXZwlxvisUa7HXFzcyAbFWWwVaTi7JYGhoGmGKwAQg/rB2Q1OQw
Gs+hyxJmqWagzTOdLaxHkhUwy80MA6qyMolZMO5C72qm4WE160vQQQOdrNR2
oRMDFKxkbfWkxhmlzpcGNHcOQ1qgUZewDNj7AE8yDA8gs5J5AfOrJb6uc/Nz
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

-->

</rfc>
