<?xml version="1.0" encoding="utf-8"?>
<!-- name="GENERATOR" content="github.com/mmarkdown/mmark Mmark Markdown Processor - mmark.miek.nl" -->
<rfc version="3" ipr="trust200902" docName="draft-davids-forsalereg-01" submissionType="IETF" category="bcp" xml:lang="en" xmlns:xi="http://www.w3.org/2001/XInclude" indexInclude="true" consensus="true" tocDepth="5">

<front>
<title abbrev="forsalereg">Registration of Underscored and Globally Scoped 'for sale' DNS Node Name</title><seriesInfo value="draft-davids-forsalereg-01" stream="IETF" status="bcp" name="Internet-Draft"></seriesInfo>
<author initials="M." surname="Davids" fullname="Marco Davids"><organization abbrev="SIDN Labs">SIDN Labs</organization><address><postal><street>Meander 501</street>
<city>Arnhem</city>
<code>6825 MD</code>
<country>Netherlands</country>
</postal><phone>+31 26 352 5500</phone>
<email>marco.davids@sidn.nl</email>
</address></author><date/>
<area>Internet</area>
<workgroup></workgroup>

<abstract>
<t>This document defines a simple operational convention of using a reserved underscored node name (&quot;_for-sale&quot;) to indicate that the parent domain name above, is for sale. It has the advantage that it can be easily deployed, without affecting any running operations. As such, the method can be applied to a domain name that is still in full use.</t>
</abstract>

</front>

<middle>

<section anchor="introduction"><name>Introduction</name>
<t>Well established services <xref target="RFC3912"></xref><xref target="RFC9083"></xref> exist, to find out if a domain name is registered or not. But the fact that a domain name exists does not exclude the possibility to obtain it, because it may be up for sale.</t>
<t>Some registrars and various other parties offer (payed) mediation services between domain name holders and interested parties, but for a domain name that is not for sale, such services are a waste of money and time.</t>
<t>This specification defines a simple universal way to find out if a domain name, even though it is taken, might be obtained nevertheless. It enables a domain name holder to add a reserved underscored node name <xref target="RFC8552"></xref> in the zone, indicating that the domain name is actually for sale.</t>
<t>The TXT record RRtype <xref target="RFC1035"></xref> that is created for that purpose <bcp14>MAY</bcp14> contain a pointer, such as a URI <xref target="RFC8820"></xref>, to allow an interested party to find information or to get in touch and engage in further arrangements.</t>
<t>With due caution, this information can also be incorporated in the automated availability services, so that when the domain name is checked for availablity, the service can also indicate it is for sale, including a referral to the selling party's information.</t>

<section anchor="terminology"><name>Terminology</name>
<t>The key words &quot;<bcp14>MUST</bcp14>&quot;, &quot;<bcp14>MUST NOT</bcp14>&quot;, &quot;<bcp14>REQUIRED</bcp14>&quot;, &quot;<bcp14>SHALL</bcp14>&quot;, &quot;<bcp14>SHALL NOT</bcp14>&quot;,
&quot;<bcp14>SHOULD</bcp14>&quot;, &quot;<bcp14>SHOULD NOT</bcp14>&quot;, &quot;<bcp14>RECOMMENDED</bcp14>&quot;, &quot;<bcp14>NOT RECOMMENDED</bcp14>&quot;, &quot;<bcp14>MAY</bcp14>&quot;, and
&quot;<bcp14>OPTIONAL</bcp14>&quot; in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"></xref> <xref target="RFC8174"></xref>
when, and only when, they appear in all capitals, as shown here.</t>
</section>
</section>

<section anchor="rationale"><name>Rationale</name>
<t>There are undoubtedly more ways to address this problem space. The reasons for the approach defined in this document are primarily accessibility and simplicity. The indicator can be easilty turned on and off at will and moreover, it is available right away and does not require major changes in existing services. This allows for a smooth introduction of the concept.</t>
</section>

<section anchor="convention"><name>Convention</name>

