<?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.7.0) -->


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

<!ENTITY RFC9364 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9364.xml">
<!ENTITY RFC5011 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5011.xml">
<!ENTITY RFC8145 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8145.xml">
<!ENTITY RFC7583 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7583.xml">
<!ENTITY RFC7646 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7646.xml">
<!ENTITY I-D.ietf-dnsop-ns-revalidation SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-dnsop-ns-revalidation.xml">
<!ENTITY RFC4033 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4033.xml">
<!ENTITY RFC8247 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8247.xml">
<!ENTITY RFC8221 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8221.xml">
<!ENTITY RFC8624 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8624.xml">
<!ENTITY RFC8914 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8914.xml">
<!ENTITY RFC7858 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7858.xml">
<!ENTITY RFC8484 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8484.xml">
<!ENTITY RFC9250 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9250.xml">
<!ENTITY RFC9325 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9325.xml">
<!ENTITY I-D.ietf-add-dnr SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-add-dnr.xml">
<!ENTITY I-D.ietf-add-ddr SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-add-ddr.xml">
<!ENTITY RFC6781 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6781.xml">
<!ENTITY RFC7958 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7958.xml">
<!ENTITY I-D.ietf-dnsop-rfc5011-security-considerations SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-dnsop-rfc5011-security-considerations.xml">
<!ENTITY RFC6975 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6975.xml">
<!ENTITY I-D.arkko-dns-confidential SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.arkko-dns-confidential.xml">
<!ENTITY RFC9230 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9230.xml">
]>

<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc docmapping="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-dnsop-dnssec-validator-requirements-06" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DRO Recommendations">Recommendations for DNSSEC Resolvers Operators</title>

    <author initials="D." surname="Migault" fullname="Daniel Migault">
      <organization>Ericsson</organization>
      <address>
        <postal>
          <street>8275 Trans Canada Route</street>
          <city>Saint Laurent, QC</city>
          <code>4S 0B6</code>
          <country>Canada</country>
        </postal>
        <email>daniel.migault@ericsson.com</email>
      </address>
    </author>
    <author initials="E." surname="Lewis" fullname="Edward Lewis">
      <organization>ICANN</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <code></code>
          <country>USA</country>
        </postal>
        <email>edward.lewis@icann.org</email>
      </address>
    </author>
    <author initials="D." surname="York" fullname="Dan York">
      <organization>Internet Society</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <code></code>
          <country>USA</country>
        </postal>
        <email>york@isoc.org</email>
      </address>
    </author>

    <date year="2023" month="June" day="28"/>

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

    <abstract>


<t>The DNS Security Extensions (DNSSEC) defines a process for validating received
data and assert them authentic and complete as opposed to forged.</t>

<t>This document provides recommendations for DNSSEC Resolver Operators (DRO) to operate a DNSSEC resolver.</t>



    </abstract>



  </front>

  <middle>


<section anchor="sec-intro"><name>Introduction</name>

<t>A DNS resolver is a service that locates and returns information pertaining to a query issued by some other service, such as an application. By its nature, a DNS resolver is inquisitive, susceptible to misleading information it may receive.
To address this, DNS Security (DNSSEC) extensions <xref target="RFC9364"/> were defined to provide authenticity and integrity to responses, as well as to provide an authenticated notice for data that does not exist.</t>

<t>A DNS resolver operator is an organization or individual that runs a DNS resolver. The resolver may be for a small set of relying parties, for a large but bounded collection of customers, or it may be operated with no restriction on who or what may make use of it.
To enhance the value of the service, a DNS resolver operator implements various security controls, including the use of DNSSEC validation. For the sake of this document, the term DNSSEC Resolver Operator (DRO) is defined as the responsible operator of a DNS resolver that makes use of DNSSEC validation.</t>

<t>Operating DNSSEC validation involves making use of digital signatures generated by a DNSSEC signer.
Besides the simple cryptographic process of validating digital signatures there are a number of checks required due to the nature of the DNS protocol.
A well-written DNSSEC validating resolver will faithfully implement the DNSSEC processes needed, leaving an operator to manage a few items.</t>

