<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.17 (Ruby 3.2.6) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-fujiwara-dnsop-ranking-data-00" category="std" consensus="true" submissionType="IETF" updates="2181" tocDepth="4" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="ranking">Clarifications to the DNS Ranking Data</title>

    <author initials="K." surname="Fujiwara" fullname="Kazunori Fujiwara">
      <organization abbrev="JPRS">Japan Registry Services Co., Ltd.</organization>
      <address>
        <postal>
          <country>Japan</country>
        </postal>
        <email>fujiwara@jprs.co.jp</email>
      </address>
    </author>
    <author initials="W." surname="Toorop" fullname="Willem Toorop">
      <organization>NLnet Labs</organization>
      <address>
        <postal>
          <street>Science Park 400</street>
          <city>Amsterdam</city>
          <code>1098 XH</code>
          <country>Netherlands</country>
        </postal>
        <email>willem@nlnetlabs.nl</email>
      </address>
    </author>

    <date year="2025" month="March" day="03"/>

    <area>operations</area>
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 44?>

<t>This document obsoletes Section 5.4.1 (Ranking data) of RFC 2181,
and specifies directives whereby the source of the data determines for what purposes it may be used.</t>



    </abstract>



  </front>

  <middle>


<?line 49?>

<section anchor="introduction"><name>Introduction</name>

<t>The DNS server assumed in Section <xref target="RFC2181" section="5.4.1" sectionFormat="bare">Ranking data</xref> of <xref target="RFC2181"/> is considered to
be a model with a shared database described in Section <xref target="RFC1035" section="2.2" sectionFormat="bare">Common configurations</xref> of <xref target="RFC1035"/> that
has both Authoritative server and Recursive Resolver functions.
It is assumed that information obtained from zone files, zone transfers,
and name resolution will be mixed together.</t>

<t>However, at the time of writing, this is no longer the practice of name servers and resolvers.
Zone transfers transfer the same data from primaries to
secondary servers without any modification.
An authoritative name server function does not mix and return information
obtained from name resolution.</t>

</section>
<section anchor="terminology"><name>Terminology</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>Many of the specialized terms used in this document are defined in
DNS Terminology <xref target="RFC9499"/>.</t>

</section>
<section anchor="problem-statement"><name>Problem Statement</name>

<t>In the past, recursive resolvers would return data from referral responses, such
as delegation information or glue, in the answer section of responses;
however, modern recursive resolvers complete name resolution
with an authoritative response from an authoritative server
that has authority through delegation.
However, there is no clear documentation of this.</t>

<t>"The Ranking Data" only indicates the priority among data, not its validity.
Attacks using responses that do not correspond to queries
and additional data that is not required have been considered and reported,
so unnecessary data should be discarded.</t>

<t>Currently, responses from authoritative servers are considered to include
authoritative name resolution results (NXDOMAIN, NODATA, the RRSet requested),
non-authoritative delegation information,
unnecessary data, and other types of errors,
and each of these is considered to affect how resolvers handle the data.
Therefore, directives on how to handle the data are needed.</t>

</section>
<section anchor="directives"><name>Directives</name>

