<?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-rfc2629 version 1.5.25 (Ruby 2.6.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-opsec-probe-attribution-08" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.1 -->
  <front>
    <title abbrev="Probes Attribution">Attribution of Internet Probes</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-opsec-probe-attribution-08"/>
    <author initials="E." surname="Vyncke" fullname="Éric Vyncke">
      <organization>Cisco</organization>
      <address>
        <postal>
          <street>De Kleetlaan 6A</street>
          <city>Diegem</city>
          <code>1831</code>
          <country>Belgium</country>
        </postal>
        <email>evyncke@cisco.com</email>
      </address>
    </author>
    <author initials="B." surname="Donnet" fullname="Benoît Donnet">
      <organization>Université de Liège</organization>
      <address>
        <postal>
          <country>Belgium</country>
        </postal>
        <email>benoit.donnet@uliege.be</email>
      </address>
    </author>
    <author initials="J." surname="Iurman" fullname="Justin Iurman">
      <organization>Université de Liège</organization>
      <address>
        <postal>
          <country>Belgium</country>
        </postal>
        <email>justin.iurman@uliege.be</email>
      </address>
    </author>
    <date year="2023" month="July" day="10"/>
    <area>Operations and Management</area>
    <workgroup>Operational Security Capabilities for IP Network Infrastructure</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>Active measurements over the public Internet can target either collaborating parties or non-collaborating ones. Sometimes these measurements, also called probes, are viewed as unwelcome or aggressive.</t>
      <t>This document suggests some simple techniques for a source to identify its probes, allowing any party or organization to understand what an unsolicited probe packet is, what its purpose is, and more importantly who to contact. The technique relies on off-line analysis of the probe, therefore it does not require any change in the data or control plane. It has been designed mainly for layer-3 measurements.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://evyncke.github.io/opsec-probe-attribution/draft-ietf-opsec-probe-attribution.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-opsec-probe/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Operational Security Capabilities for IP Network Infrastructure Working Group mailing list (<eref target="mailto:opsec@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/opsec/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/evyncke/opsec-probe-attribution"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Many measurement researches (<xref target="LARGE_SCALE"/>, <xref target="RFC7872"/>, and <xref target="I-D.draft-vyncke-v6ops-james"/>) are about sending IP packets (sometimes with extension headers or layer-4 headers) over the public Internet and those packets can be destined to either collaborating parties or non-collaborating ones. Such packets are called probes in this document.</t>
      <t>Sending unsolicited probes should obviously be done at a rate low enough to not unduly impact the other parties' resources. But even at a low rate, those probes could trigger an alarm that will request some investigations by either the party receiving the probe (i.e., when the probe destination address is one address assigned to the receiving party) or by a third party having some devices through which those probes are transiting (e.g., an Internet transit router). The investigation will be done off-line by using packet captures, therefore the probe attribution does not require any change in the data or control planes.</t>
      <t>This document suggests some simple techniques for a source to identify its probes, allowing any party or organization to understand:</t>
      <ul spacing="normal">
        <li>what an unsolicited probe packet is,</li>
        <li>what its purpose is,</li>
        <li>and more importantly who to contact for further information.</li>
      </ul>
      <t>It is expected that only researchers with good intentions will use these techniques, although anyone might use them. This is discussed in <xref target="security"/>.</t>
      <t>While the technique could be used to mark measurements done at any layer of the protocol stack, it is mainly designed to work for measurements done at layer 3 (and its associated options or extension headers).</t>
    </section>
    <section anchor="probe-description">
      <name>Probe Description</name>
      <t>This section provides a way for a source to describe (i.e., to identify) its probes.</t>
      <section anchor="uri">
        <name>Probe Description URI</name>
        <t>This document defines a Probe Description URI as a URI pointing to either:</t>
        <ul spacing="normal">
          <li>a Probe Description File (see <xref target="file"/>) as defined in <xref target="iana"/>, e.g., "https://example.net/.well-known/probing.txt";</li>
          <li>an email address, e.g., "mailto:lab@example.net";</li>
          <li>a phone number, e.g., "tel:+1-201-555-0123".</li>
        </ul>
      </section>
      <section anchor="file">
        <name>Probe Description File</name>
        <t>As defined in <xref target="iana"/>, the Probe Description File must be made available at "/.well-known/probing.txt". The Probe Description File must follow the format defined in section 4 of <xref target="RFC9116"/> and should contain the following fields defined in section 2 of <xref target="RFC9116"/>:</t>
        <ul spacing="normal">
          <li>Canonical</li>
          <li>Contact</li>
          <li>Expires</li>
          <li>Preferred-Languages</li>
        </ul>
        <t>A new field "Description" should also be included to describe the measurement. To match the format defined in section 4 of <xref target="RFC9116"/>, this field must be a one-line string with no line break.</t>
        <section anchor="example">
          <name>Example</name>
          <artwork><![CDATA[
# Canonical URI (if any)
Canonical: https://example.net/measurement.txt

# Contact address
Contact: mailto:lab@example.net

# Validity
Expires: 2023-12-31T18:37:07z

# Languages
Preferred-Languages: en, es, fr

# Probes description
Description: This is a one-line string description of the probes.
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="out-of-band-probe-attribution">
      <name>Out-of-band Probe Attribution</name>
      <t>A possibility for probe attribution is to build a specific URI based on the source address of the probe packet, following <xref target="RFC8615"/>. For example, with a probe source address 2001:db8:dead::1, the following URI is built:</t>
      <ul spacing="normal">
        <li>if the reverse DNS record for 2001:db8:dead::1 exists, e.g., "example.net", then the Probe Description URI is "https://example.net/.well-known/probing.txt". There should be only one reverse DNS record; otherwise, the Probe Description File should also exist for all reverse DNS records and be identical;</li>
        <li>else (or in addition), the Probe Description URI is "https://[2001:db8:dead::1]/.well-known/probing.txt".</li>
      </ul>
      <t>The built URI must be a reference to the Probe Description File (see <xref target="file"/>).</t>
      <t>As an example, the UK National Cyber Security Centre <xref target="NCSC"/> uses a similar attribution. They scan for vulnerabilities across internet-connected systems in the UK and publish information on their scanning (<xref target="NCSC_SCAN_INFO"/>), providing the address of the webpage in reverse DNS.</t>
    </section>
    <section anchor="in-band-probe-attribution">
      <name>In-band Probe Attribution</name>
      <t>Another possibility for probe attribution is to include a Probe Description URI in the probe itself:</t>
      <ul spacing="normal">
        <li>For an ICMPv6 echo request <xref target="RFC4443"/>, include it in the data field;</li>
        <li>For an ICMPv4 echo request <xref target="RFC792"/>, include it in the data field;</li>
        <li>For a UDP datagram <xref target="RFC768"/>, include it in the data payload if there is no upper-layer protocol after the transport layer;</li>
        <li>For a TCP segment <xref target="RFC9293"/>, include it in the data payload if there is no upper-layer protocol after the transport layer;</li>
        <li>For an IPv6 packet <xref target="RFC8200"/>, include it in a PadN option either inside a Hop-by-Hop or Destination Options header.</li>
      </ul>
      <t>The Probe Description URI must start at the first octet of the payload and must be terminated by an octet of 0x00, i.e., it must be null terminated. If the Probe Description URI cannot be placed at the beginning of the payload, then it must be preceded by an octet of 0x00. Inserting the Probe Description URI could obviously bias the measurement itself if the probe packet becomes larger than the path MTU. Some examples are given in the appendix <xref target="examples"/>.</t>
      <t>Note: using a magic string (i.e., a unique special opaque marker) to signal the presence of the Probe Description URI is not recommended as some transit nodes could apply a different processing for packets containing this magic string.</t>
      <t>For the record, the in-band probe attribution was used in <xref target="I-D.draft-vyncke-v6ops-james"/>.</t>
    </section>
    <section anchor="operational-and-technical-considerations">
      <name>Operational and Technical Considerations</name>
      <t>Using either the out-of-band or in-band technique, or even both combined, highly depends on intent or context. This section describes the upsides and downsides of each technique, so that probe owners or probe makers can freely decide what works best for their cases.</t>
      <t>The advantages of using the out-of-band technique are that the probing measurement is not impacted by the probe attribution but also that it is easy to set up, i.e., by running a web server on a probe device to describe the measurements. Unfortunately, there are some disadvantages too. In some cases, using the out-of-band technique might not be possible due to several conditions: the presence of a NAT, too many endpoints to run a web server on, the probe source IP address cannot be known (e.g., RIPE Atlas <xref target="RIPE_ATLAS"/> probes are sent from IP addresses not owned by the probe owner), dynamic source addresses, etc.</t>
      <t>The primary advantage of using the in-band technique is that it covers the cases where the out-of-band technique is not feasible (as described above). The primary disadvantage is that it could potentially bias the measurements, since packets with the Probe Description URI might be discarded. For example, data is allowed in TCP segments with the SYN flag (<xref target="RFC9293"/>) but may change the way they are processed, i.e., TCP segments with the SYN flag containing the Probe Description URI might be discarded. Another example is the Probe Description URI included in a Hop-by-Hop or Destination Options header, inside a PadN option. As per the informational <xref target="RFC4942"/>, section 2.1.9.5, it is suggested that a PadN option should only contain 0's and be smaller than 8 octets, thus limiting its use for probe attribution. If a PadN option does not respect the recommendation, it is suggested that one may consider dropping such packets. For example, the Linux Kernel follows these recommendations and discards such packets since its version 3.5;</t>
      <t>Having both the out-of-band and in-band techniques combined also has a big advantage, i.e., it could be used as an indirect means of "authenticating" the Probe Description URI in the in-band probe, thanks to a correlation with the out-of-band technique (e.g., a reverse DNS lookup). While the out-of-band technique alone is less prone to spoofing, the combination with the in-band technique offers a more complete solution.</t>
    </section>
    <section anchor="ethical-considerations">
      <name>Ethical Considerations</name>
      <t>Executing measurement experiences over the global Internet obviously requires ethical consideration, especially when unsolicited transit/destination parties are involved.</t>
      <t>This document proposes a common way to identify the source and the purpose of active probing in order to reduce the potential burden on the unsolicited parties.</t>
      <t>But there are other considerations to be taken into account: from the payload content (e.g., is the encoding valid?) to the transmission rate (see also <xref target="IPV6_TOPOLOGY"/> and <xref target="IPV4_TOPOLOGY"/> for some probing speed impacts). Those considerations are out of scope of this document.</t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>This document proposes simple techniques for probe attribution. It is expected that only ethical researchers would use them, which would simplify and reduce the time to identify probes across the Internet. In fact, these techniques could be used by anyone, malicious or not, which means that the information obtained cannot be blindly trusted. Using these techniques should not mean that a probe can be trusted. Instead, it should be considered as a solution for third parties to potentially understand the origin and context of such probes. This solution is not perfect but it provides a way for probe attribution, which is better than no solution at all.</t>
      <t>The probe attribution is provided to identify the source and intent of specific probes, but there is no authentication possible for the inline information.  Therefore, a malevolent actor could provide false information while conducting the probes, or spoof them, so that the action is attributed to a third party. In that case, not only would this third party be wrongly accused, but it might also be exposed to unwanted solicitations (e.g., angry emails or phone calls, if the malevolent actor used someone else's email address or phone number). As a consequence, the recipient of this information cannot trust it without confirmation.  If a recipient cannot confirm the information or does not wish to do so, it should treat the flows as if there were no probe attribution. Note that using the probe attribution do not create a new DDoS vector since there is no expectation that third parties would automatically confirm the information obtained.</t>
      <t>As the Probe Description URI is transmitted in the clear and as the Probe Description File is publicly readable, Personally Identifiable Information (PII) should not be used for email address and phone number; a generic / group email address and phone number should be preferred. Also, the Probe Description File could contain malicious data (e.g., links) and therefore should not be blindly trusted.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>The "Well-Known URIs" registry should be updated with the following additional values (using the template from <xref target="RFC8615"/>):</t>
      <ul spacing="normal">
        <li>URI suffix: probing.txt</li>
        <li>Change controller: IETF</li>
        <li>Specification document(s): this document</li>
        <li>Status: permanent</li>
      </ul>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC9116">
          <front>
            <title>A File Format to Aid in Security Vulnerability Disclosure</title>
            <author fullname="E. Foudil" initials="E." surname="Foudil"/>
            <author fullname="Y. Shafranovich" initials="Y." surname="Shafranovich"/>
            <date month="April" year="2022"/>
            <abstract>
              <t>When security vulnerabilities are discovered by researchers, proper reporting channels are often lacking. As a result, vulnerabilities may be left unreported. This document defines a machine-parsable format ("security.txt") to help organizations describe their vulnerability disclosure practices to make it easier for researchers to report vulnerabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9116"/>
          <seriesInfo name="DOI" value="10.17487/RFC9116"/>
        </reference>
        <reference anchor="RFC8615">
          <front>
            <title>Well-Known Uniform Resource Identifiers (URIs)</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
              <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8615"/>
          <seriesInfo name="DOI" value="10.17487/RFC8615"/>
        </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="RFC792">
          <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="RFC768">
          <front>
            <title>User Datagram Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="August" year="1980"/>
          </front>
          <seriesInfo name="STD" value="6"/>
          <seriesInfo name="RFC" value="768"/>
          <seriesInfo name="DOI" value="10.17487/RFC0768"/>
        </reference>
        <reference anchor="RFC9293">
          <front>
            <title>Transmission Control Protocol (TCP)</title>
            <author fullname="W. Eddy" initials="W." role="editor" surname="Eddy"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document specifies the Transmission Control Protocol (TCP). TCP is an important transport-layer protocol in the Internet protocol stack, and it has continuously evolved over decades of use and growth of the Internet. Over this time, a number of changes have been made to TCP as it was specified in RFC 793, though these have only been documented in a piecemeal fashion. This document collects and brings those changes together with the protocol specification from RFC 793. This document obsoletes RFC 793, as well as RFCs 879, 2873, 6093, 6429, 6528, and 6691 that updated parts of RFC 793. It updates RFCs 1011 and 1122, and it should be considered as a replacement for the portions of those documents dealing with TCP requirements. It also updates RFC 5961 by adding a small clarification in reset handling while in the SYN-RECEIVED state. The TCP header control bits from RFC 793 have also been updated based on RFC 3168.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="7"/>
          <seriesInfo name="RFC" value="9293"/>
          <seriesInfo name="DOI" value="10.17487/RFC9293"/>
        </reference>
        <reference anchor="RFC8200">
          <front>
            <title>Internet Protocol, Version 6 (IPv6) Specification</title>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="86"/>
          <seriesInfo name="RFC" value="8200"/>
          <seriesInfo name="DOI" value="10.17487/RFC8200"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="LARGE_SCALE" target="https://dl.acm.org/doi/pdf/10.1145/1071690.1064256">
          <front>
            <title>Efficient Algorithms for Large-Scale Topology Discovery</title>
            <author initials="B." surname="Donnet" fullname="Benoît Donnet">
              <organization>Université Pierre &amp; Marie Curie Laboratoire LiP6–CNRS</organization>
            </author>
            <author initials="P." surname="Raoult" fullname="Philippe Raoult">
              <organization>Université Pierre &amp; Marie Curie Laboratoire LiP6–CNRS</organization>
            </author>
            <author initials="T." surname="Friedman" fullname="Timur Friedman">
              <organization>Université Pierre &amp; Marie Curie Laboratoire LiP6–CNRS</organization>
            </author>
            <author initials="M." surname="Crovella" fullname="Mark Crovella">
              <organization>Boston University Computer Science Department</organization>
            </author>
            <date year="2005"/>
          </front>
          <seriesInfo name="DOI" value="10.1145/1071690.1064256"/>
        </reference>
        <reference anchor="IPV6_TOPOLOGY" target="http://www.cmand.org/papers/beholder-imc18.pdf">
          <front>
            <title>In the IP of the Beholder Strategies for Active IPv6 Topology Discovery</title>
            <author initials="R." surname="Beverly" fullname="Robert Beverly">
              <organization>Naval Postgraduate School</organization>
            </author>
            <author initials="R." surname="Durairajan" fullname="Ramakrishnan Durairajan">
              <organization>University of Oregon</organization>
            </author>
            <author initials="D." surname="Plonka" fullname="David Plonka">
              <organization>Akamai Technologies</organization>
            </author>
            <author initials="J.P." surname="Rohrer" fullname="Justin P. Rohrer">
              <organization>Naval Postgraduate School</organization>
            </author>
            <date year="2018"/>
          </front>
          <seriesInfo name="DOI" value="10.1145/3278532.3278559"/>
        </reference>
        <reference anchor="IPV4_TOPOLOGY" target="http://www.cmand.org/papers/yarrp-imc16.pdf">
          <front>
            <title>Yarrp’ing the Internet Randomized High-Speed Active Topology Discovery</title>
            <author initials="R." surname="Beverly" fullname="Robert Beverly">
              <organization>Naval Postgraduate School</organization>
            </author>
            <date year="2016"/>
          </front>
          <seriesInfo name="DOI" value="10.1145/2987443.2987479"/>
        </reference>
        <reference anchor="RIPE_ATLAS" target="https://atlas.ripe.net/">
          <front>
            <title>RIPE Atlas</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="NCSC" target="https://www.ncsc.gov.uk/">
          <front>
            <title>The National Cyber Security Centre</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="NCSC_SCAN_INFO" target="https://www.ncsc.gov.uk/information/ncsc-scanning-information">
          <front>
            <title>NCSC Scanning information</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="SCAPY" target="https://scapy.net/">
          <front>
            <title>Scapy</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC7872">
          <front>
            <title>Observations on the Dropping of Packets with IPv6 Extension Headers in the Real World</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="J. Linkova" initials="J." surname="Linkova"/>
            <author fullname="T. Chown" initials="T." surname="Chown"/>
            <author fullname="W. Liu" initials="W." surname="Liu"/>
            <date month="June" year="2016"/>
            <abstract>
              <t>This document presents real-world data regarding the extent to which packets with IPv6 Extension Headers (EHs) are dropped in the Internet (as originally measured in August 2014 and later in June 2015, with similar results) and where in the network such dropping occurs. The aforementioned results serve as a problem statement that is expected to trigger operational advice on the filtering of IPv6 packets carrying IPv6 EHs so that the situation improves over time. This document also explains how the results were obtained, such that the corresponding measurements can be reproduced by other members of the community and repeated over time to observe changes in the handling of packets with IPv6 EHs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7872"/>
          <seriesInfo name="DOI" value="10.17487/RFC7872"/>
        </reference>
        <reference anchor="I-D.draft-vyncke-v6ops-james">
          <front>
            <title>Just Another Measurement of Extension header Survivability (JAMES)</title>
            <author fullname="Éric Vyncke" initials="E." surname="Vyncke">
              <organization>Cisco</organization>
            </author>
            <author fullname="Raphaël Léas" initials="R." surname="Léas">
              <organization>Université de Liège</organization>
            </author>
            <author fullname="Justin Iurman" initials="J." surname="Iurman">
              <organization>Université de Liège</organization>
            </author>
            <date day="9" month="January" year="2023"/>
            <abstract>
              <t>   In 2016, RFC7872 has measured the drop of packets with IPv6 extension
   headers.  This document presents a slightly different methodology
   with more recent results.  It is still work in progress.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-vyncke-v6ops-james-03"/>
        </reference>
        <reference anchor="RFC4942">
          <front>
            <title>IPv6 Transition/Co-existence Security Considerations</title>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="S. Krishnan" initials="S." surname="Krishnan"/>
            <author fullname="P. Savola" initials="P." surname="Savola"/>
            <date month="September" year="2007"/>
            <abstract>
              <t>The transition from a pure IPv4 network to a network where IPv4 and IPv6 coexist brings a number of extra security considerations that need to be taken into account when deploying IPv6 and operating the dual-protocol network and the associated transition mechanisms. This document attempts to give an overview of the various issues grouped into three categories:</t>
              <t>o issues due to the IPv6 protocol itself, o issues due to transition mechanisms, and o issues due to IPv6 deployment.</t>
              <t>This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4942"/>
          <seriesInfo name="DOI" value="10.17487/RFC4942"/>
        </reference>
      </references>
    </references>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank Alain Fiocco, Fernando Gont, Ted Hardie, Mehdi Kouhen, and Mark Townsley for helpful discussions as well as Raphael Leas for an early implementation.</t>
      <t>The authors would also like to gracefully acknowledge useful reviews and comments received from Warren Kumari, Jen Linkova, Mark Nottingham, Prapanch Ramamoorthy, Tirumal Reddy, Andrew Shaw, and Magnus Westerlund.</t>
    </section>
    <section anchor="examples">
      <name>Examples of in-band Attribution</name>
      <t>Here are several examples generated by <xref target="SCAPY"/> and displayed in the 'tcpdump' format:</t>
      <ul spacing="normal">
        <li>IP packet with Probe Description URI inside a Destination Options extension header</li>
        <li>IP packet with the URI in the data payload of a TCP SYN</li>
        <li>IP echo request with another URI in the data part of the ICMP ECHO_REQUEST</li>
        <li>IPv4 echo request with a URI in the data part if the ICMP ECHO_REQUEST</li>
      </ul>
      <artwork><![CDATA[
IP6 2001:db8:dead::1 > 2001:db8:beef::1: DSTOPT 60878 > traceroute:
Flags [S], seq 0, win 8192, length 0

0x0000:  6000 0000 0044 3c40 2001 0db8 dead 0000  `....D<@........
0x0010:  0000 0000 0000 0001 2001 0db8 beef 0000  ................
0x0020:  0000 0000 0000 0001 0605 012c 6874 7470  ...........,http
0x0030:  733a 2f2f 6578 616d 706c 652e 6e65 742f  s://example.net/
0x0040:  2e77 656c 6c2d 6b6e 6f77 6e2f 7072 6f62  .well-known/prob
0x0050:  696e 672e 7478 7400 edce 829a 0000 0000  ing.txt.........
0x0060:  0000 0000 5002 2000 2668 0000            ....P...&h..


IP6 2001:db8:dead::1.15581 > 2001:db8:beef::1.traceroute:
Flags [S], seq 0:23, win 8192, length 23

0x0000:  6000 0000 002b 0640 2001 0db8 dead 0000  `....+.@........
0x0010:  0000 0000 0000 0001 2001 0db8 beef 0000  ................
0x0020:  0000 0000 0000 0001 3cdd 829a 0000 0000  ........<.......
0x0030:  0000 0000 5002 2000 c9b7 0000 6d61 696c  ....P.......mail
0x0040:  746f 3a6c 6162 4065 7861 6d70 6c65 2e6e  to:lab@example.n
0x0050:  6574 00                                  et.


IP6 2001:db8:dead::1 > 2001:db8:beef::1: ICMP6, echo request, id 0,
seq 0, length 28

0x0000:  6000 0000 001c 3a40 2001 0db8 dead 0000  `.....:@........
0x0010:  0000 0000 0000 0001 2001 0db8 beef 0000  ................
0x0020:  0000 0000 0000 0001 8000 2996 0000 0000  ..........).....
0x0030:  7465 6c3a 2b31 2d32 3031 2d35 3535 2d30  tel:+1-201-555-0
0x0040:  3132 3300                                123.


IP 192.0.2.1 > 198.51.10.1: ICMP echo request, id 0, seq 0, length 31

0x0000:  4500 0033 0001 0000 4001 8e93 c000 0201  E..3....@.......
0x0010:  c633 6401 0800 ea74 0000 0000 6d61 696c  .3d....t....mail
0x0020:  746f 3a6c 6162 4065 7861 6d70 6c65 2e6e  to:lab@example.n
0x0030:  6574 00                                  et.
]]></artwork>
    </section>
  </back>
  <!-- ##markdown-source:
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
+OBnuzglw/8DFl979v9CAAA=

-->

</rfc>