<t>The items that a DRO needs to attend to are:</t>

<t><list style="symbols">
  <t>Time of day (current, wall-clock time)</t>
  <t>Trust anchors (positive and negative)</t>
  <t>Monitoring of the service, including abuse</t>
</list></t>

<t>This document will list recommended actions for DNSSEC validating resolver operators that will help achieve the goals of DNSSEC validation. First, the goals ought to be stated.</t>

<t>The primary goal of any operations endeavor is to provide a service within service level agreements intended to make relying parties happy with the performance of the service. For DNSSEC, this breaks into two parts, one of accurately achieving the protections offered by DNSSEC, the other, to avoid DNSSEC from accidentally being an impediment.</t>

<t>The recommendations will focus on preparation of the elements of a DNSSEC validating resolver, as described earlier in the diagram. In particular, there are recommendations related to service monitoring, time source, Trust Anchor Manager/Store, and DNS Resolver. The recommendations are categorized as at initialization, during runtime, and upon demand.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>This document uses the following terminology:</t>

<dl>
  <dt>DNSSEC validator:</dt>
  <dd>
    <t>the entity that performs DNS resolution and performs signature
validation.</t>
  </dd>
  <dt>Accurate validation:</dt>
  <dd>
    <t>validation that avoids false positives and catches true negatives.</t>
  </dd>
  <dt>Trust Anchor Data Store:</dt>
  <dd>
    <t>a module (of code) implementing functions related to the trust anchors
used by the validator. This is essentially a database allowing access,
monitoring of, and changes to trust anchors.</t>
  </dd>
  <dt>DNSSEC Resolver Operator (DRO):</dt>
  <dd>
    <t>The operator or anyone providing DNSSEC validation service and managing DNSSEC
Validators.</t>
  </dd>
</dl>

</section>
<section anchor="sec-dnssec-val-desc"><name>Overall View of DNSSEC Validating Resolver</name>

<t>To help orient this document, the following schematic is offered to show some of the interrelationships among the elements of a DNSSEC validating resolver. This drawing is merely a cartoon summary, not an implementation guide.</t>

<figure title="DNSSEC Validating Resolver Description"><sourcecode type="aaasvg"><![CDATA[
  +--------------+  +------------+ +---------------+ +--------------+
  |              |  |            | |               | |              |
  |   Service    |  |    Time    | | Cryptographic | | Trust Anchor |
  |   Monitoring |  |    Source  | |   Libraries   | | Manager/Store|
  |              |  |            | |               | |              |
  +--------------+  +------------+ +---------------+ +--------------+
          |                |               |              ^    ^
          v                v               v              |    |
  +--------------+  +------------------------------+      |    |
  |              |  |                              |      |    |
  |              |  |                              |      |    |
->| DNS Resolver |->|   DNSSEC Validation Engine   |<-----+    |
-<|              |<-|                              |           |
  |              |  |                              |           |
  +--------------+  +------------------------------+           |
          ^               ^ |             ^                    |
          |               | v             |                    |
          |         +------------+ +---------------+           |
          |         |            | |               |           |
          +---------| DNS Caches | | DNS Messages  |<----------+
                    |            | |               |
                    +------------+ +---------------+
]]></sourcecode></figure>

<t>Across the top row are elements that an operator needs to address to properly run a DNSSEC Validating Resolver.</t>

<dl>
  <dt>Service Monitoring:</dt>
  <dd>
    <t>Enforces acceptable use policy and enables management of the service
This is a generic module for all services, here featuring some DNS and DNSSEC specific concerns.</t>
  </dd>
  <dt>Time Source:</dt>
  <dd>
    <t>Provides the wall clock or absolute, time
DNS has always used relative time to manage the TTL of resource record sets in caches, DNSSEC introduced the need for absolute time to thwart replay attacks and to manage the lifetime of signatures.</t>
  </dd>
  <dt>Cryptographic Libraries:</dt>
  <dd>
    <t>Software library or a Hardware Security Module (HSM) implementing cryptography providing Due to the nature of cryptography, the implementation of this module may evolve over time or at least be subject to technical refresh.</t>
  </dd>
  <dt>Trust Anchor Manager/Store:</dt>
  <dd>
    <t>The database of trust anchors used as the basis from which DNSSEC operates
