<?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.6.17 (Ruby 2.6.8) -->


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

]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-dnsop-dns-error-reporting-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DNS-ER">DNS Error Reporting</title>

    <author initials="R." surname="Arends" fullname="Roy Arends">
      <organization>ICANN</organization>
      <address>
        <email>roy.arends@icann.org</email>
      </address>
    </author>
    <author initials="M." surname="Larson" fullname="Matt Larson">
      <organization>ICANN</organization>
      <address>
        <email>matt.larson@icann.org</email>
      </address>
    </author>

    <date year="2022" month="October" day="24"/>

    
    <workgroup>dnsop</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>DNS Error Reporting is a lightweight error reporting mechanism that provides the operator of an authoritative server with reports on DNS resource records that fail to resolve or validate, that a Domain Owner or DNS Hosting organization can use to improve domain hosting. The reports are based on Extended DNS Errors <xref target="RFC8914"/>.</t>

<t>When a domain name fails to resolve or validate due to a misconfiguration or an attack, the operator of the authoritative server may be unaware of this. To mitigate this lack of feedback, this document describes a method for a validating recursive resolver to automatically signal an error to an agent specified by the authoritative server. DNS Error Reporting uses the DNS to report errors.</t>



    </abstract>



  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>
<t>When an authoritative server serves a stale DNSSEC signed zone, the cryptographic signatures over the resource record sets (RRsets) may have lapsed. A validating recursive resolver will fail to validate these resource records.</t>

<t>Similarly, when there is a mismatch between the DS records at a parent zone and the key signing key at the child zone, a validating recursive resolver will fail to authenticate records in the child zone.</t>

<t>These are two of several failure scenarios that may go unnoticed for some time by the operator of a zone.</t>

<t>There is no direct relationship between operators of validating recursive resolvers and authoritative servers. Outages are often noticed indirectly, by end users, and reported via social media, if reported at all.</t>

<t>When records fail to validate there is no facility to report this failure in an automated way. If there is any indication that an error or warning has happened, it is buried in log files of the validating resolver, if these errors are logged at all.</t>

<t>This document describes a facility that can be used by validating recursive resolvers to report errors in an automated way.</t>

<t>It allows an authoritative server to signal a reporting agent where the validating recursive resolver can report issues if it is configured to do so.</t>

<t>The burden of reporting a failure falls on the validating recursive resolver. It is important that the effort needed to report failure is low, with minimal impact to its main functions. To accomplish this goal, the DNS itself is utilized to report the error.</t>

</section>
<section anchor="requirements-notation"><name>Requirements Notation</name>
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in <xref target="RFC2119"/>.</t>

</section>
<section anchor="terminology"><name>Terminology</name>
<t>Reporting Resolver: In the context of this document, the term reporting resolver is used as a shorthand for a validating recursive resolver that supports DNS Error Reporting.</t>

<t>Reporting Query: The DNS query used to report an error is called a reporting query. A reporting query is for DNS resource record type NULL. The details of the error report are encoded in the QNAME of the reporting query.</t>

<t>Reporting Agent: A facility responsible for receiving error reports on behalf of authoritative servers. This facility is indicated by a domain name.</t>

<t>Reporting Agent Domain: a domain name which the reporting resolver includes in the QNAME of the reporting query.</t>

</section>
<section anchor="overview"><name>Overview</name>
<t>An authoritative server indicates support for DNS Error Reporting by including an EDNS0 option with OPTION-CODE [TBD] [RFC Editor: change TBD to the proper code when assigned by IANA.], and the REPORTING AGENT DOMAIN in DNS wireformat in the option's payload. The authoritative server MUST NOT include this option in the response if the configured reporting agent domain is empty or the null label (the root).</t>

<t>When a reporting resolver sends a reporting query to report an error, it MUST NOT include the EDNS0 Error Reporting option in the reporting query. This avoids additional compounding error reporting when there is an issue with the reporting agent domain.</t>

<t>To report an error, the reporting resolver encodes the error report in the QNAME of the reporting query. The reporting resolver builds this QNAME by concatenating the _er label, the extended error code <xref target="RFC8914"/>, the QTYPE and the QNAME that resulted in failure, the label "_er" again, and the reporting agent domain. See the example in section 4.2. Note that a regular RCODE is not included, as the RCODE is not relevant to the extended error code.</t>

