<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.1.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-richardson-iotops-mud-query-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.1 -->
  <front>
    <title abbrev="IDevID scan">Doing an Inventory of IoT devices using IDevID scanning</title>
    <seriesInfo name="Internet-Draft" value="draft-richardson-iotops-mud-query-00"/>
    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <date year="2025" month="April" day="15"/>
    <area>Internet</area>
    <workgroup>IOTOPS Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 41?>

<t>This document describes a mechanism to do an inventory of devices on a network.</t>
      <t>While there are significant abuse and privacy concerns with kind of scanning, the practice of scanning networks and fingerprinting devices has been occuring since the mid 1990s.
But, the adhoc methods are not reliable and do not provide any kind of strong device identity.</t>
      <t>This document takes the approach that if it will happen, it might as well be reliable and secure.</t>
    </abstract>
  </front>
  <middle>
    <?line 50?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Even before the first release of <xref target="nmap"/> in 1998, network operators have wanted to know what systems are on their network.</t>
      <t>One way to do this control has been to require authentication before a system can use the Internet in the form of authenticating firewall proxies, including standards work around SOCKSv5 <xref target="RFC1929"/>.
For desktop users these mechanisms have been poorly received, and in many environments these controls have been turned off, or are never deployed.
The authenticate before Internet use can create be used to create an inventory, but it does not directly create an inventory.
Privacy considerations around IP address and MAC address disclosure have increasingly made that level of inventory even less useful <xref target="RFC9724"/>.</t>
      <t>None of the above heuristics are useful for devices which do not attempt to use Internet.
Nor can any kind of person focused authenticated firewall traversal be easily applied to IoT devices.
Many enterprises routinely scan DHCPv4 logs to make inventories of devices, but these only help for devices which do IPv4, and which use DHCP.  One response is <xref target="RFC9686"/>, to allow IPv6 devices to register their name via DHCP, and this is likely to be somewhat useful for some systems.</t>
      <t>Enterprises also will collect data from the ARP and IPv6 Neighbor Discovery tables of their routers, and this is probably the most accurate way to create some kind of inventory.
But the result are just ethernet addresses.
When they are IEEE OUI derived, it might point to a brand of device, but it might also just point to the brand of Ethernet adapter used.
Getting further information out the device can be difficult.</t>
      <t>Manufacturer Usage Descriptions (MUD) <xref target="RFC8520"/> are an emerging technology which can provide