This module contains the foundation upon which DNSSEC evaluates received data sets. The contents of this module are essential for proper operation. For a general-purpose validator running on a public Internet, it may have a single entry, for the very top of the DNS name space (the root). Management of this may be left to automated processes that are carefully designed to address vulnerabilities related to automated trust management. For specific situations, the Trust Anchor Manager/Store will also manage local-policy supporting trust anchors as well. Careful operation of this module is crucial to the value of the DNSSEC validating resolver.</t>
  </dd>
</dl>

<t>The other modules fill out the diagram to give the above context:</t>

<dl>
  <dt>DNS Resolver:</dt>
  <dd>
    <t>The service interface offered to other services/applications/users
This is the generic DNS resolution service, consulting the cache for hits, and seeking new answers for misses.</t>
  </dd>
  <dt>DNSSEC Validation Engine:</dt>
  <dd>
    <t>This implements the DNSSEC validation process
The validation engine is assumed to faithfully implement the DNSSEC validation algorithm, relying on the information from the Time Source, Cryptographic Libraries, Trust Anchor Management/Store as well as what is held in the local cache or gained through messages.</t>
  </dd>
  <dt>DNS Caches:</dt>
  <dd>
    <t>Include positive and negative caches.
These are the ordinary caches used in DNS operations, including DNSSEC extended record types and management.</t>
  </dd>
  <dt>DNS Messages:</dt>
  <dd>
    <t>Existing DNS message passing
This covers the proper implementation and operation of DNS and DNSSEC message exchanges.</t>
  </dd>
</dl>

<t>Note that there may be other elements involved in a DNSSEC validating resolver.</t>

</section>
<section anchor="time-recommendations"><name>Time Recommendations</name>

<t>As DNSSEC uses wall-clock time to temporally limit the validity of RRSIG resource records, a DNSSEC validator needs a reliable time source. If a validator can be fooled into believing that the time is a point well into the past, an incorrect RRSIG resource record may be replayed and used, or an old key whose private component has since been exposed may be able to forge a falsified answer.</t>

<t>The range of these recommendations include devices that do not have an embedded Real Time Clock. Such devices need to have their system clocks updated upon power up before starting the DNSSEC validator.</t>

<t>At initialization: a DNSSEC validator needs to be able to establish reliable time without relying on DNSSEC validation. The latter clause is needed as the initialization step is being carried out to start DNSSEC validation, it is not assumed to be up and running at this point. One way to interpret this is that a time source (Network Time Protocol) ought to be identified by a numerical IP address and not a fully qualified domain name (which would require a DNS lookup).</t>

<t>During runtime: a DNSSEC validator operator ought to have controls in place to monitor the current time of a validator as well as monitor the number of validation failures that can be attributed to temporal violations. Updates to the current time ought to make use of secure environments, whether secure channels for NTP or as appropriate for the installation. Updates ought to be part of an automated process, running at appropriately frequent intervals.</t>

<t>Upon demand: a DNSSEC validator operator ought to be able to perform any of the runtime actions upon demand, for instance, to help diagnose a service failure.</t>

</section>
<section anchor="ta"><name>Trust Anchor Related Recommendations</name>

<t>The TA store implements a trust model. The default trust model consists in trusting a single TA which is the KSK of the root zone.</t>

<t>While not generally recommended, a DRO may consider alternative TAs, for example, when the secure delegation to these RRsets may not be validated for any reasons.
The trust model should at least ensure that any domain name in the DNS be covered by at least one TA.
As the number of top level domains is evolving overtime, it remains safe to keep the root zone as a security entry point in order to cover the full domain name space.
Upon considering TA, the DRO should carefully ensure that the TA meets all necessary operational criterias. This includes for example, having a bootstrapping mechanism, or having their signers committed to respect the <xref target="RFC5011"/> timing - at least when the DRO relies on automatic updates (see below).</t>