<t>The resulting concatenated domain name is sent as a standard DNS query for DNS resource record type NULL by the reporting resolver. This query MUST NOT have the EDNS0 option code [TBD] set to avoid compounding error notifications.</t>

<t>The query will ultimately arrive at the authoritative server for the reporting agent domain. A NODATA negative response is returned by the authoritative server of the reporting agent domain, which in turn can be cached by the reporting resolver.</t>

<t>This caching is essential. It ensures that the number of reports sent by a reporting resolver for the same problem is dampened, i.e. once per TTL, however, certain optimizations such as <xref target="RFC8020"/> and <xref target="RFC8198"/> may reduce the number of error reporting queries as well.</t>

<section anchor="managing-caching-optimizations"><name>Managing Caching Optimizations</name>

<t>The reporting resolver may utilize various caching optimizations that inhibit subsequent error reporting to the same reporting agent domain.</t>

<t>If the authoritative server for the reporting agent domain were to respond with NXDOMAIN (name error), <xref target="RFC8020"/> rules state that any name at or below that domain should be considered unreachable, and negative caching would prohibit subsequent queries for anything at or below that domain for a period of time, depending on the negative TTL <xref target="RFC2308"/>.</t>

<t>Since the authoritative server for an agent domain may not know the contents of all the zones it acts as an agent for, it is essential that the authoritative server does not respond with NXDOMAIN, as that may inhibit subsequent queries. The use of a wildcard domain name <xref target="RFC4592"/> in the zone for the agent domain will ensure the RCODE is consistently NOERROR.</t>

<t>Considering the Resource Record type for this wildcard record, type NULL is prohibited in master zone files <xref target="RFC1035"/>. However, any type that is not special according to <xref target="RFC4592"/> section 4 will do, such as a TXT record with an email address for the reporting agent in the RDATA.</t>

<t>Wildcard expansion occurs, even if the QTYPE is not for the type owned by the wildcard domain name. The response is a “no error, but no data” response (<xref target="RFC4592"/>, section 2.2.1.) that contains a NOERROR RCODE and empty answer section. Note that reporting resolvers are not expected to query for this TXT record, since reporting queries use type NULL. This record is solely present to ensure a NODATA response is returned in response to reporting queries.</t>

<t>When the zone for the reporting agent domain is signed, a resolver may utilize aggressive negative caching, discussed in <xref target="RFC8198"/>. This optimization makes use of NSEC and NSEC3 (without opt-out) records and allows the resolver to do the wildcard synthesis. When this happens, the resolver may not send subsequent queries as it will be able to synthesize a response from previously cached material.</t>

<t>A solution is to avoid DNSSEC for the reporting agent domain. Signing the agent domain will incur an additional burden on the reporting resolver, as it has to validate the response. However, this response has no utility to the reporting resolver.</t>

</section>
<section anchor="example"><name>Example</name>
<t>The domain broken.test is hosted on a set of authoritative servers. One of these serves a stale version. This authoritative server has a reporting agent configured: a01.reporting-agent.example.</t>

<t>The reporting resolver is unable to validate the broken.test RRSet for type A, due to an RRSIG record with an expired signature.</t>

<t>The reporting resolver constructs the QNAME _er.7.1.broken.test._er.a01.reporting-agent.example and resolves it. This QNAME indicates extended DNS error 7 occurred while trying to validate broken.test type 1 (A) record.</t>

<t>After this query is received at one of the authoritative servers for the reporting agent domain (a01.reporting-agent.example), the reporting agent (the operators of the authoritative server for a01.reporting-agent.example) determines that the authoritative server for the broken.test zone suffers from an expired signature record (extended error 7) for type A for the domain name broken.test. The reporting agent can contact the operators of broken.test to fix the issue.</t>

</section>
</section>
<section anchor="edns0-option-specification"><name>EDNS0 Option Specification</name>
<t>This method uses an EDNS0 <xref target="RFC6891"/> option to indicate support for sending DNS error reports and responding with the Reporting Agent Domain in DNS messages. The option is structured as follows:</t>

<figure><artwork><![CDATA[
                     1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 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                     
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        OPTION-CODE = TBD      |       OPTION-LENGTH           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
/                    REPORTING AGENT DOMAIN                     /
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
]]></artwork></figure>