<section anchor="content-limitations"><name>Content limitations</name>
<t>The TXT <xref target="RFC8553" sectionFormat="parens" relative="#" section="2.1"></xref> record <bcp14>MUST</bcp14> contain any valid content, ranging from an empty string to sensible text or URI's. However, it <bcp14>SHALL NOT</bcp14> contain any text that is suggesting that the domain is not for sale. In the case a domain name is not for sale, the &quot;_for-sale&quot; indicator MUST NOT be used. Any existence of a &quot;_for-sale&quot; TXT record <bcp14>MUST</bcp14> therefore be regarded as an indication that the domain name is for sale.</t>
<t>This specification does not dictate the exact use of any content in the &quot;_for-sale&quot; TXT record, or the lack of any such content. Parties, such as Registries and Registrars may use it in their tools, perhaps even by defining additional requirements that the content must meet. Or an individual can use it in combination with existing tools to get in touch with the seller.</t>
<t>The content of the TXT record is &quot;as is&quot; and characters such as &quot;;&quot; between two URIs for example, have no defined meaning. It is up to the processor of the content to decide how to handle them.</t>
</section>

<section anchor="rrset-limitations"><name>RRset limitations</name>
<t>This specification does not define any restrictions to the number of TXT records in the RRset, although it is recommended to limit it to one. It is also recommended that the length of the RDATA <xref target="RFC8499"></xref> does not exceed 255 bytes. When the RRset contains multiple records, or exceeds 255 bytes, it is at the discretion of the processor to make a selection. For example, a registry might pick a mandatory URI from the RRset, to display on a website as part of their service, whilst and individual might just pick a possibly present phone number and dial it to get in touch.</t>
</section>

<section anchor="rr-type-limitation"><name>RR Type limitation</name>
<t>Adding any other RR types under the &quot;_for-sale&quot; leaf but TXT is <bcp14>NOT RECOMMENDED</bcp14> and they <bcp14>MUST</bcp14> be ignored for the purpose of this document.</t>
</section>

<section anchor="ttl-limitation"><name>TTL limitation</name>
<t>A TTL longer than 86400 is <bcp14>NOT RECOMMENDED</bcp14>.</t>
</section>

<section anchor="wildcard-limitation"><name>Wildcard limitation</name>
<t>The &quot;_for-sale&quot; leaf <bcp14>MUST NOT</bcp14> be a wildcard.</t>
</section>

<section anchor="cname-limitation"><name>CNAME limitation</name>
<t>The &quot;_for-sale&quot; leaf <bcp14>MAY</bcp14> be a CNAME pointing to a TXT RRtype.</t>
</section>

<section anchor="placement-of-node-name"><name>Placement of node name</name>
<t>The &quot;_for-sale&quot; leaf node name <bcp14>MAY</bcp14> be placed on the top level domain, or any domain directly below. It <bcp14>MAY</bcp14> also be placed at a lower level, but only when that level is mentioned in the Public Suffix List <xref target="PSL"></xref>.</t>
<t>Any other placement of the record <bcp14>MUST NOT</bcp14> be regarded as a signal that the domain above it is for sale.</t>
<t>See <xref target="placements"></xref> for further explanation.</t>
<table anchor="placements"><name>Allowed placements of TXT record </name>
<thead>
<tr>
<th>Name</th>
<th>Situation</th>
<th>Verdict</th>
</tr>
</thead>

<tbody>
<tr>
<td>_for-sale.example</td>
<td>root zone</td>
<td>For sale</td>
</tr>

<tr>
<td>_for-sale.aaa.example</td>
<td>Second level</td>
<td>For sale</td>
</tr>

<tr>
<td>_for-sale.co.bbb.example</td>
<td>bbb.example in PSL</td>
<td>For sale</td>
</tr>

<tr>
<td>_for-sale.www.ccc.example</td>
<td>Other</td>
<td>Invalid</td>
</tr>
</tbody>
</table></section>
</section>

<section anchor="examples"><name>Examples</name>

<section anchor="example-1-a-uri"><name>Example 1: a URI</name>
<t>The owner of 'example.com' wishes to signal that the domain is for sale and adds this record to the 'example.com' zone:</t>