<t>TAs are usually represented by a DNSKEY or DS RRset and are involved in the signature validation process to determine whether the validation is successful or not.</t>

<t>At initialization: The DRO needs to ensure the resolver can only be started with a TA store that matches the trust model and that is up-to-date.
The DRO needs to securely retrieve and check the TA upon starting the resolver.
For the default trust model, for example, <xref target="UNBOUND-ANCHOR"/> or <xref target="ta-fetcher"/> implements <xref target="RFC7958"/> and ensures the resolver is configured with the up-to-date TA of the root zone. Similarly, the up-to-date default trust model is very commonly implemented by the software release in which case the DRO may simply rely on software update.</t>

<t>During runtime: The DRO needs to ensure the TA is up-to-date. This is achieved by enabling TA to be updated automatically as well as being able to check the status of the TA.
TA updates are not expected to be handled manually as this introduces a potentially huge vector for configuration errors as well as potential misunderstanding of ongoing operations.
Instead, the DRO should rely on automated procedures such as, for example, Automated Updates to DNSSEC Trust Anchors" <xref target="RFC5011"/> <xref target="I-D.ietf-dnsop-rfc5011-security-considerations"/> or software updates.
As <xref target="RFC5011"/> is an in-band mechanism, the DRO is expected to understand these risks <xref section="8" sectionFormat="comma" target="RFC5011"/>. Software update or other mechanisms may also be used.</t>

<t>Upon demand: The DRO should be able to check the status of the TA within its resolvers on a regular basis or when it is aware a TA roll over is ongoing.
This includes the TA stored in the running resolver as well as potential configuration files.
The TA used by the resolver is expected to be retrieved using "Signaling Trust Anchor Knowledge in DNS Security Extensions (DNSSEC)" <xref target="RFC8145"/>, and may re-use similar software as those used at the initialisation to retrieve and check the expected value of the TA.
The TA health check should associate a status to the TA - as defined in Section 3 of <xref target="RFC7583"/> - to ease the TA monitoring and potential analysis.
When an unexpected (old) TA is found, the health check should evaluate if the mismatch resulted from an ongoing normal roll over, a potential emergency key roll over, failed roll over or any other envisioned cases.
In any case restarting the resolver is expected to address any situation that cannot be addressed otherwise, which reinforces the recommendation to rely on TA bootstrapping mechanisms.</t>

<t>Note also that <xref target="RFC8145"/> also enables any authoritative server to check how the TA roll over is performed. Such cooperation is expected to be useful and benefit the overall operation of the DNS system.</t>

</section>
<section anchor="nta"><name>Negative Trust Anchors Related Recommendations</name>

<t>When the DNSSEC Resolver is not able to validate signatures because a key or DS has been published with an error, the DRO may temporarily disable the signature check for that key until the time the error is addressed.
Negative Trust Anchor (NTA) represents the only permitted intervention in the resolving process for a DRO.</t>

<t>The designation of NTA might be misleading, but NTA is not expected to be part of the trust model even though the NTA belongs to the TA store.</t>

<t>At initialization: Similarly to TA, the DRO is expected to automatically configure the resolver with the NTA.</t>

<t>Upon demand: the DRO is expected to automatically determine the used NTA and handle NTA as described in <xref target="RFC7646"/>.</t>

<t>A signature validation failure is either an attack or a failure in the signing operation on the authoritative servers.
The DRO is expected to confirm this offline before introducing the NTA.
This is likely to happen via a human confirmation which is based on information collected during running time.</t>

<t>At running time: The DRO should monitor the number of signature failures associated with each DNSKEY. These numbers are only hints and must not trigger automated insertion of NTA.</t>

</section>
<section anchor="cached-rrset-recommendations"><name>Cached RRset Recommendations</name>

<t>During runtime: A DRO is not expected to perform any operations over the cached RRSet.
A common concern DRO has is the consistency between the cached RRset with those published by the DNS system.
DRO should not implement or deploy any non standard mechanism.
<xref target="I-D.ietf-dnsop-ns-revalidation"/> is one of these mechanisms, for example.
Section 8.1 of <xref target="RFC4033"/> also mentions the ability by the resolver to set the upper bound of the TTL to the remaining signature validity period.
This value has usually a default value set by the resolver and the DRO may change that default value.</t>