<t>Field definition details:</t>

<t><list style="symbols">
  <t>OPTION-CODE, 2-octets/16-bits (defined in <xref target="RFC6891"/>), for indicating error reporting support is TBD. [RFC Editor: change TBD to the proper code when assigned by IANA.]</t>
  <t>OPTION-LENGTH, 2-octets/16-bits ((defined in <xref target="RFC6891"/>) contains the length of the REPORTING AGENT DOMAIN field in octets.</t>
  <t>REPORTING AGENT DOMAIN, a Domain name <xref target="RFC8499"/> in the DNS wire format prescribed by <xref target="RFC1035"/>.</t>
</list></t>

</section>
<section anchor="dns-error-reporting-specification"><name>DNS Error Reporting Specification</name>
<t>The various errors that a reporting resolver may encounter are listed in <xref target="RFC8914"/>. Note that not all listed errors may be supported by the reporting resolver. This document does not specify what is an error and what is not.</t>

<t>The DNS class is not specified in the error report.</t>

<section anchor="reporting-resolver-specification"><name>Reporting Resolver Specification</name>
<t>Reporting Resolvers may have a configuration that allows the following:</t>

<t>The reporting resolver MUST NOT use DNS error reporting to report a failure in resolving the reporting query.</t>

<t>The reporting resolver MUST NOT use DNS error reporting if the authoritative server has an empty Reporting Agent Domain field in the EDNS Error Reporting option.</t>

<section anchor="constructing-the-reporting-query"><name>Constructing the Reporting Query</name>

<t>The QNAME for the reporting query is constructed by concatenating the following elements, appending each successive element in the list to the right-hand side of the QNAME:</t>

<t><list style="symbols">
  <t>A label containing the string "_er".</t>
  <t>The Extended DNS error, presented as a decimal value, in a single DNS label.</t>
  <t>The QTYPE that was used in the query that resulted in the extended DNS error, presented as a decimal value, in a single DNS label.</t>
  <t>The QNAME that was used in the query that resulted in the extended DNS error. The QNAME may consist of multiple labels and is concatenated as is, i.e. in DNS wire format.</t>
  <t>A label containing the string "_er".</t>
  <t>The reporting agent domain. The reporting agent domain consists of multiple labels and is concatenated exactly as received in the EDNS option sent by the authoritative server.</t>
</list></t>

<t>If the resulting reporting query QNAME would exceed 255 octets, it MUST NOT be sent.</t>

<t>The "_er" labels allow the reporting agent to quickly differentiate between the agent domain and the faulty query name. When the specified agent domain is empty, or a NULL label (despite being not allowed in this specification), the reporting query will have "_er" as a top-level domain as a result and not the original query. Lastly, the purpose of the first "_er" label is to indicate that a complete reporting query has been received, instead of a shorter reporting query due to  query minimization.</t>

</section>
</section>
<section anchor="authoritative-server-specification"><name>Authoritative Server Specification</name>
<t>The Authoritative Server SHOULD NOT have multiple reporting agent domains configured for a single zone. To support multiple reporting agents, a single agent can act as a syndicate to subsequently inform additional agents.</t>

<t>An authoritative server for a zone with DNS error reporting enabled SHOULD NOT also be authoritative for that zone's reporting agent domain's zone.</t>

</section>
<section anchor="reporting-agent-specification"><name>Reporting Agent Specification</name>
<t>It is RECOMMENDED that the reporting agent zone uses a wildcard DNS record of type TXT with an arbitrary string in the RDATA and a TTL of at least one hour.</t>

</section>
<section anchor="choosing-a-reporting-agent-domain"><name>Choosing a Reporting Agent Domain</name>
<t>It is RECOMMENDED that the reporting agent domain be kept relatively short to allow for a longer QNAME in the reporting query.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>
<t>IANA is requested to assign the following DNS EDNS0 option code registry:</t>

<figure><artwork><![CDATA[
      Value    Name              Status      Reference
      -----    ----------------  --------    ---------------
      TBD      DNS ERROR REPORT  Standard    [this document]
]]></artwork></figure>
<t>[RFC Editor: change TBD to the proper code when assigned by IANA.]</t>

<t>IANA is requested to assign the following Underscored and Globally Scoped DNS Node Name registry:</t>

<figure><artwork><![CDATA[
      RR Type  _NODE NAME  Reference
      -----    ----------  ---------   
      TXT      _er         [this document]
]]></artwork></figure>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>
<t>Use of DNS Error Reporting may expose local configuration mistakes in the reporting resolver, such as stale DNSSEC trust anchors to the reporting agent.</t>

<t>DNS Error reporting SHOULD be done using DNS Query Name Minimization <xref target="RFC7816"/> to improve privacy.</t>

<t>DNS Error Reporting is done without any authentication between the reporting resolver and the authoritative server of the agent domain. Authentication significantly increases the burden on the reporting resolver without any benefit to the reporting agent, authoritative server or reporting resolver.</t>

<t>The method described in this document will cause additional queries by the reporting resolver to authoritative servers in order to resolve the reporting query.</t>

<t>This method can be abused by deploying broken zones with agent domains that are delegated to servers operated by the intended victim in combination with open resolvers <xref target="RFC8499"/>.</t>

</section>
<section anchor="acknowledgements"><name>Acknowledgements</name>
<t>This document is based on an idea by Roy Arends and David Conrad. The authors would like to thank Peter van Dijk, Vladimir Cunat, Paul Hoffman, Libor Peltan, Matthijs Mekking, Willem Toorop, Tom Carpay, Dick Franks, Benno Overeinder and Petr Spacek for their contributions.</t>

</section>


  </middle>

  <back>



    <references title='Informative References'>



<reference anchor='RFC8914' target='https://www.rfc-editor.org/info/rfc8914'>
  <front>
    <title>Extended DNS Errors</title>
    <author fullname='W. Kumari' initials='W.' surname='Kumari'/>
    <author fullname='E. Hunt' initials='E.' surname='Hunt'/>
    <author fullname='R. Arends' initials='R.' surname='Arends'/>
    <author fullname='W. Hardaker' initials='W.' surname='Hardaker'/>
    <author fullname='D. Lawrence' initials='D.' surname='Lawrence'/>
    <date month='October' year='2020'/>
    <abstract>
      <t>This document defines an extensible method to return additional information about the cause of DNS errors.  Though created primarily to extend SERVFAIL to provide additional information about the cause of DNS and DNSSEC failures, the Extended DNS Errors option defined in this document allows all response types to contain extended error information.  Extended DNS Error information does not change the processing of RCODEs.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8914'/>
  <seriesInfo name='DOI' value='10.17487/RFC8914'/>
</reference>

<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/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='RFC8020' target='https://www.rfc-editor.org/info/rfc8020'>
  <front>
    <title>NXDOMAIN: There Really Is Nothing Underneath</title>
    <author fullname='S. Bortzmeyer' initials='S.' surname='Bortzmeyer'/>
    <author fullname='S. Huque' initials='S.' surname='Huque'/>
    <date month='November' year='2016'/>
    <abstract>
      <t>This document states clearly that when a DNS resolver receives a response with a response code of NXDOMAIN, it means that the domain name which is thus denied AND ALL THE NAMES UNDER IT do not exist.</t>
      <t>This document clarifies RFC 1034 and modifies a portion of RFC 2308: it updates both of them.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8020'/>
  <seriesInfo name='DOI' value='10.17487/RFC8020'/>
</reference>

<reference anchor='RFC8198' target='https://www.rfc-editor.org/info/rfc8198'>
  <front>
    <title>Aggressive Use of DNSSEC-Validated Cache</title>
    <author fullname='K. Fujiwara' initials='K.' surname='Fujiwara'/>
    <author fullname='A. Kato' initials='A.' surname='Kato'/>
    <author fullname='W. Kumari' initials='W.' surname='Kumari'/>
    <date month='July' year='2017'/>
    <abstract>
      <t>The DNS relies upon caching to scale; however, the cache lookup generally requires an exact match. This document specifies the use of NSEC/NSEC3 resource records to allow DNSSEC-validating resolvers to generate negative answers within a range and positive answers from wildcards. This increases performance, decreases latency, decreases resource utilization on both authoritative and recursive servers, and increases privacy. Also, it may help increase resilience to certain DoS attacks in some circumstances.</t>
      <t>This document updates RFC 4035 by allowing validating resolvers to generate negative answers based upon NSEC/NSEC3 records and positive answers in the presence of wildcards.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8198'/>
  <seriesInfo name='DOI' value='10.17487/RFC8198'/>
</reference>

<reference anchor='RFC2308' target='https://www.rfc-editor.org/info/rfc2308'>
  <front>
    <title>Negative Caching of DNS Queries (DNS NCACHE)</title>
    <author fullname='M. Andrews' initials='M.' surname='Andrews'/>
    <date month='March' year='1998'/>
    <abstract>
      <t>RFC1034 provided a description of how to cache negative responses.  It however had a fundamental flaw in that it did not allow a name server to hand out those cached responses to other resolvers, thereby greatly reducing the effect of the caching.  This document addresses issues raise in the light of experience and replaces RFC1034 Section 4.3.4. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='2308'/>
  <seriesInfo name='DOI' value='10.17487/RFC2308'/>
</reference>

<reference anchor='RFC4592' target='https://www.rfc-editor.org/info/rfc4592'>
  <front>
    <title>The Role of Wildcards in the Domain Name System</title>
    <author fullname='E. Lewis' initials='E.' surname='Lewis'/>
    <date month='July' year='2006'/>
    <abstract>
      <t>This is an update to the wildcard definition of RFC 1034.  The interaction with wildcards and CNAME is changed, an error condition is removed, and the words defining some concepts central to wildcards are changed.  The overall goal is not to change wildcards, but to refine the definition of RFC 1034. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='4592'/>
  <seriesInfo name='DOI' value='10.17487/RFC4592'/>
</reference>

<reference anchor='RFC1035' target='https://www.rfc-editor.org/info/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='RFC6891' target='https://www.rfc-editor.org/info/rfc6891'>
  <front>
    <title>Extension Mechanisms for DNS (EDNS(0))</title>
    <author fullname='J. Damas' initials='J.' surname='Damas'/>
    <author fullname='M. Graff' initials='M.' surname='Graff'/>
    <author fullname='P. Vixie' initials='P.' surname='Vixie'/>
    <date month='April' year='2013'/>
    <abstract>
      <t>The Domain Name System's wire protocol includes a number of fixed fields whose range has been or soon will be exhausted and does not allow requestors to advertise their capabilities to responders. This document describes backward-compatible mechanisms for allowing the protocol to grow.</t>
      <t>This document updates the Extension Mechanisms for DNS (EDNS(0)) specification (and obsoletes RFC 2671) based on feedback from deployment experience in several implementations. It also obsoletes RFC 2673 ("Binary Labels in the Domain Name System") and adds considerations on the use of extended labels in the DNS.</t>
    </abstract>
  </front>
  <seriesInfo name='STD' value='75'/>
  <seriesInfo name='RFC' value='6891'/>
  <seriesInfo name='DOI' value='10.17487/RFC6891'/>
</reference>

<reference anchor='RFC8499' target='https://www.rfc-editor.org/info/rfc8499'>
  <front>
    <title>DNS Terminology</title>
    <author fullname='P. Hoffman' initials='P.' surname='Hoffman'/>
    <author fullname='A. Sullivan' initials='A.' surname='Sullivan'/>
    <author fullname='K. Fujiwara' initials='K.' surname='Fujiwara'/>
    <date month='January' year='2019'/>
    <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 sometimes 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 obsoletes RFC 7719 and updates RFC 2308.</t>
    </abstract>
  </front>
  <seriesInfo name='BCP' value='219'/>
  <seriesInfo name='RFC' value='8499'/>
  <seriesInfo name='DOI' value='10.17487/RFC8499'/>
</reference>

<reference anchor='RFC7816' target='https://www.rfc-editor.org/info/rfc7816'>
  <front>
    <title>DNS Query Name Minimisation to Improve Privacy</title>
    <author fullname='S. Bortzmeyer' initials='S.' surname='Bortzmeyer'/>
    <date month='March' year='2016'/>
    <abstract>
      <t>This document describes a technique to improve DNS privacy, a technique called "QNAME minimisation", where the DNS resolver no longer sends the full original QNAME to the upstream name server.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7816'/>
  <seriesInfo name='DOI' value='10.17487/RFC7816'/>
</reference>




    </references>



  </back>

<!-- ##markdown-source:
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
0OnEPMRC2/IABkl9XoXzX/8HQ8hhCYI5AAA=

-->

</rfc>

