<?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.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-dnsop-ds-automation-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.1 -->
  <front>
    <title abbrev="DS Automation">Operational Recommendations for DS Automation</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-ds-automation-00"/>
    <author initials="S." surname="Sheng" fullname="Steve Sheng">
      <organization/>
      <address>
        <email>steve.sheng@gmail.com</email>
      </address>
    </author>
    <author initials="P." surname="Thomassen" fullname="Peter Thomassen">
      <organization>deSEC</organization>
      <address>
        <email>peter@desec.io</email>
      </address>
    </author>
    <date/>
    <area>Internet</area>
    <workgroup>DNSOP Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 60?>

<t>Enabling support for automatic acceptance of DS parameters from the Child DNS operator (via RFCs 7344, 8078, 9615) requires the parent operator, often a registry or registrar, to make a number of technical decisions. This document describes recommendations for new deployments of such DS automation.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Domain Name System Operations Working Group mailing list (dnsop@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dnsop/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/peterthomassen/draft-shetho-dnsop-ds-automation"/>.</t>
    </note>
  </front>
  <middle>
    <?line 64?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref target="RFC7344"/>, <xref target="RFC8078"/>, <xref target="RFC9615"/> automate DNSSEC delegation trust maintenance by having the child publish CDS and/or CDNSKEY records which indicate the delegation's desired DNSSEC parameters ("DS automation").</t>
      <t>Parental Agents using these protocols have to make a number of technical decisions relating to issues of validity checks, timing, error reporting, locks, etc. Additionally, when using the RRR model (as is common amongst top-level domains), both the registrar and the registry can effect parent-side changes to the delare reviewers not egation. In such a situation, additional questions arise.</t>
      <t>Not all existing DS automation deployments have made the same choices with respect to these questions, leading to somewhat inconsistent behavior. From the perspective of a domain holder with domain names under various TLDs, this may be unexpected and confusing.</t>
      <t>New deployments of DS automation therefore SHOULD follow the recommendations set out in this document, to achieve a more uniform treatment across suffixes and to minimize user surprise. The recommendations are intended to provide baseline safety and uniformity of behavior across parents. Registries with additional requirements on DS update checks MAY implement any additional checks in line with local policy.</t>
      <t>In the following sections, operational questions are first raised and answered with the corresponding recommendations. Each section is concluded with an analysis of its recommendations, and related considerations.</t>
      <t>Readers are expected to be familiar with DNSSEC <xref target="RFC9364"/><xref target="RFC9615"/><xref target="I-D.draft-ietf-dnsop-generalized-notify-09"/>. For terminology, see <xref target="terminology"/>.</t>
      <section anchor="requirements-notation">
        <name>Requirements Notation</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" 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.
<?line -6?>
        </t>
      </section>
    </section>
    <section anchor="validity">
      <name>Validity Checks and Safety Measures</name>
      <t>This section provides recommendations to address the following questions:</t>
      <ul spacing="normal">
        <li>
          <t>What kind of validity checks should be performed on DS parameters?</t>
        </li>
        <li>
          <t>Should these checks be performed upon acceptance, or also continually when in place?</t>
        </li>
        <li>
          <t>How do TTLs and caching impact DS provisioning? How important is timing in a child key change?</t>
        </li>
      </ul>
      <section anchor="recommendations">
        <name>Recommendations</name>
        <ol spacing="normal" type="1"><li>
            <t>Entities performing automated DS maintenance SHOULD verify  </t>
            <ol spacing="normal" type="a"><li>
                <t>the consistency of DS update requests across all authoritative nameservers in the delegation <xref target="I-D.ietf-dnsop-cds-consistency"/>, and</t>
              </li>
              <li>
                <t>that the resulting DS record set would not break DNSSEC validation if deployed,</t>
              </li>
            </ol>
            <t>
and cancel the update if the verifications do not succeed.</t>
          </li>
          <li>
            <t>Parent operators (such as registries) SHOULD reduce a DS record set's TTL to a value between 5–15 minutes when the set of records is changed, and restore the normal TTL value at a later occasion (but not before the previous DS RRset's TTL has expired).</t>
          </li>
        </ol>
      </section>
      <section anchor="analysis_validity">
        <name>Analysis</name>
        <section anchor="continuity-of-resolution">
          <name>Continuity of Resolution</name>
          <t>To maintain the basic resolution function, it is important to avoid the deployment of flawed DS record sets in the parent zone. It is therefore desirable for the Parent to verify that the DS record set resulting from an automated (or even manual) update does not break DNSSEC validation if deployed, and otherwise cancel the update.</t>
          <t>This is best done by</t>
          <ol spacing="normal" type="1"><li>
              <t>verifying that consistent CDS/CDNSKEY responses are served by all of the delegation's nameservers <xref target="I-D.ietf-dnsop-cds-consistency"/>;</t>
            </li>
            <li>
              <t>verifying that the resulting DS RRset does not break the delegation if applied (<xref section="4.1" sectionFormat="comma" target="RFC7344"/>), i.e., that it provides at least one valid path for validators to use (<xref section="5.11" sectionFormat="comma" target="RFC6840"/>). This is the case if there is at least one DS record referencing a key that actually signs the child's DNSKEY RRset, where the digest type and signing algorithm are listed as mandatory ("MUST") in the "Implement for DNSSEC Validation" columns of the relevant IANA registries <xref target="DS-IANA"/> and <xref target="DNSKEY-IANA"/>.</t>
            </li>
          </ol>
          <t>TODO Should checks be done continually? (Why is that the parent's task?) Or on demand, e.g., on a no-op NOTIFY?
Even when no update was requested, it may be worthwhile to occasionally check whether the current DS contents would be accepted today (see <xref target="validity"/>), and communicate any failures without changing the published DS record set.</t>
          <t>TODO Maybe RECOMMEND periodical rechecks and allow requesting recheck in case of operational difficulties (large parent). Allow the parent to communicate interval? See draft-berra-dnsop-announce-scanner.</t>
        </section>
        <section anchor="ttls-and-caching">
          <name>TTLs and Caching</name>
          <t>To further reduce the impact of any misconfigured DS record set — be it from automated or from manual provisioning — the option to quickly roll back the delegation's DNSSEC parameters is of great importance. This is achieved by setting a comparatively low TTL on the DS record set in the parent domain, at the cost of reduced resiliency against nameserver unreachability due to the earlier expiration of cached records. The availability risk can be mitigated by limiting such TTLs to a brief time period after a change to the DS configuration, during which rollbacks are most likely to occur.</t>
          <t>Registries therefore should significantly lower the DS RRset's TTL for some time following an update. Pragmatic values for the reduced TTL value range between 5–15 minutes.  Such low TTLs might be expected to cause increased load on the corresponding authoritative nameservers; however, recent research has demonstrated them to have negligible impact on the overall load of a registry's authoritative nameserver infrastructure <xref target="LowTTL"/>.</t>
          <t>The reduction should be in effect at least until the previous DS record set has expired from caches, that is, the period during which the low-TTL is applied should exceed the normal TTL value. The routine re-signing of the DS RRset (usually after a few days) provides a convenient opportunity for resetting the TTL. When using EPP, the server MAY advertise its TTL policy via the domain <tt>&lt;info&gt;</tt> command described in <xref section="2.1.1.2" sectionFormat="comma" target="RFC9803"/>.</t>
          <t>While this approach enables quick rollbacks, timing of the desired DS update process itself is largely governed by the previous DS RRset's TTL, and therefore does not generally benefit from an overall speed-up. Note also that nothing is gained from first lowering the TTL of the old DS RRset: such an additional step would, in fact, require another wait period while resolver caches adjust. For the sake of completeless, there likewise is no point to increasing any DS TTL values beyond their normal value.</t>
        </section>
      </section>
    </section>
    <section anchor="reporting">
      <name>Reporting and Transparency</name>
      <t>This section provides recommendations to address the following question:</t>
      <ul spacing="normal">
        <li>
          <t>Should a failed (or even successful) DS update trigger a notification to anyone?</t>
        </li>
      </ul>
      <section anchor="recommendations-1">
        <name>Recommendations</name>
        <t>TODO consider practicality of email notifications, or what else to do, see https://mailarchive.ietf.org/arch/msg/dnsop/aXGm1FuEPF5TV1PsVD2zK2fMBvY/</t>
        <t>TODO "in accordance with the communication preferences established by the child zone operator"? Should there be an ability for the zone operator to establish their communication (who and how) preferences? How would that be signaled?</t>
        <ol spacing="normal" type="1"><li>
            <t>For certain DS updates (see <xref target="analysis_reporting">analysis</xref>) and for DS deactivation, relevant points of contact known to the zone operator SHOULD be notified.</t>
          </li>
          <li>
            <t>For error conditions, the domain's technical contact and the DNS operator serving the affected Child zone SHOULD be first notified. The registrant SHOULD NOT be notified unless the problem persists for a prolonged amount of time (e.g., three days).</t>
          </li>
          <li>
            <t>Notifications to humans SHOULD be done via email. Child DNS operators SHOULD be notified using a report query <xref target="RFC9567"/> to the agent domain as described in (<xref section="4" sectionFormat="comma" target="I-D.draft-ietf-dnsop-generalized-notify-09"/>). The same condition SHOULD NOT be reported unnecessarily frequently to the same recipient.</t>
          </li>
          <li>
            <t>In the RRR model, registries performing DS automation SHOULD inform the registrar of any DS record changes via the EPP Change Poll Extension <xref target="RFC8590"/> or a similar channel.</t>
          </li>
          <li>
            <t>The currently active DS configuration as well as the history of DS updates SHOULD be made accessible to the registrant (or their designated party) through the customer portal available for domain management.</t>
          </li>
        </ol>
      </section>
      <section anchor="analysis_reporting">
        <name>Analysis</name>
        <t>When accepting or rejecting a DS update, it cannot be assumed that relevant parties are aware of what's happening. For example, a registrar may not know when an automatic DS update is performed by the registry. Similarly, a Child DNS operator may not be aware when their CDS/CDNSKEY RRsets are out of sync across nameservers, thus being ignored. Early reporting of such conditions helps involved parties to act appropriately and in a timely manner.</t>
        <t>A delegation can break even without an update request to the DS record set. This may occur during key rollovers (<xref section="4.1" sectionFormat="comma" target="RFC6781"/>) when the Child DNS operator proceeds to the next step early, without verifying that the delegation's DS RRset is in the expected state. For example, when an algorithm rollover is performed and the old signing algorithm is removed from the Child zone before the new DS record is added, validation errors may result.
TODO Reduce fearmongering: find numbers, better example, or loosen up wording.</t>
        <t>Entities performing automated DS maintenance should report on conditions they encounter. The following success situations may be of particular interest:</t>
        <ol spacing="normal" type="1"><li anchor="reporting-1">
            <t>A DS RRset has been provisioned  </t>
            <ol spacing="normal" type="a"><li anchor="reporting-1a">
                <t>manually;</t>
              </li>
              <li anchor="reporting-1b">
                <t>due to commencing DS automation (either via DNSSEC bootstrapping, or for the first time after a manual change; see <xref target="multiple"/>);</t>
              </li>
              <li anchor="reporting-1c">
                <t>automatically, as an update to an existing DS RRset that had itself been automatically provisioned.</t>
              </li>
            </ol>
          </li>
          <li anchor="reporting-2">
            <t>The DS RRset has been removed  </t>
            <ol spacing="normal" type="a"><li>
                <t>manually;</t>
              </li>
              <li>
                <t>automatically, using a delete signal (<xref section="4" sectionFormat="comma" target="RFC8078"/>).</t>
              </li>
            </ol>
          </li>
        </ol>
        <t>In addition, there are error conditions worthy of being reported:</t>
        <ol spacing="normal" type="1" start="3"><li anchor="reporting-3">
            <t>A pending DS update cannot be applied due to an error condition. There are various scenarios where an automated DS update might have been requested, but can't be fulfilled. These include:  </t>
            <ol spacing="normal" type="a"><li>
                <t>The new DS record set would break validation/resolution or is not acceptable to the Parent for some other reason (see <xref target="validity"/>).</t>
              </li>
              <li>
                <t>A lock prevents DS automation (see <xref target="locks"/>).</t>
              </li>
            </ol>
          </li>
          <li anchor="reporting-4">
            <t>No DS update is due, but it was determined that the Child zone is no longer compatible with the existing DS record set (e.g., DS RRset only references non-existing keys).</t>
          </li>
        </ol>
        <t>For these reportworthy cases, the entity performing DS automation would be justified to attempt communicating the situation. Potential recipients are:</t>
        <ul spacing="normal">
          <li>
            <t>Child DNS operator, preferably by making a report query <xref target="RFC9567"/> to the agent domain listed in the EDNS0 Report-Channel option of the DS update notification that triggered the DS update (<xref section="4" sectionFormat="comma" target="I-D.draft-ietf-dnsop-generalized-notify-09"/>), or alternatively via email to the address contained in the child zone's SOA RNAME field (see Sections <xref target="RFC1035" section="3.3.13" sectionFormat="bare"/> and <xref target="RFC1035" section="8" sectionFormat="bare"/> of <xref target="RFC1035"/>);</t>
          </li>
          <li>
            <t>Registrar (if DS automation is performed by the registry);</t>
          </li>
          <li>
            <t>Registrant (domain holder; in non-technical language, such as "DNSSEC security for your domain has been enabled and will be maintained automatically") or technical contact, via email.</t>
          </li>
        </ul>
        <t>For manual updates (<xref target="reporting-1a" format="none">case 1a</xref>), commencing DS automation (<xref target="reporting-1b" format="none">case 1b</xref>), and deactivating DNSSEC (<xref target="reporting-2" format="none">case 2</xref>), it seems worthwhile to notify both the domain's technical contact and the registrant. This will typically lead to one notification during normal operation of a domain. (<xref target="reporting-1c" format="none">Case 1c</xref>, the regular operation of automation, is not an interesting condition to report to a human.)</t>
        <t>For error conditions (cases <xref target="reporting-3" format="none">3</xref> and <xref target="reporting-4" format="none">4</xref>), the registrant need not always be involved. It seems advisable to first notify the domain's technical contact and the DNS operator serving the affected Child zone, and only if the problem persists for a prolonged amount of time (e.g., three days), notify the registrant.</t>
        <t>When the RRR model is used and the registry performs DS automation, the registrar should always stay informed of any DS record changes, e.g., via the EPP Change Poll Extension <xref target="RFC8590"/>.</t>
        <t>The same condition SHOULD NOT be reported unnecessarily frequently to the same recipient (e.g., no more than twice in a row). For example, when CDS and CDNSKEY records are inconsistent and prevent DS initialization, the registrant may be notified twice. Additional notifications may be sent with some back-off mechanism (in increasing intervals).</t>
        <t>The history of DS updates SHOULD be kept and, together with the currently active configuration, be made accessible to the registrant (or their designated party) through the customer portal available for domain management.</t>
      </section>
    </section>
    <section anchor="locks">
      <name>Registration Locks</name>
      <t>This section provides recommendations to address the following question:</t>
      <ul spacing="normal">
        <li>
          <t>How does DS automation interact with other registration state parameters, such as registration locks?</t>
        </li>
      </ul>
      <section anchor="recommendations-2">
        <name>Recommendations</name>
        <ol spacing="normal" type="1"><li>
            <t>To secure ongoing operations, automated DS maintenance SHOULD NOT be suspended based on a registrar update lock alone (such as EPP status clientUpdateProhibited).</t>
          </li>
          <li>
            <t>When performed by the registry, automated DS maintenance SHOULD NOT be suspended based on a registry update lock alone (such as EPP status serverUpdateProhibited).</t>
          </li>
        </ol>
      </section>
      <section anchor="analysis_locks">
        <name>Analysis</name>
        <t>Registries and registrars can set various types of locks for domain registrations, usually upon the registrant's request. An overview of standardized locks using EPP, for example, is given in <xref section="2.3" sectionFormat="of" target="RFC5731"/>. Some registries may offer additional (or other) types of locks whose meaning and set/unset mechanisms are defined according to a proprietary policy.</t>
        <t>While some locks clearly should have no impact on DS automation (such as transfer or deletion locks), other types of locks, in particular "update locks", deserve a closer analysis.</t>
        <section anchor="registrar-vs-registry-lock">
          <name>Registrar vs. Registry Lock</name>
          <t>A registrar-side update lock (such as clientUpdateProhibited in EPP) protects against various types of accidental or malicious change (like unintended changes through the registrar's customer portal). Its security model does not prevent the registrar's (nor the registry's) actions. This is because a registrar-side lock can be removed by the registrar without an out-of-band interaction.</t>
          <t>Under such a security model, no tangible security benefit is gained by preventing automated DS maintenance based on a registrar lock alone, while preventing it would make maintenance needlessly difficult. It therefore seems reasonable not to suspend automation when such a lock is present.</t>
          <t>When a registry-side update lock is in place, the registrar cannot apply any changes (for security or delinquency or other reasons). However, it does not protect against changes made by the registry itself. This is exemplified by the serverUpdateProhibited EPP status, which demands only that the registrar's "[r]equests to update the object [...] MUST be rejected" (<xref section="2.3" sectionFormat="comma" target="RFC5731"/>). This type of lock therefore precludes DS automation by the registrar, while registry-side automation may continue.</t>
        </section>
        <section anchor="detailed-rationale">
          <name>Detailed Rationale</name>
          <t>Pre-DNSSEC, it was possible for a registration to be set up once, then locked and left alone (no maintenance required). With DNSSEC comes a change to this operational model: the configuration may have to be maintained in order to remain secure and operational. For example, the Child DNS operator may switch to another signing algorithm if the previous one is no longer deemed appropriate, or roll its SEP key for other reasons. Such changes entail updating the delegation's DS records.</t>
          <t>If authenticated, these operations do not qualify as accidental or malicious change, but as legitimate and normal activity for securing ongoing operation. The CDS/CDNSKEY method provides an automatic, authenticated means to convey DS update requests. The resulting DS update is subject to the parent's acceptance checks; in particular, it is not applied when it would break the delegation (see <xref target="validity"/>).</t>
          <t>Given that registrar locks protect against unintended changes (such as through the customer portal) while not preventing actions done by the registrar (or the registry) themself, such a lock is not suitable for defending against actions performed illegitimately by the registrar or registry (e.g., due to compromise). Any attack on the registration data that is feasible in the presence of a registrar lock is also feasible regardless of whether DS maintenance is done automatically; in other words, DS automation is orthogonal to the attack vector that a registrar lock protects against.</t>
          <t>Considering that automated DS updates are required to be authenticated and validated for correctness, it thus appears that honoring such requests, while in the registrant's interest, comes with no additional associated risk. Suspending automated DS maintenance therefore does not seem justified.</t>
          <t>Following this line of thought, some registries (e.g., .ch/.cz/.li) today perform automated DS maintenance even when an "update lock" is in place. Registries offering proprietary locks should carefully consider for each lock whether its scope warrants suspension.</t>
          <t>In case of a domain not yet secured with DNSSEC, automatic DS initialization is not required to maintain ongoing operation; however, authenticated DNSSEC bootstrapping <xref target="RFC9615"/> might be requested. Besides being in the interest of security, the fact that a Child is requesting DS initialization through an authenticated method expresses the registrant's intent to have the delegation secured.</t>
          <t>Further, some domains are equipped with an update lock by default. Not honoring DNSSEC bootstrapping requests then imposes an additional burden on the registrant, who has to unlock and relock the domain in order to facilitate DS provisioning after registration. This is a needless cost especially for large domain portfolios. It is also unexpected, as the registrant already has arranged for the necessary CDS/CDNSKEY records to be published. It therefore appears that DS initialization and rollovers should be treated the same way with respect to locks.</t>
        </section>
      </section>
    </section>
    <section anchor="multiple">
      <name>Multiple Submitting Parties</name>
      <t>This section provides recommendations to address the following questions:</t>
      <ul spacing="normal">
        <li>
          <t>How are conflicts resolved when DS parameters are accepted through multiple channels (e.g. via a conventional channel and via automation)?</t>
        </li>
        <li>
          <t>In case both the registry and the registrar are automating DS updates, how to resolve potential collisions?</t>
        </li>
      </ul>
      <section anchor="recommendations-3">
        <name>Recommendations</name>
        <ol spacing="normal" type="1"><li>
            <t>Registries and registrars SHOULD provide a another (e.g., manual) channel for DS maintenance in order to enable recovery when the Child has lost access to its signing key(s). This out-of-band channel is also needed when a DNS operator does not support DS automation or refuses to cooperate.</t>
          </li>
          <li>
            <t>DS update requests SHOULD be executed immediately after verification of their authenticity, regardless of whether they are received in-band or via an out-of-band channel.</t>
          </li>
          <li>
            <t>Only when the entire DS record set has been removed, SHOULD DS automation be suspended, in order to prevent accidental re-initialization of the DS record set when the registrant intended to disable DNSSEC.</t>
          </li>
          <li>
            <t>In all other cases where a non-empty DS record set is provisioned through whichever channel, DS automation SHOULD NOT (or no longer) be suspended (including after an earlier removal).</t>
          </li>
          <li>
            <t>In the RRR model, if the registry performs DS automation, the registry SHOULD notify the registrar of all DS updates (see also Recommendation 4 under <xref target="reporting"/>).</t>
          </li>
          <li>
            <t>In the RRR model, registries SHOULD NOT perform automated DS maintenance if it is known that the registrar does not support DNSSEC.</t>
          </li>
        </ol>
      </section>
      <section anchor="analysis_multiple">
        <name>Analysis</name>
        <t>In the RRR model, there are multiple channels through which DS parameters can be accepted:</t>
        <ul spacing="normal">
          <li>
            <t>The registry can retrieve information about an intended DS update automatically from the Child DNS Operator and apply the update directly;</t>
          </li>
          <li>
            <t>The registrar can retrieve the same and relay it to the registry;</t>
          </li>
          <li>
            <t>Registrars or (less commonly) registries can obtain the information from the registrant through another channel (such as a non-automated "manual update" via webform submission), and relay it to the registry.</t>
          </li>
        </ul>
        <t>There are several considerations in this context, as follows.</t>
        <section anchor="necessity-of-non-automatic-updates">
          <name>Necessity of Non-automatic Updates</name>
          <t>Under special circumstances, it may be necessary to perform a non-automatic DS update. One important example is when the key used by for authentication of DS updates is destroyed: in this case, an automatic key rollover is impossible as the Child DNS operator can no longer authenticate the associated information. Another example is when several providers are involved, but one no longer cooperates (e.g., when removing a provider from a multi-provider setup). Disabling manual DS management interfaces is therefore strongly discouraged.</t>
          <t>Similarly, when the registrar is known to not support DNSSEC (or to lack a DS provisioning interface), it seems adequate for registries to not perform automated DS maintenance, in order to prevent situations in which a misconfigured delegation cannot be repaired by the registrant.</t>
        </section>
        <section anchor="impact-of-non-automatic-updates-when-to-suspend-automation">
          <name>Impact of Non-automatic Updates: When to Suspend Automation</name>
          <t>When an out-of-band (e.g., manual) DS update is performed while CDS/CDNSKEY records referencing the previous DS RRset's keys are present, the delegation's DS records may be reset to their previous state at the next run of the automation process. This section discusses in which situations it is appropriate to suspend DS automation after such a non-automatic update.</t>
          <t>One option is to suspend DS automation after a manual DS update, but only until a resumption signal is observed. In the past, it was proposed that seeing an updated SOA serial in the child zone may serve as a resumption signal. However, as any arbitrary modification of zone contents — including the regular updating of DNSSEC signature validity timestamps  — typically causes a change in SOA serial, resumption of DS automation after a serial change comes with a high risk of surprise. Additional issues arise if nameservers have different serial offsets (e.g., in a multi-provider setup). It is therefore advised to not follow this practice.</t>
          <t>Note also that "automatic rollback" due to old CDS/CDNSKEY RRsets can only occur if they are signed with a key authorized by one of new DS records. Validity checks described in <xref target="validity"/> further ensure that updates do not break validation.</t>
          <t>All in all:</t>
          <ul spacing="normal">
            <li>
              <t>It appears advisable to generally not suspend in-band DS automation when an out-of-band DS update has occurred.</t>
            </li>
            <li>
              <t>An exception from this rule is when the entire DS record set was removed, in which case the registrant likely wants to disable DNSSEC for the domain. DS automation should then be suspended so that automatic re-initialization (bootstrapping) does not occur.</t>
            </li>
            <li>
              <t>In all other cases, any properly authenticated DS updates received, including through an automated method, are to be considered as the current intent of the domain holder.</t>
            </li>
          </ul>
        </section>
        <section anchor="concurrent-automatic-updates">
          <name>Concurrent Automatic Updates</name>
          <t>When the RRR model is used, there is a potential for collision if both the registry and the registrar are automating DS provisioning by scanning the child for CDS/CDNSKEY records. No disruptive consequences are expected if both parties perform DS automation. An exception is when during a key rollover, registry and registrar see different versions of the Child's DS update requests, such as when CDS/CDNSKEY records are retrieved from different vantage points. Although unlikely due to Recommendation 1a of <xref target="validity"/>, this may lead to flapping of DS updates; however, it is not expected to be harmful as either DS RRset will allow for the validation function to continue to work, as ensured by Recommendation 1b of <xref target="validity"/>. The effect subsides as the Child's state eventually becomes consistent (roughly, within the child's replication delay); any flapping until then will be a minor nuisance only.</t>
          <t>The issue disappears entirely when scanning is replaced by notifications that trigger DS maintenance through one party's designated endpoint <xref target="I-D.draft-ietf-dnsop-generalized-notify-09"/>, and can otherwise be mitigated if the registry and registrar agree that only one of them will perform scanning.</t>
          <t>As a standard aspect of key rollovers (RFC 6781), the Child DNS operator is expected to monitor propagation of Child zone updates to all authoritative nameserver instances, and only proceed to the next step once replication has succeeded everywhere and the DS record set was subsequently updated (and in no case before the DS RRset's TTL has passed). Any breakage resulting from improper timing on the Child side is outside of the Parent's sphere of influence, and thus out of scope of DS automation considerations.</t>
        </section>
      </section>
    </section>
    <section anchor="cds-vs-cdnskey">
      <name>CDS vs. CDNSKEY</name>
      <t>This section provides recommendations to address the following question:</t>
      <ul spacing="normal">
        <li>
          <t>Are parameters for DS automation best conveyed as CDNSKEY or CDS records, or both?</t>
        </li>
      </ul>
      <section anchor="recommendations-4">
        <name>Recommendations</name>
        <ol spacing="normal" type="1"><li>
            <t>DNS operators SHOULD publish both CDNSKEY records as well as CDS records, and follow best practice for the choice of hash digest type <xref target="DS-IANA"/>.</t>
          </li>
          <li>
            <t>Parents, independently of their preference for CDS or CDNSKEY, SHOULD require publication of both RRsets, and SHOULD NOT proceed with updating the DS RRset if one is found missing or inconsistent with the other.</t>
          </li>
          <li>
            <t>Registries (or registrars) scanning for CDS/CDNSKEY records SHOULD verify that any published CDS and CDNSKEY records are consistent with each other, and otherwise cancel the update <xref target="I-D.ietf-dnsop-cds-consistency"/>.</t>
          </li>
        </ol>
        <t>TODO clarify that this does not prevent parent from chosing a digest type that's not in CDS (separate recommendation?)</t>
      </section>
      <section anchor="analysis_dichotomy">
        <name>Analysis</name>
        <t>DS records can be generated from information provided either in DS format (CDS) or in DNSKEY format (CDNSKEY). While the format of CDS records is identical to that of DS records (so the record data be taken verbatim), generation of a DS record from CDNSKEY information involves computing a hash.</t>
        <t>Whether a Parent processes CDS or CDNSKEY records depends on their preference:</t>
        <ul spacing="normal">
          <li>
            <t>Conveying (and storing) CDNSKEY information allows the Parent to control the choice of hash algorithms. The Parent may then unilaterally regenerate DS records with a different choice of hash algorithm(s) whenever deemed appropriate.</t>
          </li>
          <li>
            <t>Conveying CDS information allows the Child DNS operator to control the hash digest type used in DS records, enabling the Child DNS operator to deploy (for example) experimental hash digests and removing the need for registry-side changes when new digest types become available.</t>
          </li>
        </ul>
        <t>The need to make a choice in the face of this dichotomy is not specific to DS automation: even when DNSSEC parameters are relayed to the Parent through conventional channels, the Parent has to make some choice about which format(s) to accept.</t>
        <t>Some registries have chosen to prefer DNSKEY-style input which seemingly comes with greater influence on the delegation's security properties (in particular, the DS hash digest type). It is noted that regardless of the choice of input format, the Parent cannot prevent the Child from following insecure cryptographic practices (such as insecure key storage, or using a key with insufficient entropy). Besides, as the DS format contains a field indicating the hash digest type, objectionable ones (such as those outlawed by <xref target="DS-IANA"/>) can still be rejected even when ingesting CDS records, by inspecting that field.</t>
        <t>The fact that more than one input type needs to be considered burdens both Child DNS operators and Parents with the need to consider how to handle this dichotomy. Until this is addressed in an industry-wide manner and one of these mechanisms is deprecated in favor of the other, both Child DNS operators and Parents implementing automated DS maintenance should act as to maximize interoperability:</t>
        <ul spacing="normal">
          <li>
            <t>As there exists no protocol for Child DNS Operators to discover a Parent's input format preference, it seems best to publish both CDNSKEY as well as CDS records, in line with <xref section="5" sectionFormat="comma" target="RFC7344"/>. The choice of hash digest type should follow current best practice <xref target="DS-IANA"/>.</t>
          </li>
          <li>
            <t>Parents, independently of their input format preference, are advised to require publication of both CDS and CDNSKEY records, and to enforce consistency between them, as determined by matching CDS and CDNSKEY records using hash digest algorithms whose support is mandatory <xref target="DS-IANA"/>. (Consistency of CDS records with optional or unsupported hash digest types is not required.)</t>
          </li>
        </ul>
        <t>Publishing the same information in two different formats is not ideal. Still, it is much less complex and costly than burdening the Child DNS operator with discovering each Parent's policy; also, it is very easily automated. Operators should ensure that published RRsets are consistent with each other.</t>
        <t>By rejecting the DS update if either RRset is found missing or inconsistent with the other, Child DNS operators are held responsible when publishing contradictory information. At the same time, Parents can retain whatever benefit their policy choice carries for them, while facilitating a later revision of that choice. This approach also simplifies possible future deprecation of one of the two formats, as no coordination or implementation changes would be needed on the child side.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document considers security aspects throughout, and has not separate considerations.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the SSAC members who wrote the <xref target="SAC126"/> report on which this document is based.</t>
      <t>In order of first contribution or review: Barbara Jantzen, Matt Pounsett, Matthijs Mekking, Ondřej Caletka, Oli Schacher, Kim Davies</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="DNSKEY-IANA" target="https://www.iana.org/assignments/dns-sec-alg-numbers/dns-sec-alg-numbers.xml#dns-sec-alg-numbers-1">
          <front>
            <title>DNS Security Algorithm Numbers</title>
            <author initials="" surname="IANA" fullname="IANA">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DS-IANA" target="http://www.iana.org/assignments/ds-rr-types">
          <front>
            <title>Delegation Signer (DS) Resource Record (RR) Type Digest Algorithms</title>
            <author initials="" surname="IANA" fullname="IANA">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC7344">
          <front>
            <title>Automating DNSSEC Delegation Trust Maintenance</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="O. Gudmundsson" initials="O." surname="Gudmundsson"/>
            <author fullname="G. Barwood" initials="G." surname="Barwood"/>
            <date month="September" year="2014"/>
            <abstract>
              <t>This document describes a method to allow DNS Operators to more easily update DNSSEC Key Signing Keys using the DNS as a communication channel. The technique described is aimed at delegations in which it is currently hard to move information from the Child to Parent.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7344"/>
          <seriesInfo name="DOI" value="10.17487/RFC7344"/>
        </reference>
        <reference anchor="RFC8078">
          <front>
            <title>Managing DS Records from the Parent via CDS/CDNSKEY</title>
            <author fullname="O. Gudmundsson" initials="O." surname="Gudmundsson"/>
            <author fullname="P. Wouters" initials="P." surname="Wouters"/>
            <date month="March" year="2017"/>
            <abstract>
              <t>RFC 7344 specifies how DNS trust can be maintained across key rollovers in-band between parent and child. This document elevates RFC 7344 from Informational to Standards Track. It also adds a method for initial trust setup and removal of a secure entry point.</t>
              <t>Changing a domain's DNSSEC status can be a complicated matter involving multiple unrelated parties. Some of these parties, such as the DNS operator, might not even be known by all the organizations involved. The inability to disable DNSSEC via in-band signaling is seen as a problem or liability that prevents some DNSSEC adoption at a large scale. This document adds a method for in-band signaling of these DNSSEC status changes.</t>
              <t>This document describes reasonable policies to ease deployment of the initial acceptance of new secure entry points (DS records).</t>
              <t>It is preferable that operators collaborate on the transfer or move of a domain. The best method is to perform a Key Signing Key (KSK) plus Zone Signing Key (ZSK) rollover. If that is not possible, the method using an unsigned intermediate state described in this document can be used to move the domain between two parties. This leaves the domain temporarily unsigned and vulnerable to DNS spoofing, but that is preferred over the alternative of validation failures due to a mismatched DS and DNSKEY record.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8078"/>
          <seriesInfo name="DOI" value="10.17487/RFC8078"/>
        </reference>
        <reference anchor="RFC9615">
          <front>
            <title>Automatic DNSSEC Bootstrapping Using Authenticated Signals from the Zone's Operator</title>
            <author fullname="P. Thomassen" initials="P." surname="Thomassen"/>
            <author fullname="N. Wisiol" initials="N." surname="Wisiol"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>This document introduces an in-band method for DNS operators to publish arbitrary information about the zones for which they are authoritative, in an authenticated fashion and on a per-zone basis. The mechanism allows managed DNS operators to securely announce DNSSEC key parameters for zones under their management, including for zones that are not currently securely delegated.</t>
              <t>Whenever DS records are absent for a zone's delegation, this signal enables the parent's registry or registrar to cryptographically validate the CDS/CDNSKEY records found at the child's apex. The parent can then provision DS records for the delegation without resorting to out-of-band validation or weaker types of cross-checks such as "Accept after Delay".</t>
              <t>This document establishes the DS enrollment method described in Section 4 of this document as the preferred method over those from Section 3 of RFC 8078. It also updates RFC 7344.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9615"/>
          <seriesInfo name="DOI" value="10.17487/RFC9615"/>
        </reference>
        <reference anchor="RFC9364">
          <front>
            <title>DNS Security Extensions (DNSSEC)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="February" year="2023"/>
            <abstract>
              <t>This document describes the DNS Security Extensions (commonly called "DNSSEC") that are specified in RFCs 4033, 4034, and 4035, as well as a handful of others. One purpose is to introduce all of the RFCs in one place so that the reader can understand the many aspects of DNSSEC. This document does not update any of those RFCs. A second purpose is to state that using DNSSEC for origin authentication of DNS data is the best current practice. A third purpose is to provide a single reference for other documents that want to refer to DNSSEC.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="237"/>
          <seriesInfo name="RFC" value="9364"/>
          <seriesInfo name="DOI" value="10.17487/RFC9364"/>
        </reference>
        <reference anchor="I-D.draft-ietf-dnsop-generalized-notify-09">
          <front>
            <title>Generalized DNS Notifications</title>
            <author fullname="Johan Stenstam" initials="J." surname="Stenstam">
              <organization>The Swedish Internet Foundation</organization>
            </author>
            <author fullname="Peter Thomassen" initials="P." surname="Thomassen">
              <organization>deSEC, Secure Systems Engineering</organization>
            </author>
            <author fullname="John R. Levine" initials="J. R." surname="Levine">
              <organization>Standcore LLC</organization>
            </author>
            <date day="19" month="March" year="2025"/>
            <abstract>
              <t>   This document generalizes and extends the use of DNS NOTIFY (RFC
   1996) beyond conventional zone transfer hints, to allow triggering
   other types of actions via the DNS that were previously lacking a
   trigger mechanism.  Notifications merely nudge the receiver to
   initiate a predefined action promptly (instead of on a schedule);
   they do not alter the action itself (including any security checks it
   might employ).

   To enable this functionality, a method for discovering the receiver
   endpoint for such notification messages is introduced, via the new
   DSYNC record type.  Notification types are recorded in a new
   registry, with initial support for parental NS and DS record updates
   including DNSSEC bootstrapping.

   TO BE REMOVED: This document is being collaborated on in Github at:
   https://github.com/peterthomassen/draft-ietf-dnsop-generalized-notify
   (https://github.com/peterthomassen/draft-ietf-dnsop-generalized-
   notify).  The most recent working version of the document, open
   issues, etc. should all be available there.  The authors (gratefully)
   accept pull requests.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-generalized-notify-09"/>
        </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="I-D.ietf-dnsop-cds-consistency">
          <front>
            <title>Clarifications on CDS/CDNSKEY and CSYNC Consistency</title>
            <author fullname="Peter Thomassen" initials="P." surname="Thomassen">
              <organization>SSE - Secure Systems Engineering GmbH</organization>
            </author>
            <date day="1" month="August" year="2025"/>
            <abstract>
              <t>   Maintenance of DNS delegations requires occasional changes of the DS
   and NS record sets on the parent side of the delegation.  For the
   case of DS records, RFC 7344 provides automation by allowing the
   child to publish CDS and/or CDNSKEY records holding the prospective
   DS parameters which the parent can ingest.  Similarly, RFC 7477
   specifies CSYNC records to indicate a desired update of the
   delegation's NS (and glue) records.  Parent-side entities (e.g.
   Registries, Registrars) can query these records from the child and,
   after validation, use them to update the parent-side RRsets of the
   delegation.

   This document specifies that when performing such queries, parent-
   side entities MUST ensure that updates triggered via CDS/CDNSKEY and
   CSYNC records are consistent across the child's authoritative
   nameservers, before taking any action based on these records.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-cds-consistency-08"/>
        </reference>
        <reference anchor="RFC9567">
          <front>
            <title>DNS Error Reporting</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <date month="April" year="2024"/>
            <abstract>
              <t>DNS error reporting is a lightweight reporting mechanism that provides the operator of an authoritative server with reports on DNS resource records that fail to resolve or validate. A domain owner or DNS hosting organization can use these reports to improve domain hosting. The reports are based on extended DNS errors as described in RFC 8914.</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 resolver to automatically signal an error to a monitoring agent specified by the authoritative server. The error is encoded in the QNAME; thus, the very act of sending the query is to report the error.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9567"/>
          <seriesInfo name="DOI" value="10.17487/RFC9567"/>
        </reference>
        <reference anchor="RFC8590">
          <front>
            <title>Change Poll Extension for the Extensible Provisioning Protocol (EPP)</title>
            <author fullname="J. Gould" initials="J." surname="Gould"/>
            <author fullname="K. Feher" initials="K." surname="Feher"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This document describes an Extensible Provisioning Protocol (EPP) extension for notifying clients of operations on client-sponsored objects that were not initiated by the client through EPP. These operations may include contractual or policy requirements including, but not limited to, regular batch processes, customer support actions, Uniform Domain-Name Dispute-Resolution Policy (UDRP) or Uniform Rapid Suspension (URS) actions, court-directed actions, and bulk updates based on customer requests. Since the client is not directly involved or knowledgable of these operations, the extension is used along with an EPP object mapping to provide the resulting state of the postoperation object, and optionally a preoperation object, with the operation metadata of what, when, who, and why.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8590"/>
          <seriesInfo name="DOI" value="10.17487/RFC8590"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="LowTTL" target="https://indico.dns-oarc.net/event/47/contributions/1010/attachments/958/1811/DS%20and%20DNSKEY%20TTL%20experiment.pdf">
          <front>
            <title>DS and DNSKEY low TTL experiments</title>
            <author initials="P." surname="Špaček" fullname="Petr Špaček">
              <organization>ISC</organization>
            </author>
            <date year="2023" month="September" day="06"/>
          </front>
          <seriesInfo name="at" value="DNS OARC 41"/>
        </reference>
        <reference anchor="SAC126" target="https://itp.cdn.icann.org/en/files/security-and-stability-advisory-committee-ssac-reports/sac-126-16-08-2024-en.pdf">
          <front>
            <title>SAC126: DNSSEC Delegation Signer (DS) Record Automation</title>
            <author initials="I. S. and S. A. C." surname="(SSAC)" fullname="ICANN Security and Stability Advisory Committee (SSAC)">
              <organization/>
            </author>
            <date year="2024" month="August" day="12"/>
          </front>
        </reference>
        <reference anchor="RFC6840">
          <front>
            <title>Clarifications and Implementation Notes for DNS Security (DNSSEC)</title>
            <author fullname="S. Weiler" initials="S." role="editor" surname="Weiler"/>
            <author fullname="D. Blacka" initials="D." role="editor" surname="Blacka"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document is a collection of technical clarifications to the DNS Security (DNSSEC) document set. It is meant to serve as a resource to implementors as well as a collection of DNSSEC errata that existed at the time of writing.</t>
              <t>This document updates the core DNSSEC documents (RFC 4033, RFC 4034, and RFC 4035) as well as the NSEC3 specification (RFC 5155). It also defines NSEC3 and SHA-2 (RFC 4509 and RFC 5702) as core parts of the DNSSEC specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6840"/>
          <seriesInfo name="DOI" value="10.17487/RFC6840"/>
        </reference>
        <reference anchor="RFC9803">
          <front>
            <title>Extensible Provisioning Protocol (EPP) Mapping for DNS Time-to-Live (TTL) Values</title>
            <author fullname="G. Brown" initials="G." surname="Brown"/>
            <date month="June" year="2025"/>
            <abstract>
              <t>This document describes an extension to the Extensible Provisioning
Protocol (EPP) that allows EPP clients to manage the Time-to-Live
(TTL) value for domain name delegation records.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9803"/>
          <seriesInfo name="DOI" value="10.17487/RFC9803"/>
        </reference>
        <reference anchor="RFC6781">
          <front>
            <title>DNSSEC Operational Practices, Version 2</title>
            <author fullname="O. Kolkman" initials="O." surname="Kolkman"/>
            <author fullname="W. Mekking" initials="W." surname="Mekking"/>
            <author fullname="R. Gieben" initials="R." surname="Gieben"/>
            <date month="December" year="2012"/>
            <abstract>
              <t>This document describes a set of practices for operating the DNS with security extensions (DNSSEC). The target audience is zone administrators deploying DNSSEC.</t>
              <t>The document discusses operational aspects of using keys and signatures in the DNS. It discusses issues of key generation, key storage, signature generation, key rollover, and related policies.</t>
              <t>This document obsoletes RFC 4641, as it covers more operational ground and gives more up-to-date requirements with respect to key sizes and the DNSSEC operations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6781"/>
          <seriesInfo name="DOI" value="10.17487/RFC6781"/>
        </reference>
        <reference anchor="RFC5731">
          <front>
            <title>Extensible Provisioning Protocol (EPP) Domain Name Mapping</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes an Extensible Provisioning Protocol (EPP) mapping for the provisioning and management of Internet domain names stored in a shared central repository. Specified in XML, the mapping defines EPP command syntax and semantics as applied to domain names. This document obsoletes RFC 4931. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="69"/>
          <seriesInfo name="RFC" value="5731"/>
          <seriesInfo name="DOI" value="10.17487/RFC5731"/>
        </reference>
        <reference anchor="RFC5730">
          <front>
            <title>Extensible Provisioning Protocol (EPP)</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes an application-layer client-server protocol for the provisioning and management of objects stored in a shared central repository. Specified in XML, the protocol defines generic object management operations and an extensible framework that maps protocol operations to objects. This document includes a protocol specification, an object mapping template, and an XML media type registration. This document obsoletes RFC 4930. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="69"/>
          <seriesInfo name="RFC" value="5730"/>
          <seriesInfo name="DOI" value="10.17487/RFC5730"/>
        </reference>
      </references>
    </references>
    <?line 383?>

<section anchor="terminology">
      <name>Terminology</name>
      <t>Unless defined in this section, the terminology in this document is as defined in <xref target="RFC7344"/>.</t>
      <dl>
        <dt>Child zone:</dt>
        <dd>
          <t>DNS zone whose delegation is in the Parent zone.</t>
        </dd>
        <dt>Child (DNS operator):</dt>
        <dd>
          <t>DNS operator responsible for a Child zone.</t>
        </dd>
        <dt>DNS operator:</dt>
        <dd>
          <t>The entity holding the zone's primary copy before it is signed. Typically a DNS hosting provider in the domain holder's name, it controls the authoritative contents and delegations in the zone, and is thus operationally responsible for maintaining the "purposeful" records in the zone file (such as IP address, MX, or CDS/CDNSKEY records).
The parties involved in other functions for the zone, like signing and serving, are not relevant for this definition.</t>
        </dd>
        <dt>Parent zone:</dt>
        <dd>
          <t>DNS zone that holds a delegation for a Child zone.</t>
        </dd>
        <dt>Parent (DNS operator):</dt>
        <dd>
          <t>The DNS operator responsible for a Parent zone, and thus involved with the maintenance of the delegation's DNSSEC parameters (in particular, the acceptance of these parameters and the publication of corresponding DS records).</t>
        </dd>
        <dt>Registrant:</dt>
        <dd>
          <t>The entity responsible for records associated with a particular domain name in a domain name registry (typically under a TLD such as .com or an SLD such as co.uk). When the RRR model is used, the registrant maintains these records through a registrar who acts as an intermediary for both the registry and the registrant.</t>
        </dd>
        <dt>Registrar:</dt>
        <dd>
          <t>An entity through which registrants register domain names; the registrar performs this service by interacting directly with the registry in charge of the domain's suffix. A registrar may also provide other services such as DNS service or web hosting for the registrant. In some cases, the registry directly offers registration services to the public, that is, the registry may also perform the registrar function.</t>
        </dd>
        <dt>Registry:</dt>
        <dd>
          <t>The entity that controls the registry database and authoritative DNS service of domain names registered under a particular suffix, for example a top-level domain (TLD). A registry receives requests through an interface (usually EPP <xref target="RFC5730"/>) from registrars to read, add, delete, or modify domain name registrations, and then makes the requested changes in the registry database and associated DNS zone.</t>
        </dd>
        <dt>RRR Model:</dt>
        <dd>
          <t>The registrant-registrar-registry interaction framework, where registrants interact with a registrar to register and manage domain names, and registrars interact with the domain's registry for the provision and management of domain names on the registrant's behalf. This model is common amongst top-level domains.</t>
        </dd>
      </dl>
    </section>
    <section anchor="recommendations-overview">
      <name>Recommendations Overview</name>
      <t>TODO Paste all recommendations here</t>
    </section>
    <section anchor="approaches-not-pursued">
      <name>Approaches not pursued</name>
      <section anchor="validity-checks-and-safety-measures">
        <name>Validity Checks and Safety Measures</name>
        <section anchor="ttls-and-caching-1">
          <name>TTLs and Caching</name>
          <t>It is not necessary to equally reduce the old DS RRset's TTL before applying a change. If this were done, the rollover itself would have to be delayed without any apparent benefit. With the goal of enabling timely withdrawal of a botched DS RRset, it is not equally important for the previous (functional) DS RRset to be abandoned very quickly. In fact, not reducing the old DS TTL has the advantage of providing some resiliency against a botched DS update, as clients would continue to use the previous DS RRset according to its normal TTL, and the broken RRset could be withdrawn without some of them ever seeing it. Wrong DS RRsets will then only gradually impact clients, minimizing impact overall.</t>
        </section>
      </section>
    </section>
    <section anchor="change-history-to-be-removed-before-publication">
      <name>Change History (to be removed before publication)</name>
      <ul spacing="normal">
        <li>
          <t>draft-ietf-dnsop-ds-automation-00</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Rename after adoption</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-shetho-dnsop-ds-automation-02</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Allow DS automation during registry update lock</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-shetho-dnsop-ds-automation-01</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Incorporated various review feedback (editorial + adding TODOs)</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-shetho-dnsop-ds-automation-00</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Initial public draft.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA8V923LbSJrmPZ8CK8dGkbskdbBdB9V0e1SSq9vTZVsruaqm
o7tjBwSSJEogwEYColkKRcwL7NXMzd7Ns2zsvMg8yf7HPICk7Zqpie2OcEkU
AWT++R++/4jJZDJoi7Y058nbtWnStqirtExuTFavVqbK6QObzOsmubpNLrq2
XtFHg3Q2a8z9ee/TvM6qdAU3y5t03k4K084neWXr9SS3k9R9b3JyMoBbw/ce
ri7evXwc2LYx6eo8efXy3beDDP6yqJvteVJU83owKNbNedI2nW3PTk6+Ojkb
pPBl+G7VmqYy7WBTN3eLpu7WsJo3t2+vkx/hg6JaJL/DDwd3ZgvfyP0Fkytc
3GAAq386WBfnyZ/aOhsntm5gFXMLP21X+MNfBgNY8rJuzgfJZJDA/4rKnie3
0+R2aaoFfcK7vW3NvQk+Nau0KM8Tix9PLX78twv8aApUje51PU3eLYEo1poq
uN+1gZX2/lI3CyCruX15GT5ijd/829xYk00LoFVVN0jiewNrRmr84eUfJ68u
3lyc00Vt2ixMe54cLdt2bc+PjzebzbRIq3QKdz+GZxWLCk69tcdwaBO45yQt
F5OqW81Ms/ez6ftV+WTP55PTI34gsxYsJLk1WdcU7Ta5KOFwi3a5St7wl+mb
jtKJJwMuHLdxe2gLH9yBnTTNpN2ujY3XYkqzIC5MbuHLQOfh1e0ION7WXZMZ
Yv0mT4Y3N6PkHVydXBULY1u/7I+sd4BMGxzCd/Xm3bvv4sUr+YsqL7J6igSs
0yabAnMeA8tU7fGzL46zumqbYtaRBB6fnpyeHKdtm2ZL3t9Xz788Pv3y9PT4
6va/np2kVQ7/8oHDD/BE+Ne8B5Eu8OvTdT4PiXAEYguXCIckZb1J4JLEXyA0
i3c5kf8GbNok//ov6/T//i9z5/5GjPrqltmUpfzs5Ozp5OSrycnn9KGFhxiL
dNI7py0zyduLm8vk2Sl8entxeXr2+QGytetpllfTIkurig7eVMfzojT22AqX
TWB3E9ums6Kk3/L7AuR7O0G1VrStMRNr02zSmDVIPVwGP8PjJqefT06+nMBy
n01MtUM0WROuFMTwMCcRA3mt+CmkfHV58eaNlxE8m1tdfXIhq08udfXJ8BYW
M4pJ/AzXfno2GAwmk0mSzkCpphnouZdVOitRH9pujdslba7KOEvSLDPrNq2A
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
Q4WqfNV08P8Am/1J1NeMAAA=

-->

</rfc>