<t>Upon demand: a DRO may have been informed that a rogue or unwilling DNSKEY has been published. In such a situation, the DRO should be able to remove the RRsets validated by the rogue DNSKEY - which may be done by flushing the full cache.</t>

</section>
<section anchor="cryptography-deprecation-recommendations"><name>Cryptography Deprecation Recommendations</name>

<t>As mentioned in <xref target="RFC8247"/> and <xref target="RFC8221"/> cryptography used one day is expected over time to be replaced by new and more robust cryptographic mechanisms.
In the case of DNSSEC signature protocols are likely to be updated over time.
In order to anticipate the sunset of one of the signature schemes, a DNSSEC validator may be willing to estimate the impact of deprecating one signature scheme.</t>

<t>Currently, interoperability and security are enforced via cryptographic recommendations <xref target="RFC8624"/> that are followed by both resolvers and authoritative servers.
The implementation of such guidance is ensured by the software vendors and the compliance of their releases.</t>

<t>At initialization: The DRO is expected to ensure recent software releases are used and that this release complies with the most recent cryptographic guidelines.</t>

<t>During runtime: a DRO may regularly request and monitor the signature scheme supported by an authoritative server.
In addition, when a validation fails because a deprecated algorithm is used, the DRO should return an "Unsupported DNSKEY Algorithm" as defined in <xref target="RFC8914"/> to the DNS client.</t>

<t>Note that one inconvenience to such a strategy is that it does not let one DRO take advantage of more recent cryptographic algorithms.
While currently not being widely used, a DRO may announce an authoritative server the supported signature schemes to the authoritative server <xref target="RFC6975"/> in the hope that future deployment of authoritative servers will be able to leverage it.</t>

</section>
<section anchor="invalid-reporting-recommendations"><name>Invalid Reporting Recommendations</name>

<t>A DNSSEC validator receiving a DNS response cannot make the difference between receiving an non-secure response versus an attack.
Dropping DNSSEC fields by misconfigured middle boxes, such as DS, RRRSIG is considered as an attack.
A DNSSEC validator is expected to perform secure DNS resolution and as such protects its stub client.
An invalid response may be the result of an attack or a misconfiguration, and the DRO may play an important role in sharing this information with the authoritative server or domain name owner.</t>

<t>At runtime: a DRO should monitor and report DNSSEC validation errors and inform the DNS client with "Extended DNS Errors" <xref target="RFC8914"/>.</t>

</section>
<section anchor="transport-recommendations"><name>Transport Recommendations</name>

<t>DNSSEC validation requires that the validator is able to reliably obtain necessary records, especially DNSKEY records. This should be done at initial configuration, and tested periodically.</t>

<t>This means the validator must ensure it is configured so that the UDP and TCP transports, and DNS resolver components, are compatible with the network paths that the majority of DNS queries traverse - which includes compatibility between DNS and transport parameters with the Maximum Transmission Unit (MTU).</t>

<t>In other words, make sure that:</t>

<t><list style="numbers">
  <t>DNS UDP bufsize (EDNS parameter) is set to a value compatible with network MTUs the queries and responses will encounter. If the validator advertises a bufsize &gt;&gt; MTU, responses with the IPv4 Don't Fragment (DF) bit set whose size R where MTU &lt; R &lt;= bufsize exceeds the MTU will be dropped by the router with MTU &lt; R.</t>
  <t>The validator's OS TCP configuration has its advertised Maximum Segment Size (MSS) set to a value compatible with network MTUs the queries and responses will encounter.</t>
</list></t>

<t><list style="symbols">
  <t>Having an advertised MSS set to a value &lt; MTU ensures that Path MTU Discovery is not required</t>
  <t>If PMTUD fails for any reason, or if the server responding does not maintain or use PMTUD, and advertised MSS &gt; MTU at any point in the path, TCP may encounter problems caused by IP fragmentation and reassembly.</t>
  <t>This is particularly relevant if there are any NAT type devices in the path, as those may not properly handle fragmentation and reassembly</t>
  <t>If all TCP segments are smaller than the path MTU, TCP will work reliably.</t>