a reliable link back to not just the manufacturer, but also the device type, and even provide access to ways in which to access the trustworthiness of the device <xref target="I-D.birkholz-rats-mud"/>.</t>
      <t>This document proposes an active protocol by which the table of MAC addresses can be turned into a MUD URL.</t>
    </section>
    <section anchor="protocol">
      <name>Protocol</name>
      <ol spacing="normal" type="1"><li>
          <t>Make IPv6 Link-Local connection to SLAAC-Ethernet derived IPv6 address on port TBD2.</t>
        </li>
        <li>
          <t>Start TLS on this port.</t>
        </li>
        <li>
          <t>Device uses it's IDevID certificate to respond to TLS request.</t>
        </li>
        <li>
          <t>Do some trivial request over TLS.</t>
        </li>
        <li>
          <t>Extract MUD URL from IDevID certificate.</t>
        </li>
      </ol>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Many.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Even more.</t>
      <t>Much potential for abuse by malware.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This will need a TCP port number allocated, and perhaps also a CoAPS/DTLS port number.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Hello.</t>
    </section>
    <section anchor="changelog">
      <name>Changelog</name>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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>
        <reference anchor="RFC8520" target="https://www.rfc-editor.org/info/rfc8520" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8520.xml">
          <front>
            <title>Manufacturer Usage Description Specification</title>
            <author fullname="E. Lear" initials="E." surname="Lear"/>
            <author fullname="R. Droms" initials="R." surname="Droms"/>
            <author fullname="D. Romascanu" initials="D." surname="Romascanu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This memo specifies a component-based architecture for Manufacturer Usage Descriptions (MUDs). The goal of MUD is to provide a means for end devices to signal to the network what sort of access and network functionality they require to properly function. The initial focus is on access control. Later work can delve into other aspects.</t>
              <t>This memo specifies two YANG modules, IPv4 and IPv6 DHCP options, a Link Layer Discovery Protocol (LLDP) TLV, a URL, an X.509 certificate extension, and a means to sign and verify the descriptions.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8520"/>
          <seriesInfo name="DOI" value="10.17487/RFC8520"/>
        </reference>
        <reference anchor="I-D.birkholz-rats-mud" target="https://datatracker.ietf.org/doc/html/draft-birkholz-rats-mud-01" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.birkholz-rats-mud.xml">
          <front>
            <title>MUD-Based RATS Resources Discovery</title>
            <author fullname="Henk Birkholz" initials="H." surname="Birkholz">
              <organization>Fraunhofer SIT</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="22" month="February" year="2025"/>
            <abstract>
              <t>Manufacturer Usage Description (MUD) files and the MUD URIs that point to them are defined in RFC 8520. This document introduces a new type of MUD file to be delivered in conjunction with a MUD file signature and/or to be referenced via a MUD URI embedded in other documents or messages, such as an IEEE 802.1AR Secure Device Identifier (DevID) or a CBOR Web Token (CWT). These signed documents can be presented to other entities, e.g., a network management system or network path orchestrator. If this entity also takes on the role of a verifier as defined by the IETF Remote ATtestation procedureS (RATS) architecture, this verifier can use the references included in the MUD file specified in this document to discover, for example, appropriate reference value providers, endorsement documents or endorsement distribution APIs, trust anchor stores, remote verifier services (sometimes referred to as Attestation Verification Services), or transparency logs. All theses references in the MUD file pointing to resources and auxiliary RATS services can satisfy general RATS prerequisite by enabling discovery or improve discovery resilience of corresponding resources or services.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-birkholz-rats-mud-01"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9238" target="https://www.rfc-editor.org/info/rfc9238" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9238.xml">
          <front>
            <title>Loading Manufacturer Usage Description (MUD) URLs from QR Codes</title>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="J. Latour" initials="J." surname="Latour"/>
            <author fullname="H. Habibi Gharakheili" initials="H." surname="Habibi Gharakheili"/>
            <date month="May" year="2022"/>
            <abstract>
              <t>This informational document details a protocol to load Manufacturer Usage Description (MUD) definitions from RFC 8520 for devices that do not have them integrated.</t>
              <t>This document is published to inform the Internet community of this mechanism to allow interoperability and to serve as a basis of other standards work if there is interest.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9238"/>
          <seriesInfo name="DOI" value="10.17487/RFC9238"/>
        </reference>
        <reference anchor="RFC9686" target="https://www.rfc-editor.org/info/rfc9686" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9686.xml">
          <front>
            <title>Registering Self-Generated IPv6 Addresses Using DHCPv6</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="S. Krishnan" initials="S." surname="Krishnan"/>
            <author fullname="R. Asati" initials="R." surname="Asati"/>
            <author fullname="L. Colitti" initials="L." surname="Colitti"/>
            <author fullname="J. Linkova" initials="J." surname="Linkova"/>
            <author fullname="S. Jiang" initials="S." surname="Jiang"/>
            <date month="December" year="2024"/>
            <abstract>
              <t>This document defines a method to inform a DHCPv6 server that a device has one or more self-generated or statically configured addresses.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9686"/>
          <seriesInfo name="DOI" value="10.17487/RFC9686"/>
        </reference>
        <reference anchor="RFC9726" target="https://www.rfc-editor.org/info/rfc9726" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9726.xml">
          <front>
            <title>Operational Considerations for Use of DNS in Internet of Things (IoT) Devices</title>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="March" year="2025"/>
            <abstract>
              <t>This document details considerations about how Internet of Things (IoT) devices use IP addresses and DNS names. These concerns become acute as network operators begin deploying Manufacturer Usage Descriptions (MUD), as specified in RFC 8520, to control device access.</t>
              <t>Also, this document makes recommendations on when and how to use DNS names in MUD files.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="241"/>
          <seriesInfo name="RFC" value="9726"/>
          <seriesInfo name="DOI" value="10.17487/RFC9726"/>
        </reference>
        <reference anchor="nmap" target="https://nmap.org/">
          <front>
            <title>NMAP</title>
            <author>
              <organization/>
            </author>
            <date year="2025" month="April" day="15"/>
          </front>
        </reference>
        <reference anchor="RFC1929" target="https://www.rfc-editor.org/info/rfc1929" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1929.xml">
          <front>
            <title>Username/Password Authentication for SOCKS V5</title>
            <author fullname="M. Leech" initials="M." surname="Leech"/>
            <date month="March" year="1996"/>
            <abstract>
              <t>The protocol specification for SOCKS Version 5 specifies a generalized framework for the use of arbitrary authentication protocols in the initial socks connection setup. This document describes one of those protocols, as it fits into the SOCKS Version 5 authentication "subnegotiation". [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1929"/>
          <seriesInfo name="DOI" value="10.17487/RFC1929"/>
        </reference>
        <reference anchor="RFC9724" target="https://www.rfc-editor.org/info/rfc9724" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9724.xml">
          <front>
            <title>State of Affairs for Randomized and Changing Media Access Control (MAC) Addresses</title>
            <author fullname="JC. Zúñiga" initials="JC." surname="Zúñiga"/>
            <author fullname="CJ. Bernardos" initials="CJ." role="editor" surname="Bernardos"/>
            <author fullname="A. Andersdotter" initials="A." surname="Andersdotter"/>
            <date month="March" year="2025"/>
            <abstract>
              <t>Internet users are becoming more aware that their activity over the Internet leaves a vast digital footprint, that communications might not always be properly secured, and that their location and actions can be tracked. One of the main factors that eases tracking of Internet users is the wide use of long-lasting, and sometimes persistent, identifiers at various protocol layers. This document focuses on Media Access Control (MAC) addresses.</t>
              <t>There have been several initiatives within the IETF and the IEEE 802 standards committees to address some of the privacy issues involved. This document provides an overview of these activities to help coordinate standardization activities in these bodies.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9724"/>
          <seriesInfo name="DOI" value="10.17487/RFC9724"/>
        </reference>
      </references>
    </references>
    <?line 104?>



  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