<artwork>_for-sale.example.com. IN TXT &quot;https://example.com/forsale.html&quot;
</artwork>
<t>An interested party notices this signal and can visit the URI mentioned for further information. The TXT record can also be processed by automated tools. See the <xref target="security" format="title"></xref> section for possible risks.</t>
<t>As an alternative, a mailto: URI could also be used:</t>

<artwork>_for-sale.example.com. IN TXT &quot;mailto:owner@example.com&quot;
</artwork>
<t>Or a telephone URI:</t>

<artwork>_for-sale.example.com. IN TXT &quot;tel:+1-201-555-0123&quot;
</artwork>
<t>There can be a use case for this, especially since WHOIS (or RDAP) often has privacy restrictions.</t>
</section>

<section anchor="example-2-various-other-possibilities"><name>Example 2: Various other possibilities</name>
<t>Free format text:</t>

<artwork>_for-sale.example.com. IN TXT &quot;I'm for sale: info [at] example.com&quot;
</artwork>
<t>The content in the next example could be malicious, but it is not in violation of this specification (see <xref target="security"></xref>):</t>

<artwork>_for-sale.example.com. IN TXT &quot;&lt;script&gt;alert('H4x0r')&lt;/script&gt;&quot;
</artwork>
</section>
</section>

<section anchor="iana-considerations"><name>IANA Considerations</name>
<t>IANA has established the &quot;Underscored and Globally Scoped DNS Node Names&quot; registry <xref target="RFC8552"></xref><xref target="IANA"></xref>. The underscored node name defined in this specification should be added as follows:</t>
<figure><name>Entry for the &quot;Underscored and Globally Scoped DNS Node Names&quot; Registry
</name>
<sourcecode type="ascii-art">             +-----------+--------------+-------------+
             | RR Type   | _NODE NAME   | Reference   |
             +-----------+--------------+-------------+
             | TXT       | _for-sale    | TBD         |
             +-----------+--------------+-------------+
</sourcecode>
</figure>
</section>

<section anchor="privacy-considerations"><name>Privacy Considerations</name>
<t>There is a risk of data scraping, such as email addresses and phone numbers.</t>
</section>

<section anchor="security"><name>Security Considerations</name>
<t>One use of the TXT record type defined in this document is to parse the content it contains and to automatically publish certain information from it on a website or otherwise. There is a risk involved in this, when the domain owner publishes a malicious URI or one that points to improper content. This may result in reputational damage for the party parsing the record.</t>
<t>Even worse is the scenario where the content of the TXT record is not validated and sanitized sufficiently, opening doors to XSS attacks among other things.</t>
<t>Therefore it is <bcp14>RECOMMENDED</bcp14> that any parsing and publishing is done with utmost care.</t>
<t>There is also a potential risk that this method is abused as a marketing tool, or to otherwise lure individuals into visiting certain sites or other forms of contact, without the intention of actually selling the particular domain name. It is therefore recommended that this method is primarily used by professionals who are sufficiently alert and aware.</t>
</section>

<section anchor="implementation-status"><name>Implementation Status</name>
<t>The concept described in this document is in use with the .nl ccTLD registry.</t>
<t>[note to editor: please remove this section before publication]</t>
</section>

<section anchor="acknowledgements"><name>Acknowledgements</name>
<t>The author would like to thank Thijs van den Hout, Caspar Schutijser and Melvin Elderman for their valuable feedback.</t>
</section>

</middle>

<back>
<references><name>Normative References</name>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.1035.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8552.xml"/>
</references>
<references><name>Informative References</name>
<reference anchor="IANA" target="https://www.iana.org/assignments/dns-parameters/dns-parameters.xml#underscored-globally-scoped-dns-node-names">
  <front>
    <title>Underscored and Globally Scoped DNS Node Names</title>
    <author>
      <organization>IANA</organization>
    </author>
  </front>
</reference>
<reference anchor="PSL" target="https://publicsuffix.org/">
  <front>
    <title>Public Suffix List</title>
    <author>
      <organization>Mozilla Foundation</organization>
    </author>
  </front>
</reference>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3912.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8499.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8553.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8820.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9083.xml"/>
</references>

</back>

</rfc>