</list></t>

<t>The avoidance of fragmentation in order to address known fragmentation-related security issues with DNS (leading to cache poisoning, for example) has resulted in the need to set the DF bit on UDP.
Validators will need to ensure their local environment can reliably get any critical DNSSEC records (notably DNSKEY) over UDP, or reliably get responses with TC=1 if overly large responses cannot be sent over UDP due to answers not fitting within the advertised bufsize payload.
Validators also need to ensure TCP works if it is needed, for the same situations.</t>

</section>
<section anchor="secure-transport-recommendations"><name>Secure Transport Recommendations</name>

<t>A DRO should consider secure transport as a complementary element of its trust model.
Such resolvers are usually designated as encrypted resolvers and their presence is usually discovered by the DNS client via a discovery mechanisms.
That discovery mechanism may require the resolver to respond to specific DNS requests.</t>

<t>In many cases, a DRO enables DNSSEC to ensure the cached RRset have not been modified on-path and corresponds to those published by the owner of the zone.
To ensure RRsets are protected against on-path modification from the resolver to the DNS client, the DRO may enable a secure transport such as DNS over TLS (DoT) <xref target="RFC7858"/>, DNS over HTTPS <xref target="RFC8484"/> (DoH) or DNS over QUIC (DoQ) <xref target="RFC9250"/>.
The TLS termination may be supported by the running resolver software or via a TLS front end and TLS should follow its own TLS recommendations <xref target="RFC9325"/>.</t>

<t>A DRO should consider how the DNS client will discover the encrypted resolver. 
A DNS client may be provisioned with all the necessary parameters via specific mechanisms such as  DHCP and Router Advertisement Options for the Discovery of Network-designated Resolvers <xref target="I-D.ietf-add-dnr"/> or 3GPP TS 24.008 mechanisms.
Alternatively, a DNS client configured with an unencrypted resolver may discover the encrypted resolvers operated by the same entity as the unencrypted resolver using the Discovery of Designated Resolvers (DDR) <xref target="I-D.ietf-add-ddr"/>. 
The relation between the unencrypted resolver and the encrypted resolvers is indicated during the TLS key exchange via a certificate that contains a subjectAltName extension with the IP address of the unencrypted resolver.
To ease the (even future) deployment of DDR, it is recommended that a DRO uses a global IP address for its unencrypted resolver. 
When the DRO deploys encrypted resolvers, it is recommended that the DRO enables DNS clients to discover the encrypted resolvers using DDR and use a certificate authority that belongs to the Web PKI.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>There is no IANA consideration for this document.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>Security consideration of DNSSEC operations are described in <xref target="RFC6781"/>.
However, most DNSSEC operations are performed by the owner of the zone as opposed to the DRO.
In addition, DRO are largely relying on the software vendor as well as automated procedure as to limit potential intervention from the DRO.
This section emphases on DRO related security considerations.</t>

<t>Regarding time inaccuracy, a RRSIG is only valid between the inception and expiration time. As a result, when the time is outside this period validation is disabled, and this could be used by an attacker to disable validation for example to poison the cache.</t>

<t>Trust anchors are the root of the trust in DNSSEC and potentially, an attacker being able to provide a rogue trust anchor is potentially able to hijack any RRset below that Trust Anchor. On the other hand, mishandling Trust Anchor is likely resulting in a validator unable to validate most of the traffic under the TA.
The use by a DRO of a common trust model shared by many DRO and implemented by multiple vendors reduces these risks.</t>

<t>Negative trust anchors by definition disable validation, and as such must be handled very cautiously by the DRO. This could be used by an attacker, for example, to disable validation and poison the resolver.</t>

<t>Using weak cryptography reduces the strength in the trust implemented by DNSSEC as it relied on cryptographic signatures. A weak cryptographic algorithm may be used by an attacker to forge a signature. It is probably something the DRO may observe as use as an indicator, but there is little action the DRO can actually do, as the cryptographic algorithms to be used are defined by the owner of the zone or the RRSet.</t>