<t><list style="numbers" type="1">
  <t>Authoritative servers <bcp14>MUST NOT</bcp14> merge zone data. (zone data should be
  retrieved from a source (zone file, internal database, zone
  transfer)</t>
  <t>Name resolution results (Answer section, or NXDOMAIN, NODATA)
  <bcp14>MUST</bcp14> be authoritative responses from authoritative servers
  that has authority through delegation.</t>
  <t>Non-authoritative responses (referral/delegation responses) from
  authoritative servers <bcp14>MUST</bcp14> only be used to query the delegated
  authoritative server during the name resolution.</t>
  <t>Names and IP addresses of the authoritative name servers for zones (such as the root zone) that are built-in or loaded from "hints" files, <bcp14>MUST</bcp14> only be used for priming a resolver for those zones <xref target="RFC9609"/>.</t>
</list></t>

</section>
<section anchor="additional-considerations"><name>Additional Considerations</name>

<t>[ Further directives could be made,
they may be DNS software implementation guidelines,
which would be large in scale,
so it is necessary to consider whether to proceed with them. ]</t>

<t><list style="symbols">
  <t>If a DNS server plays different roles for different namespaces
(authoritative server, recursive resolver, forwarder), it <bcp14>MUST NOT</bcp14>
 merge DNS data for each role.  <vspace blankLines='1'/>
For example, a recursive resolver that returns a fixed zone
as a split-horizon DNS can be interpreted as
acting as an authoritative server below a certain domain name,
but as a recursive resolver otherwise.</t>
  <t>The Additional Section returned as the result of name resolution
<bcp14>MUST</bcp14> be exactly the same as the Additional Section that came from
the authoritative response from the authoritative server, or a
separate authoritative response resulting from name resolution.</t>
  <t>Full-service resolvers <bcp14>SHOULD</bcp14> only accept the following data
from authoritative servers:  <list style="symbols">
      <t>NS and DS RRSets (+RRSIG) in the Authority Section
of the delegation response and Glue A/AAAA in the Additional Section,</t>
      <t>SOA RRs (+RRSIG) in the Authority Section
of authoritative NXDOMAIN and NODATA responses in response to the query,</t>
      <t>the Answer Section (+RRSIG) of the authoritative response
in response to the query, and</t>
      <t>any additional sections allowed by type (delegated domain name),</t>
    </list>
and <bcp14>SHOULD NOT</bcp14> accept any other information.</t>
</list></t>

</section>
<section anchor="iana"><name>IANA Considerations</name>
<t>This document requests no IANA actions.</t>

</section>
<section anchor="securitycons"><name>Security Considerations</name>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC2181">
  <front>
    <title>Clarifications to the DNS Specification</title>
    <author fullname="R. Elz" initials="R." surname="Elz"/>
    <author fullname="R. Bush" initials="R." surname="Bush"/>
    <date month="July" year="1997"/>
    <abstract>
      <t>This document considers some areas that have been identified as problems with the specification of the Domain Name System, and proposes remedies for the defects identified. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2181"/>
  <seriesInfo name="DOI" value="10.17487/RFC2181"/>
</reference>

<reference anchor="RFC1035">
  <front>
    <title>Domain names - implementation and specification</title>
    <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
    <date month="November" year="1987"/>
    <abstract>
      <t>This RFC is the revised specification of the protocol and format used in the implementation of the Domain Name System. It obsoletes RFC-883. This memo documents the details of the domain name client - server communication.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="13"/>
  <seriesInfo name="RFC" value="1035"/>
  <seriesInfo name="DOI" value="10.17487/RFC1035"/>
</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>

<reference anchor="RFC9499">
  <front>
    <title>DNS Terminology</title>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
    <date month="March" year="2024"/>
    <abstract>
      <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
      <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="219"/>
  <seriesInfo name="RFC" value="9499"/>
  <seriesInfo name="DOI" value="10.17487/RFC9499"/>
</reference>

<reference anchor="RFC9609">
  <front>
    <title>Initializing a DNS Resolver with Priming Queries</title>
    <author fullname="P. Koch" initials="P." surname="Koch"/>
    <author fullname="M. Larson" initials="M." surname="Larson"/>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <date month="February" year="2025"/>
    <abstract>
      <t>This document describes the queries that a DNS resolver should emit to initialize its cache. The result is that the resolver gets both a current NS resource record set (RRset) for the root zone and the necessary address information for reaching the root servers.</t>
      <t>This document obsoletes RFC 8109.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="209"/>
  <seriesInfo name="RFC" value="9609"/>
  <seriesInfo name="DOI" value="10.17487/RFC9609"/>
</reference>




    </references>




  </back>

<!-- ##markdown-source:
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
fnqC7HaJ2fhj/HY1w3wt/g1fvP5kKhYAAA==

-->

</rfc>

