<?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.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-intarea-extended-icmp-nodeid-04" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.0 -->
  <front>
    <title abbrev="ICMP Node ID">Adding Extensions to ICMP Errors for Originating Node Identification</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-intarea-extended-icmp-nodeid-04"/>
    <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="2025" month="August" day="19"/>
    <area>Internet</area>
    <workgroup>Internet Area Working Group</workgroup>
    <keyword>ICMP</keyword>
    <keyword>IPv6 nexthops</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 nexthops are IPv6 nexthops,
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.chroboczek-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.equinox-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.</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 appended
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 appended
to any of the currently defined ICMPv4 or ICMPv6 messages other than
those listed above.</t>
      <t>The extension defined herein <bcp14>MAY</bcp14> be appended to any of the above
listed messages and <bcp14>SHOULD</bcp14> be appended whenever required to identify
the node and when local policy or security
considerations do not supersede this requirement.  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 within the domain.
The IP Address Sub-Object is defined in <xref target="IPAddr"/> of this memo.</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>The C-Type 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 memo.</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 memo.</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.  Any data that follows
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>SHOULD</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>SHOULD</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 memo.  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 "Homestar" 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 72,160 L 72,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"/>
              <circle cx="72" cy="176" r="6" class="opendot" fill="white" 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="200" y="180">m</text>
                <text x="328" y="180">e</text>
                <text x="456" y="180">s</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       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            . . . .                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       o       |       m       |       e       |       s       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></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"/>.</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 appended 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 memo.</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.equinox-v6ops-icmpext-xlat-v6only-source"/>.
An implementation
may determine what objects may be appended 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>The corresponding
Class Sub-types Registry is 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/RFC0792"/>
        </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.chroboczek-intarea-v4-via-v6">
          <front>
            <title>IPv4 routes with an IPv6 next hop</title>
            <author fullname="Juliusz Chroboczek" initials="J." surname="Chroboczek">
              <organization>IRIF, University of Paris</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="20" month="January" year="2025"/>
            <abstract>
              <t>   This document proposes "v4-via-v6" routing, a technique that uses
   IPv6 next-hop addresses for routing IPv4 packets, thus making it
   possible to route IPv4 packets across a network where routers have
   not been assigned IPv4 addresses.  The document both describes the
   technique, as well as discussing its operational implications.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-chroboczek-intarea-v4-via-v6-03"/>
        </reference>
        <reference anchor="I-D.equinox-v6ops-icmpext-xlat-v6only-source">
          <front>
            <title>Using Dummy IPv4 Address and Node Identification Extensions for IP/ICMP translators (XLATs)</title>
            <author fullname="David Lamparter" initials="D." surname="Lamparter">
              <organization>NetDEF, Inc.</organization>
            </author>
            <author fullname="Jen Linkova" initials="J." surname="Linkova">
              <organization>Google</organization>
            </author>
            <date day="21" month="March" 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.

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

<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>
    <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:
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

-->

</rfc>