<t>The DRO is operating one part of the DNS system. While a DRO operates independently, it is believed that communication between the different actors involved in the DNS system will enhance the global resiliency of the system.
As a result, this document encourages the DRO to provides some information to the stub client when a signature validation fails.
It also encourages the DRO to authorize third parties to request what trust anchor or more generally DNSKEY are being used, so concerned party may be able to contact the DRO if needed.
This is expected, for example when a authoritative server is performing a key roll over to check the update has been performed properly before removing the old key. 
The same considerations for communications also holds between DRO as well as with software vendors.</t>

<t>As the software used for the DNSSEC validator is not immune to bugs <xref target="ENT"/> and may become vulnerable independently of how it is operated, it is recommended a DRO relies on different vendors.</t>

<section anchor="dnssec-and-tls-trust-models"><name>DNSSEC and TLS Trust Models</name>

<t>While the document is essentially focused on the security implemented by DNSSEC, it also mentions the combination of TLS and DNSSEC. 
DNSSEC is essentially a protocol focused on authenticating the DNS data, but is not addressing confidentiality of the data nor the privacy of the user requesting that data.
TLS provides authentication and confidentiality of a communication.</t>

<t>As a result, TLS is necessary wherever privacy is needed.
In the current model a DNS client is using TLS to protect the communication with the resolver.
If that resolver is trusted and believed to host trustworthy RRsets - that is unmodified RRsets validated by the DNSSEC - the TLS communication enables the DNS client to trust the RRSets without performing a DNSSEC validation.
If that resolver is expected to perform some operations agreed by the DNS client that may change the RRsets, DNSSEC cannot be performed by the DNS client and TLS is used to carried these trusted RRsets to the DNS client.<br />
On the other hand, if the DNS client does not fully trust the resolver, than the DNS client must authenticate the received RRsets with DNSSEC.
In that case, TLS is only providing privacy protection.</t>

<t>The trust in a DNS resolver depends on multiple factors, but one significant concern is the ability of the DRO to perform a man in the middle attack and change on the fly the RRsets without the stub client being aware of it. 
Confidential computing <xref target="I-D.arkko-dns-confidential"/> may be one way to address such attacks.
Another concern, related to privacy, is the ability of a resolver to track a certain user and log every sites requested by the user. Confidential Computing <xref target="I-D.arkko-dns-confidential"/> or oblivious DNS <xref target="RFC9230"/> are means to address such issues.</t>

<t>A model where TLS would be used to protect the transactions between the DNS client and the authoritative server is unlikely in a near future for scalability reasons.
A compromise to this model may consists in having the TLS communications between the resolvers and the authoritative servers.
In such scenario, the privacy requirement might be questionable as the resolver aggregates the traffic of multiple DNS clients which may be considered to provide sufficient privacy.
However, a model involving a communication composed of multiple TLS segments is only trusted if all involved nodes are trusted (DNS client, resolver, authoritative server).
In practice, it is unlikely to have all these intermediary nodes trusted, in which case trust will rely on DNSSEC.</t>

</section>
</section>
<section anchor="acknowledgment"><name>Acknowledgment</name>

<t>The need to address DNSSEC issues on the resolver occurred during multiple discussions including among others Ted Lemon, Ralph Weber,
Normen Kowalewski, Mikael Abrahamsson, Jim Gettys, Paul Wouters, Joe Abley, Michael Richardson, Vladimír Čunát, James Gannon, Andrew McConachie, Peter Thomassen, Florian Obser, Brian Dickson and Christian Huitema.</t>

<t>We also appreciated the support of the DNSOP chairs Tim Wicinski, Suzanne Woolf and Benno Overeinder.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>

&RFC9364;
&RFC5011;
&RFC8145;
&RFC7583;
&RFC7646;
&I-D.ietf-dnsop-ns-revalidation;
&RFC4033;
&RFC8247;
&RFC8221;
&RFC8624;
&RFC8914;
&RFC7858;
&RFC8484;
&RFC9250;
&RFC9325;
&I-D.ietf-add-dnr;
&I-D.ietf-add-ddr;
&RFC6781;


    </references>

    <references title='Informative References'>

<reference anchor="UNBOUND-ANCHOR" target="https://nlnetlabs.nl/documentation/unbound/unbound-anchor/">
  <front>
    <title>unbound-anchor - Unbound anchor utility</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ENT" target="https://indico.dns-oarc.net/event/25/contributions/403/attachments/378/647/AFNIC_OARC_Dallas.pdf">
  <front>
    <title>ENT was here !!!</title>
    <author initials="V." surname="Levigneron" fullname="Vincent Levigneron">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ta-fetcher" target="https://github.com/iana-org/get-trust-anchor">
  <front>
    <title>DNSSEC Trust Anchor Fetcher</title>
    <author initials="J. S. and K." surname="Davies" fullname="Jakob Schlyter and Kim Davies">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
&RFC7958;
&I-D.ietf-dnsop-rfc5011-security-considerations;
&RFC6975;
&I-D.arkko-dns-confidential;
&RFC9230;


    </references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA71963YbR5LmfzxFtf1jxDEAyZJsyzru3qZJqaW2RalJyj7z
p+ckqhJANgtV6LoQgiX3E8xL7APsU8w82MQXEXmpAih5d3tX59gSgaq8Rnzx
xSWTs9lsMulcV9qn2aXN683GVoXpXF212bJusvOLq6tnZ/RVW5e3tmmz11vb
mK5u2olZLBp7+zQ7v3w9fnVS1HllNtRm0ZhlN3O2W86Kqq23+H9r89mtKV2B
dmaN/XvvGksvd+3swdeTtl9sXNtSM9f7LbXw8tn188nEbZunWdf0bffwwYNv
HzycmMaap1nNo6FnTTnZrag79DG52dFrVWebynazc4xgkpvuaeaqZT2ZbN3T
SZY1y9wWbbfHxPe2pU+6Ok/+6aqCRuQ/aOuma+yyDT/vN4Mfu8bl4WFZii58
66rSVaEbWpqN2W5dtZJPJqbv1nWDMeHPTP/Ga9TC+Tx75VamL7vwuSzsuamc
LQ++rBtq9hmNpm3rKnxK47OWxvfk4TdfZdeNoc09M5UpTHZZ950Nz+Wu2z/N
royruuxH0zc0i2n2l7P4fV1Q14+vsgfff5182FddQ+9Jk+FzuzGupC3hgc43
MtA/Wh3bnFbp+JSfzbMf7c61owk/K3amKUZf8XRfnp1eXIznGn6eDWd37HPM
6ujnOrG3V6fjWVkezbzEaP7oclNVcxrLnXv4b3Vzc7iBw49lLiq22RWJoO32
/5+ntacB/dG1dc6zmUBhmg0p2C239Pbi+9dvL85npxdnL15fStup9HamWUHM
1l23bZ/ev1+VNJPSLNp5Vd4nue+hFqyu9/tqQcMo/N8zU+XUzH1pRuBo+FU2
y97KB5l+0HeudLxCzy6uDwfj1/knV+UW8mxv3aqyjarFeKyk7y6v5wQgs9o0
+ZxGft/e0ov3H351P69pxdyiZ3C7//jBo/um60y+ZjW//+ibJ/e/fvzN/dPn
Fy/P/v316eXZv5+bsjTtfFss0xnROLOdabO1bWz2u9/9DkhjZkvb5fTJ3TP4
s7mpF9lVvi73JBw0/SL7wW1IgG6dbY9OZuW6db+Ait13pJQz2sz79MCMAVQX
NB2Yovw1vs5OZXmfy7Am8mc2m2W0kV1j8m4yuV5bvJNd2bxvaA+yZ+86W7Vs
Ne5JYydZYZcEe21msm1T57YVg6LAT/CXNTa3JFnFhH42PC1DtqHpsm5tN7wS
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

-->

</rfc>

