<?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.34 (Ruby 3.4.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-deleg-08" category="std" consensus="true" submissionType="IETF" updates="1034, 1035, 4035, 6672, 6840" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="DELEG">Extensible Delegation for DNS</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-deleg-08"/>
    <author initials="P." surname="Špaček" fullname="Petr Špaček">
      <organization>ISC</organization>
      <address>
        <email>pspacek@isc.org</email>
      </address>
    </author>
    <author initials="R." surname="Weber" fullname="Ralf Weber">
      <organization>Akamai Technologies</organization>
      <address>
        <email>rweber@akamai.com</email>
      </address>
    </author>
    <author initials="D." surname="Lawrence" fullname="David C Lawrence">
      <organization>Salesforce</organization>
      <address>
        <email>tale@dd.org</email>
      </address>
    </author>
    <date year="2026" month="March" day="16"/>
    <area>Internet</area>
    <workgroup>deleg</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>DNS</keyword>
    <keyword>delegation</keyword>
    <abstract>
      <?line 46?>
<t>This document proposes a new extensible method for the delegation of authority for a domain in the Domain Name System (DNS) using DELEG and DELEGPARAM records.</t>
      <t>A delegation in the DNS enables efficient and distributed management of the DNS namespace.
The traditional DNS delegation is based on NS records which contain only hostnames of servers and no other parameters.
The new delegation records are extensible, can be secured with DNSSEC, and eliminate the problem of having two sources of truth for delegation information.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://github.com/ietf-wg-deleg/draft-ietf-deleg-base/tree/gh-pages"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-deleg/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        deleg Working Group mailing list (<eref target="mailto:dd@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dd/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/dd/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-deleg/draft-ietf-deleg-base/"/>.</t>
    </note>
  </front>
  <middle>
    <?line 53?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the Domain Name System, responsibility for each subdomain within the domain name hierarchy can be delegated to different servers, which makes them authoritative for their portion of the namespace.</t>
      <t>The original DNS record that does this, called an NS record, contains only the hostname of a single name server and no other parameters.
The resolver needs to resolve these names into usable addresses and infer other required parameters, such as the transport protocol and any other protocol features.
Moreover, the NS record set exists in two places--one at the delegation point in the parent zone, and the other at the apex of the child zone, which might not match the parent.
The DNS Security Extensions (DNSSEC) protect only one copy, those in the child zone.</t>
      <t>These properties of NS records limit resolvers to unencrypted messages on UDP and TCP port 53, and this initial contact cannot be protected with DNSSEC.
These limitations are a barrier for the efficient introduction of new DNS technology.</t>
      <t>The proposed DELEG and DELEGPARAM resource record (RR) types remedy this problem by providing extensible parameters to indicate authoritative name server capabilities and additional information, such as other transport protocols that a resolver may use.</t>
      <t>The DELEG record creates a new delegation.
It is authoritative in the parent side of delegation and thus can be signed with DNSSEC.
This makes it possible to validate all delegation parameters, including those of future extensions.</t>
      <t>The DELEGPARAM record is an auxiliary record which does not create a delegation provides an optional layer of indirection.
It can be used to share the same delegation information across any number of zones, simplifying operations management by reducing the number of situations for which the delegation information for a domain would need to be changed in the parent zone.
For example, if the customers of a DNS operator point their delegations to a DELEGPARAM record managed by the DNS operator, then the operator can make changes without requiring the customers to have to update delegation data in the parent zone.</t>
      <t>The DELEG record can be used alongside, or even instead of, an NS record to create a delegation.
The combination of DELEG+NS is fully compatible with old resolvers, facilitating the incremental rollout of this new method.</t>
      <t>Future documents can use the extensibility mechanism for more advanced features, like connecting to a name server with an encrypted transport.</t>
      <section anchor="terminology">
        <name>Terminology</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 <br/>
BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in
all capitals, as shown here.</t>
        <t>Terminology regarding the Domain Name System comes from <xref target="BCP219"/>, with additional terms defined here:</t>
        <ul spacing="normal">
          <li>
            <t>legacy delegation: A delegation that is done with an NS RRset</t>
          </li>
          <li>
            <t>DELEG-aware: A DNS software that follows the protocol defined in this document</t>
          </li>
          <li>
            <t>DELEG-unaware: A DNS software that does not follow the protocol defined in this document</t>
          </li>
          <li>
            <t>non-DELEG specifications: DNS protocols that predate this protocol, or are written after this protocol is published but are not related to this protocol</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="protocol-overview">
      <name>Protocol Overview</name>
      <t>This section is a brief overview of the protocol.
It is meant for people who want to understand the protocol before they dive deeper into the specifics.</t>
      <t>When a DELEG-aware resolver sends queries, it sets the DE bit in the EDNS0 header to 1 in queries to authoritative servers, as a signal that it is DELEG-aware (<xref target="de-bit"/>).</t>
      <t>DELEG-unaware authoritative servers intrinsically ignore this signal.</t>
      <t>A DELEG-aware authoritative server uses that signal to determine the type of response it will send.
If the response is not a referral, the authoritative server doesn't change anything about how it responds (<xref target="ns-no-deleg"/>).
If the response is a referral, the authoritative server checks if there is a DELEG RRset for the queried zone. If so, it returns the DELEG RRset instead of any NS RRset in the response (<xref target="aware-referral"/>).</t>
      <t>Records in the DELEG RRset for a zone describe how to find name servers for that zone (<xref target="deleg-delegparam"/>).
The RDATA for DELEG records has key=value pairs (<xref target="nameserver-info"/>).</t>
      <ul spacing="normal">
        <li>
          <t>"server-ipv4" and "server-ipv6" keys have IP addresses for the delegated name servers</t>
        </li>
        <li>
          <t>"server-name" keys have hostnames for the delegated name servers; the addresses must be fetched separately</t>
        </li>
        <li>
          <t>"include-delegparam" keys have domain names which in turn have more information about the delegation</t>
        </li>
        <li>
          <t>"mandatory" keys have a list of other keys which the resolver must understand in order to use the specific record in which "mandatory" appears</t>
        </li>
      </ul>
      <t>The DELEG-aware resolver uses the information in the DELEG RRset to form the list of best servers to ask about the original zone (<xref target="finding-best"/>).
If the DELEG RRset contains "include-delegparam", the resolver queries those hostnames for DELEGPARAM RRsets.
DELEGPARAM records have the same format as DELEG records; thus, they can have the same key=value pairs.</t>
      <t>The DELEG protocol changes how zones are signed (<xref target="signers"/>) and validated (<xref target="dnssec-validators"/>).
The changes are primarily because DELEG RRsets are authoritative on the parent side of a zone cut and thus are signed and validated as authoritative data, similar to DS records.</t>
      <t>A zone might be delegated with only DELEG records but no NS records.
Such a zone would be invisible to DELEG-unaware resolvers.</t>
      <t>There are many parts of the DELEG protocol that are not included in this brief overview.
For example, DELEG-aware authoritative servers have choices to make depending both on the request and the contents of the zone file.
For those readers who learn better from examples than the definitive text, see <xref target="examples"/>.</t>
    </section>
    <section anchor="deleg-delegparam">
      <name>DELEG and DELEGPARAM Resource Record Types</name>
      <t>The DELEG record, RR type TBD, and the DELEGPARAM record, RR type TBD2 (different from that of DELEG), have the same wire and presentation formats,
but their semantics are different as described in a following section.
These records are defined for the IN class.</t>
      <t>The record format is based on the extensible key=value list that was originally defined as "SvcParams" for the SVCB record type <xref target="RFC9460"/>.
Unlike SVCB, the DELEG protocol does not have "SvcPriority" and "TargetName" fields.
The keys in the DELEG protocol are also different than those used in SVCB.
To avoid confusion between the two protocols, the list of key=value parameters used by the DELEG protocol are called DelegInfos and are tracked in their own IANA registry for Delegation Information.</t>
      <t>The following rules are adapted from SVCB, but with changed names:</t>
      <ul spacing="normal">
        <li>
          <t>The whole RDATA consists of a single list called "DelegInfos".</t>
        </li>
        <li>
          <t>DelegInfos consists of individual DelegInfo key=value pairs.</t>
        </li>
        <li>
          <t>Each DelegInfo pair has a DelegInfoKey and a possibly optional DelegInfoValue.</t>
        </li>
        <li>
          <t>Each DelegInfo has a specified presentation format and wire encoding.</t>
        </li>
        <li>
          <t>Each DelegInfoKey has a presentation name and a registered key number.</t>
        </li>
        <li>
          <t>Each DelegInfoValue is in a format specific to its DelegInfoKey.</t>
        </li>
      </ul>
      <t>Implementations can reuse the same code to parse SvcParams and DelegInfos and only plug in a different list of key=value pairs for the SVCB/HTTPS and DELEG/DELEGPARAM record families.</t>
      <t>The initial set of DelegInfoKeys and their formats are defined in <xref target="nameserver-info"/>.</t>
      <section anchor="presentation-format">
        <name>Presentation Format</name>
        <t>The RDATA presentation format of the DELEG and DELEGPARAM resource records consists of a single list, DelegInfos.</t>
        <t>The DelegInfos presentation format is defined exactly the same as SvcParams in Section 2.1 of <xref target="RFC9460"/>. The following rules are adapted from SVCB, but with changed names:</t>
        <ul spacing="normal">
          <li>
            <t>DelegInfos is a whitespace-separated list with each DelegInfo consisting of a DelegInfoKey=DelegInfoValue pair, or a standalone DelegInfoKey.</t>
          </li>
          <li>
            <t>Individual element definitions are the same as <xref target="RFC9460"/>:
            </t>
            <ul spacing="normal">
              <li>
                <t>The DelegInfo syntax is the same as SvcParam, but it references DelegInfo elements instead of SvcParam elements.</t>
              </li>
              <li>
                <t>The DelegInfoKey syntax is the same as SvcParamKey.</t>
              </li>
              <li>
                <t>The syntax for unknown keys in Section 2.1 of <xref target="RFC9460"/> applies.</t>
              </li>
              <li>
                <t>The DelegInfoValue syntax is the same as SvcParamValue.</t>
              </li>
              <li>
                <t>The rules from Appendix A of <xref target="RFC9460"/> apply.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>All the requirements in Section 2.1 of <xref target="RFC9460"/> apply.</t>
          </li>
        </ul>
        <t>DelegInfos MAY be zero-length; this is similar to what is allowed in SVCB records.</t>
      </section>
      <section anchor="rdata-wire-format">
        <name>RDATA Wire Format</name>
        <t>The RDATA portion of the DELEG and DELEGPARAM resource record is variable length and entirely consists of a single "DelegInfos" element:</t>
        <artwork><![CDATA[
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/                         DelegInfos                            /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The format of the DelegInfos element is identical to the format of the SvcParams element defined in <xref target="RFC9460"/> Section 2.2,
including the requirements for strictly increasing numeric order to keys and no key duplication allowed.</t>
        <t>All the requirements in Section 2.2 of <xref target="RFC9460"/> apply.</t>
        <t>The DelegInfos element is a sequence of individual DelegInfo elements and MAY be empty.
The wire format of an individual DelegInfo element is the same as for a SvcParam element,
but it references DelegInfo elements instead of SvcParam elements.</t>
        <artwork><![CDATA[
                +0 (MSB)                            +1 (LSB)
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0:  |                          DelegInfoKey                         |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2:  |                length of DelegInfoValue                       |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4:  /                          DelegInfoValue ...                   /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The permissible lengths depend on the DelegInfoKey value.
Some future keys may have no DelegInfoValue, which would be indicated with an explicit 0 length.</t>
      </section>
      <section anchor="semantics">
        <name>Semantics</name>
        <t>The following is a brief summary of semantic differences between the DELEG and DELEGPARAM types.</t>
        <ul spacing="normal">
          <li>
            <t>DELEG creates a delegation for its owner name, similar to the NS RR type.</t>
          </li>
          <li>
            <t>DELEG and NS RR types can coexist at the same owner name.</t>
          </li>
          <li>
            <t>DELEG is authoritative in the parent zone of the delegated zone, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG is signed by the parent zone of the delegated zone when using DNSSEC, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG cannot be present at the apex of the delegated zone, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG has special processing for being included in answers.</t>
          </li>
        </ul>
        <t>Conversely,</t>
        <ul spacing="normal">
          <li>
            <t>DELEGPARAM is an ordinary RR and doesn't require any special processing.</t>
          </li>
          <li>
            <t>DELEGPARAM does not create a delegation for its owner name.</t>
          </li>
          <li>
            <t>DELEGPARAM cannot exist at the parent side of a zone cut.</t>
          </li>
          <li>
            <t>DELEGPARAM DNSSEC-signing and record-placement rules are the same as for any ordinary RR type.</t>
          </li>
          <li>
            <t>DELEGPARAM is used as the target of the DELEG protocol's "include-delegparam" mechanism, as described in section <xref target="slist"/>.</t>
          </li>
        </ul>
        <t>Note that neither DELEG nor DELEGPARAM trigger Additional Section processing like NS does.
The significance of this difference is addressed more in the next section.</t>
      </section>
      <section anchor="nameserver-info">
        <name>Name Server Information for Delegation</name>
        <t>The DELEG and DELEGPARAM records have four keys that describe information about name servers.
The purpose of this information is to populate the SLIST (see <xref target="slist"/>) with IP addresses of the name servers for a zone.</t>
        <t>The types of information defined in this document are:</t>
        <ul spacing="normal">
          <li>
            <t>server-ipv4: an unordered collection of IPv4 addresses for name servers</t>
          </li>
          <li>
            <t>server-ipv6: an unordered collection of IPv6 addresses for name servers</t>
          </li>
          <li>
            <t>server-name: an unordered collection of hostnames of name servers; the addresses must be fetched separately</t>
          </li>
          <li>
            <t>include-delegparam: an unordered collection of domain names that point to DELEGPARAM RRsets, which in turn have more information about the delegation</t>
          </li>
        </ul>
        <t>These keys MUST have a non-empty DelegInfoValue.</t>
        <t>The presentation values for server-ipv4 and server-ipv6 are comma-separated lists of one or more IP addresses of the appropriate family in standard textual format <xref target="RFC5952"/> <xref target="RFC4001"/>.
The wire formats for server-ipv4 and server-ipv6 are a sequence of IP addresses, in network byte order, for the respective address family.</t>
        <t>The presentation values for server-name and include-delegparam are an unordered collection of fully-qualified domain names and relative domain names, separated by commas.
Relative names in the presentation format are interpreted according to the origin rules in Section 5.1 of <xref target="RFC1035"/>.
Parsing the comma-separated list is specified in Section A.1 of <xref target="RFC9460"/>.</t>
        <t>The DELEG protocol allows the use of all valid domain names, as defined in <xref target="RFC1035"/> and Section 11 of <xref target="RFC2181"/>.
The presentation format for names with special characters requires both double-escaping by applying rules of Section 5.1 of <xref target="RFC1034"/> together with the escaping rules from Section A.1 of <xref target="RFC9460"/>.</t>
        <t>TODO: add an example that requires this escaping.</t>
        <t>The wire format for server-name and include-delegparam are each a concatenated unordered collection of wire-format domain names, where the root label provides the separation between names:</t>
        <artwork><![CDATA[
+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| name | name | name | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-
]]></artwork>
        <t>The names in the wire format MUST NOT be compressed, per <xref target="RFC3597"/>.</t>
        <t>For interoperability with the resolver algorithm defined in section <xref target="slist"/>,
a DELEG or DELEGPARAM record that has a non-empty DelegInfos MUST have one, and only one, set of server information keys, chosen from the following:</t>
        <ul spacing="normal">
          <li>
            <t>one server-ipv4 key</t>
          </li>
          <li>
            <t>one server-ipv6 key</t>
          </li>
          <li>
            <t>a pair consisting of one server-ipv4 key and one server-ipv6 key</t>
          </li>
          <li>
            <t>one server-name key</t>
          </li>
          <li>
            <t>one include-delegparam key</t>
          </li>
        </ul>
        <t>This restriction only applies to a single DELEG or DELEGPARAM record; a DELEG or DELEGPARAM RRset can have records with different server information keys.
Authoritative servers MAY refuse to load zones which have a disallowed combination of keys in a single record.</t>
        <t>When using server-name or include-delegparam, the addresses for the names in the set must be fetched as if they were referenced by NS records.
Because of the lack of Additional Section processing, there are no "glue" records provided for these names, so they cannot be for names inside the delegated domain.</t>
        <t>With this initial DELEG specification, servers are still expected to be reached on the standard DNS port for both UDP and TCP, 53.  While a future specification is expected to address other transports using other ports, its eventual semantics are not covered here.</t>
      </section>
      <section anchor="mandatory">
        <name>Metadata keys</name>
        <t>This specification defines a key which serves as a protocol extensibility mechanism, but is not directly used for contacting DNS servers.</t>
        <t>Any DELEG or DELEGPARAM record can have key named "mandatory" which is similar to the key of the same name in <xref target="RFC9460"/>.</t>
        <t>The presentation format for the value MUST be a comma-separated list of one or more valid DelegInfoKeys, either by their registered name or in the unknown-key format.</t>
        <t>The wire format for the value is a sequence of DelegInfoKey numeric values in network byte order, concatenated, in strictly increasing numeric order.</t>
        <t>The "mandatory" key itself is optional, but when it is present, the RR in which it appears MUST NOT be used by a resolver in the resolution process if any of the DelegInfoKeys referenced by the "mandatory" DelegInfoValue are not supported in the resolver's implementation. See <xref target="slist"/>.</t>
      </section>
    </section>
    <section anchor="de-bit">
      <name>Signaling DELEG Support</name>
      <t>This document defines a new EDNS flag to signal that an initiator and responder are DELEG-aware.</t>
      <t>This flag is referred to as the "DELEG" (DE) bit, expected to be assigned by IANA as Bit 2 in the EDNS Header Flags registry.
It is part of OPT RR TTL as described in <xref target="RFC6891"/>, as follows:</t>
      <artwork><![CDATA[
            +0 (MSB)                +1 (LSB)
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  0: |   EXTENDED-RCODE      |       VERSION         |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  2: |DO|CO|DE|              Z                       |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
]]></artwork>
      <t>If a query has the DE bit set to 1, and the responder is DELEG-aware, the responder MUST set the DE bit in the response to 1, independent of whether the response includes any DELEG or DELEGPARAM records.</t>
    </section>
    <section anchor="use-of-deleg-records">
      <name>Use of DELEG Records</name>
      <t>The DELEG RRset MAY contain multiple records.
A DELEG RRset MAY be present with or without NS or DS RRsets at the delegation point, though without NS records then DELEG-unaware software will not be able to resolve records in the the delegated zone.</t>
      <t>DELEG RRsets MUST NOT appear at a zone's apex.
The erroneous inclusion of DELEG RRset at zone's apex will cause DNSSEC validation failures.
Servers MAY refuse to load such an invalid zone, similar to the DS RR type.</t>
      <t>Both the DELEG protocol and legacy delegations (that is, NS records) will be used for delegation for a long time.
Both legacy delegations and the DELEG protocol enable recursive resolution.
A DELEG-aware resolver therefore does not need the NS records or glue information in a DELEG referral response, and MUST NOT get them; see <xref target="downgrade-attacks"/>.</t>
      <section anchor="resolvers">
        <name>Resolvers</name>
        <t>A resolver that is DELEG-aware MUST signal in queries that it supports the DELEG protocol by setting the DE bit to 1 in (see <xref target="de-bit"/>).
This indicates that the resolver understands the DELEG semantics and does not need NS records to follow a referral.</t>
        <t>The DE bit set to 0 indicates the resolver is not DELEG-aware, and therefore can only be served referrals with NS records and other data according to non-DELEG specifications.
Other special scenarios with DE=0 queries to DELEG-aware authorities are addressed in <xref target="authoritative-servers"/>.</t>
        <section anchor="referral">
          <name>Referral</name>
          <t>The DELEG record creates a zone cut similar to the NS record.</t>
          <t>If one or more DELEG records exist at a given delegation point, a DELEG-aware resolver MUST treat the name servers from those DELEG records as authoritative for the child zone.
In such a case, a DELEG-aware resolver MUST NOT use NS records for the zone if they are learned, even if resolution using DELEG records has failed.
Such fallback from DELEG to NS would invalidate the security guarantees of the DELEG protocol; see <xref target="downgrade-attacks"/>.</t>
          <t>If no DELEG record exists at a given delegation point, DELEG-aware resolvers MUST use NS records as specified by <xref target="RFC1034"/>.</t>
        </section>
        <section anchor="parent-side-types-qtypedeleg">
          <name>Parent-side types, QTYPE=DELEG</name>
          <t>Record types defined as authoritative on the parent side of zone cut, currently the DS and DELEG types, retain the same special handling as described in Section 2.6 of <xref target="RFC4035"/>.</t>
          <t>DELEG-unaware resolvers can get different types of answers for QTYPE=DELEG queries based on the configuration of the server, such as whether it is DELEG-aware and whether it also is authoritative for subdomains.
For example, a DELEG-unaware authoritative name server which has loaded DELEG records via the <xref target="RFC3597"/> unknown types mechanism would answer with them only if there were no NS records at the owner name, and answer with an NS delegation otherwise.
See <xref target="de0-deleg"/> for more information.</t>
        </section>
        <section anchor="finding-best">
          <name>Algorithm for "Finding the Best Servers to Ask"</name>
          <t>This document updates instructions for finding the best servers to ask.
It was covered in Section 5.3.3 of <xref target="RFC1034"/> and Section 3.4.1 of <xref target="RFC6672"/> with the text "2. Find the best servers to ask.".
These instructions were informally updated by section 4.2 of <xref target="RFC4035"/> for the DS RR type but the algorithm change was not made explicit.
This document simply extends this existing behavior from the DS RR type to the DELEG RR type as well, and makes this special case explicit.</t>
          <t>When a DELEG RRset exists for a delegation in a zone, DELEG-aware resolvers ignore any NS RRset for the delegated zone, whether from the parent or from the apex of the child.</t>
          <t>Each delegation level can have a mixture of DELEG and NS RR types, and DELEG-aware resolvers MUST be able to follow chains of delegations which combines both types in arbitrary ways.</t>
          <t>An example of a valid delegation tree:</t>
          <artwork><![CDATA[
; root zone with NS-only delegations
. SOA ...
test. NS ...

; test. zone with NS+DELEG delegations
test. SOA ...
sld.test. NS ...
sld.test. DELEG ...

; sld.test. zone with NS-only delegation
sld.test. SOA ...
nssub.sld.test. NS ...

; nssub.sld.test. zone with DELEG-only delegation
delegsub.sub.sld.test. DELEG ...
]]></artwork>
          <t>TODO: after the text below, refer back to this figure and show the order that a DELEG-aware resolver would take when there is a failure to find any good DELEG addresses at sub.sld.test, then any usable name servers at sub.sld.test, and then maybe a good DELEG record at test.</t>
          <t>The terms SNAME and SLIST used here are defined in Section 5.3.2 of <xref target="RFC1034"/>. Quote:</t>
          <ul spacing="normal">
            <li>
              <t>SNAME is the domain name we are searching for.</t>
            </li>
            <li>
              <t>SLIST is a structure which describes the name servers and the zone which the resolver is currently trying to query.</t>
            </li>
          </ul>
          <t>This document defines SLIST to be a set. Each individual value MUST be represented only once in the final SLIST even if it was encountered multiple times during SLIST construction.</t>
          <t>Neither <xref target="RFC1034"/> nor this document define how a resolver uses SLIST; they only define how to populate it.</t>
          <t>A DELEG-aware SLIST needs to be able to hold two types of information, delegations defined by NS records and delegations defined by DELEG records.
DELEG and NS delegations can create cyclic dependencies and/or lead to duplicate entries which point to the same server.
Resolvers SHOULD enforce suitable limits to prevent runaway processing even if someone has incorrectly configured some of the data used to create an SLIST;
this is the same recommendation to bound the amount of work as is made in Section 5.3.3 of <xref target="RFC1034"/>.</t>
          <t>Step 2 of Section 5.3.3 of <xref target="RFC1034"/> is just "2. Find the best servers to ask."
For DELEG-aware resolvers, this description becomes:</t>
          <t>=====</t>
          <t>2. Find the best servers to ask:</t>
          <t>2.1. Determine deepest possible zone cut which can potentially hold the answer for a given (query name, type, class) combination:</t>
          <t>2.1.1. Start with SNAME equal to QNAME.</t>
          <t>2.1.2. If QTYPE is a type that is authoritative at the parent side of a zone cut (currently, DS or DELEG), remove the leftmost label from SNAME.
For example, if the QNAME is "test.example." and the QTYPE is DELEG or DS, set SNAME to "example.".</t>
          <t>2.2. Look for locally-available DELEG and NS RRsets, starting at current SNAME.</t>
          <t>2.2.1. For a given SNAME, check for the existence of a DELEG RRset.
If it exists, the resolver MUST use its content to populate SLIST.
However, if the DELEG RRset is known to exist but is unusable (for example, if it is found in DNSSEC BAD cache, or content of individual RRs is unusable for any reason), the resolver MUST NOT instead use an NS RRset; instead, the resolver MUST treat this case as if SLIST is populated with unreachable servers.</t>
          <t>2.2.2. If a given SNAME is proven to not have a DELEG RRset but does have an NS RRset, the resolver MUST copy the NS RRset into SLIST.</t>
          <t>2.2.3. If SLIST is now populated, stop walking up the DNS tree.</t>
          <t>2.2.4. However, if SLIST is not populated, remove the leftmost label from SNAME and go back to step 2.2, using the newly shortened SNAME.</t>
          <t>=====</t>
          <t>The rest of Step 2's description in Section 5.3.3 of <xref target="RFC1034"/> is not affected by this document.</t>
          <t>Resolvers MUST respond to "QNAME=. / QTYPE=DELEG" queries in the same fashion as they respond to "QNAME=. / QTYPE=DS" queries.</t>
        </section>
        <section anchor="slist">
          <name>Populating the SLIST from DELEG and DELEGPARAM Records</name>
          <t>Each individual DELEG record inside a DELEG RRset, or each individual DELEGPARAM record in a DELEGPARAM RRset, can cause the addition of zero or more entries to SLIST.</t>
          <t>A resolver processes each individual DELEG record within a DELEG RRset, or each individual DELEGPARAM record in a DELEGPARAM RRset, using the following steps:</t>
          <ol spacing="normal" type="1"><li>
              <t>Remove all DelegInfo elements with unsupported DelegInfoKey values.
If the resulting record has zero-length DelegInfos field, stop processing the record.</t>
            </li>
            <li>
              <t>If a DelegInfo element with the "mandatory" DelegInfoKey is present, check its DelegInfoValue.
The DelegInfoValue is a list of keys which MUST have a corresponding DelegInfo elements in this record.
If any of the listed DelegInfo elements is not found, stop processing this record.</t>
            </li>
            <li>
              <t>If a record has more than one type of server information key (excluding the IPv4/IPv6 case, see <xref target="nameserver-info"/>), or if it has multiple server information keys of the same type, that record is malformed.
Stop processing this record.</t>
            </li>
            <li>
              <t>If any DNS name referenced by server-name key or the include-delegparam key is equal to or is a subdomain of the delegated domain (i.e. the DELEG record owner), that record is malformed.
Stop processing this record.  </t>
              <t>
This check MUST be performed against the original owner name of the DELEG record even if the currently-processed record is a DELEGPARAM record that was included by the original DELEG record. The purpose of this check is to ensure deterministic behavior. Not performing this check would allow delegations to be reachable only with certain cache content and/or a specific algorithm for server selection from SLIST.</t>
            </li>
            <li>
              <t>If server-ipv4 and/or server-ipv6 keys are present inside the record, copy all of the address values into SLIST.
Stop processing this record.</t>
            </li>
            <li>
              <t>If a server-name key is present in the record, resolve each name in the value into IPv4 and/or IPv6 addresses.
Copy these addresses into SLIST.
Stop processing this record.</t>
            </li>
            <li>
              <t>If an include-delegparam key is present in the record, resolve each name in the value using the DELEGPARAM RR type.
Recursively apply the algorithm described in this section, after checking that the maximum loop count described in <xref target="too-much-work"/> has not been reached.</t>
            </li>
            <li>
              <t>If none of the above applies, SLIST is not modified by this particular record.</t>
            </li>
          </ol>
          <t>A DELEG-aware resolver MAY implement lazy filling of SLIST, such as by deferring processing of remaining records, or even individual names or query types, if SLIST already has what the resolver considers a sufficiently large pool of addresses to contact.</t>
          <t>The order in which to try the servers in the final SLIST is outside the scope of this document.</t>
        </section>
      </section>
      <section anchor="authoritative-servers">
        <name>Authoritative Servers</name>
        <t>The DELEG RR type defines a zone cut in similar way as the NS RR type.
Behavior defined for zone cuts in existing non-DELEG specifications apply to zone cuts created by the DELEG record.
A notable example of this is that the occlusion (usually accidentally) created by NS records in a parent zone would also be created by DELEG records in a parent zone (see <xref target="occluded-example"/>).
Rules for setting Authoritative Answer (AA) bit in answers also remain unchanged: the DELEG RR type has the same special treatment as DS RR type.</t>
        <t>DELEG-aware authoritative servers act differently when handling queries from DELEG-unaware clients (those with DE=0) than from DELEG-aware clients (those with DE=1).
See <xref target="de-bit"/> and <xref target="resolvers"/>.</t>
        <section anchor="aware-referral">
          <name>DELEG-aware Clients</name>
          <t>When the client indicates that it is DELEG-aware by setting DE=1 in the query, DELEG-aware authoritative servers treat DELEG records as zone cuts, and the servers are authoritative on the parent side of the zone cut.
This new zone cut has priority over a legacy delegation.</t>
          <section anchor="deleg-aware-clients-requesting-qtypedeleg">
            <name>DELEG-aware Clients Requesting QTYPE=DELEG</name>
            <t>An explicit query for the DELEG RR type at a delegation point behaves much like a query for the DS RR type: the server answers authoritatively from the parent zone.
All non-DELEG specifications for the special handling of queries with QTYPE=DS apply equally to QTYPE=DELEG.
In summary, the server either provides an authoritative DELEG RRset or declares its non-existence, with relevant DNSSEC proofs when requested and available.</t>
          </section>
          <section anchor="delegation-with-deleg">
            <name>Delegation with DELEG</name>
            <t>If the delegation has a DELEG RRset, the authoritative server MUST put the DELEG RRset into the Authority section of the referral.
In this case, the server MUST NOT include the NS RRset in the Authority section.</t>
            <t>Non-DELEG DNSSEC specifications for RRSIG inclusion in answers with authoritative RRsets ({!RFC4035} section 3.1.1) MUST be followed.
Similarly, rules for DS RRset inclusion in referrals apply as specified by the DNSSEC protocol.</t>
          </section>
          <section anchor="ns-no-deleg">
            <name>DELEG-aware Clients with NS RRs Present but No DELEG RRs</name>
            <t>If the delegation does not have a DELEG RRset, the authoritative server MUST put the NS RRset into the authority section of the referral.
The absence of the DELEG RRset MUST be proven as specified by the DNSSEC protocol for authoritative data.</t>
            <t>Similarly, rules for DS RRset inclusion into referrals apply as specified by the DNSSEC protocol.
Please note, in practice the same process and records are used to prove the non-existence of both DELEG and DS RRsets.</t>
          </section>
        </section>
        <section anchor="deleg-unaware-clients">
          <name>DELEG-unaware Clients</name>
          <t>A general principle for DELEG-aware authoritative servers is that they respond to a DELEG-unaware client by following non-DELEG specifications.</t>
          <t>DELEG-unaware clients do not recognize DELEG records as a zone cut and are not aware of the special handling rules for DELEG records.
They understand a DELEG RRset as an ordinary unknown RR type.</t>
          <t>In summary, DELEG records are not returned in referral responses to DELEG-unaware clients,
and DELEG-unaware clients do not consider DELEG records authoritative on the parent side of a zone cut.</t>
          <t>An authoritative server responding to DELEG-unaware clients has to handle three distinct situations:</t>
          <ul spacing="normal">
            <li>
              <t>No DELEG RRset is present. In this case, the authoritative server follows the non-DELEG specifications.</t>
            </li>
            <li>
              <t>An NS RRset and a DELEG RRset are both present. In this case, the authoritative server uses the NS RRset when constructing referral responses, following the non-DELEG specifications. See also <xref target="signers"/> and <xref target="examples"/>.</t>
            </li>
            <li>
              <t>A DELEG RRset is present, but an NS RRset is not.  This is addressed in the next section.</t>
            </li>
          </ul>
          <section anchor="no-ns">
            <name>DELEG-unaware Clients with DELEG RRs Present but No NS RRs</name>
            <t>Authoritative servers may receive requests from DELEG-unaware clients for which the child zone is authoritative and is delegated with DELEG RRs only (that is, without any NS RRs).
Such a zone is, by definition, not resolvable for DELEG-unaware clients.
From the perspective of a DELEG-unaware client, the zone cut created by the DELEG RRs is invisible.
The authoritative server should respond in a way that makes sense to DELEG-unaware clients.</t>
            <t>The current, primary use case for zone owners that have zones to have DELEG records but no NS records is that they want resolution of those zones only if the resolver uses future features of the DELEG protocol, such as encrypted DNS transports.</t>
            <t>The authoritative server is RECOMMENDED to supplement its responses to DELEG-unaware resolvers with an <xref target="RFC8914"/> Extended DNS Error using the (IANA-TBD) value "New Delegation Only" from the Extended DNS Error Codes registry.</t>
            <t>When there is no NS records for a delegated zone, a DELEG-aware authoritative server MUST respond to DELEG-unaware clients with an answer that accurately describes the situation to a DELEG-unaware resolver.
For a query of the delegated zone itself, the response has an RCODE of NOERROR; for a query that has more labels than the delegated zone, the response has an RCODE of NXDOMAIN; this is no different than what is already specified by algorithms in <xref target="RFC1034"/> and subsequent updates.
NSEC and DS records are returned following the existing rules in <xref target="RFC4035"/>.</t>
          </section>
          <section anchor="de0-deleg">
            <name>DELEG-unaware Clients Requesting QTYPE=DELEG</name>
            <t>From the perspective of DELEG-unaware clients, the DELEG RR type does not have special semantics and should behave like an old ordinary RR type such as TXT.
Thus, queries with DE=0 and QTYPE=DELEG MUST result in a response which can be validated by a DELEG-unaware client.</t>
            <ul spacing="normal">
              <li>
                <t>If there is an NS RRset, this will be a legacy referral to the child zone. From the perspective of a DELEG-unaware client, the DELEG RR is effectively occluded by NS RRset.
The DELEG-unaware resolver can then obtain a final answer which can be validated from the child zone in similar fashion as described in <xref target="RFC4035"/> section 3.1.4.1.</t>
              </li>
              <li>
                <t>If there is no NS RRset but there is a DELEG RRset, this will be a normal authoritative response with the DELEG RRset, following non-DELEG specifications.</t>
              </li>
              <li>
                <t>If there is no NS RRset and no DELEG RRset, this will be a standard negative response following non-DELEG specifications.</t>
              </li>
            </ul>
            <t>TODO: Should we have an example with auth having parent+child zone at the same time, and DE=0 QTYPE=DELEG query?  What about QTYPE=ANY?</t>
          </section>
        </section>
      </section>
      <section anchor="signers">
        <name>DNSSEC Signers</name>
        <t>The DELEG record is authoritative on the parent side of a zone cut and needs to be signed as such.
Existing rules from the DNSSEC specifications apply.</t>
        <t>In summary: for DNSSEC signing, treat the DELEG RR type the same way as the DS RR type.</t>
        <t>The DELEG RR type defines a zone cut in similar way as the NS RR type.
This has several consequences which stem from existing non-DELEG specifications:</t>
        <ul spacing="normal">
          <li>
            <t>All owner names below zone cut are occluded and thus not present in NSEC chains.</t>
          </li>
          <li>
            <t>All RRsets which are not permissible at the parent side of zone cut are occluded too and not represented in NSEC chain type bitmap.</t>
          </li>
        </ul>
        <t>See examples in <xref target="example-root"/> and <xref target="example-occluded"/>.</t>
        <t>In order to protect validators from downgrade attacks (see <xref target="downgrade-attacks"/>) this draft introduces a new DNSKEY flag ADT (Authoritative Delegation Types, see <xref target="iana-existing"/>).
To achieve downgrade resistance, DNSSEC-signed zones which contain a DELEG RRset MUST set ADT flag to 1 in at least one of the DNSKEY records published in the zone.</t>
      </section>
      <section anchor="dnssec-validators">
        <name>DNSSEC Validators</name>
        <t>DELEG awareness introduces additional requirements on validators.</t>
        <section anchor="clarifications-on-nonexistence-proofs">
          <name>Clarifications on Nonexistence Proofs</name>
          <t>This document updates Section 4.1 of <xref target="RFC6840"/> to include "NS or DELEG" types in the type bitmap as indication of a delegation point, and generalizes applicability of ancestor delegation proof to all RR types that are authoritative at the parent (that is, both DS and DELEG).
The text in that section is updated as follows:</t>
          <t>An "ancestor delegation" NSEC RR (or NSEC3 RR) is one with:</t>
          <ul spacing="normal">
            <li>
              <t>the NS and/or DELEG bit set,</t>
            </li>
            <li>
              <t>the Start of Authority (SOA) bit clear, and</t>
            </li>
            <li>
              <t>a signer field that is shorter than the owner name of the NSEC RR,
or the original owner name for the NSEC3 RR.</t>
            </li>
          </ul>
          <t>Ancestor delegation NSEC or NSEC3 RRs MUST NOT be used to assume
nonexistence of any RRs below that zone cut, which include all RRs at
that original owner name, other than types authoritative at the parent-side of a
zone cut (DS and DELEG), and all RRs below that owner name regardless of
type.</t>
        </section>
        <section anchor="insecure-delegation-proofs">
          <name>Insecure Delegation Proofs</name>
          <t>This document updates Section 4.4 of <xref target="RFC6840"/> to include securing DELEG records, and explicitly states that Opt-Out is not applicable to the DELEG protocol.
The first paragraph of that section is updated to read:</t>
          <t>Section 5.2 of <xref target="RFC4035"/> specifies that a validator, when proving a
delegation is not secure, needs to check for the absence of the DS
and SOA bits in the NSEC (or NSEC3) type bitmap; this was clarified in Section 4.1 of <xref target="RFC6840"/>.
This document updates <xref target="RFC4035"/> and <xref target="RFC6840"/> to specify that the validator MUST also check for the presence of the NS or the DELEG bit in the matching NSEC (or NSEC3) RR (proving that there is, indeed, a delegation).
Alternately, the validator must make sure that the delegation with an NS record is covered by an NSEC3
RR with the Opt-Out flag set.
Opt-Out is not applicable to DELEG RR type
because DELEG records are authoritative at the parent side of a zone cut in the same
way that DS RR types are.</t>
        </section>
        <section anchor="validator-downgrade-protection">
          <name>Referral downgrade protection</name>
          <t>If the zone is DNSSEC-secure, and if any DNSKEY of the zone has the ADT flag (<xref target="iana-existing"/>) set to 1, a DELEG-aware validator MUST prove the absence of a DELEG RRset in referral responses from this particular zone.</t>
          <t>Without this check, an attacker could strip the DELEG RRset from a referral response and replace it with an unsigned (and potentially malicious) NS RRset (<xref target="downgrade-attacks"/>).
The reason for this is that according to non-DELEG DNSSEC specification, a referral response with an unsigned NS and signed DS RRsets does not require additional proofs of nonexistence.</t>
        </section>
        <section anchor="positive-responses">
          <name>Positive responses</name>
          <t>An existing DELEG RRset is authoritative in, and signed by, the parent zone, similarly to a DS RRset (see <xref target="signers"/>).</t>
          <t>A validator SHOULD NOT treat a positive response with a DELEG RRset as DNSSEC-bogus only because all DNSKEYs in the zone have the ADT flag set to 0.
Such a zone would not be protected from downgrade attacks (<xref target="downgrade-attacks"/>) but this behavior is consistent with other non-DELEG DNSSEC specifications:
validators are not expected to detect inconsistencies in data if a chain of trust can be established.</t>
        </section>
        <section anchor="chaining">
          <name>Chaining</name>
          <t>A Validating Stub Resolver that is DELEG-aware MUST only use security-aware resolvers that are DELEG-aware.
A DELEG-aware Validating Resolver that uses forwarders MUST only use DELEG-aware and security-aware forwarders.
Otherwise DNSSEC-secure zones might fail to validate (see <xref target="legacynxdomain"/>) and DNSSEC-insecure zones might observe inconsistent answers (see <xref target="operational-considerations"/>).</t>
          <t><xref target="RFC9606"/> specifies a DNS resource record type, RESINFO, to allow resolvers to publish information about their capabilities and policies. This can be used to inform DNS clients that DELEG is supported by the DNS resolver.</t>
          <t>A resolver which supports <xref target="RFC9606"/> SHOULD add the "deleg" key if it supports DELEG protocol.
A resolver that uses forwarders MAY use a RESINFO query to determine if the configured forwarders are DELEG-aware.</t>
          <t>Note that, per the rules for the keys defined in Section 6.4 of <xref target="RFC6763"/>, if there is no '=' in a key, then it is a boolean attribute, simply identified as being present with no value.</t>
        </section>
      </section>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>When DELEG is deployed, new operational considerations will apply.
While the majority of these relate to the operation of DELEG-aware servers or resolvers, there is a more general set of operational practices which will need to apply because not all resolvers will be DELEG-aware.
This section gives an overview of some of those considerations.</t>
      <section anchor="ns-not-required-by-protocol">
        <name>NS Not Required by Protocol</name>
        <t>A zone delegated exclusively using DELEG records is not resolvable by non-DELEG aware resolvers.
In that case the zone is not required to have NS RRset in the child zone apex.
Software to manage zone content or check the validity of zones needs to be updated to allow zones without an NS RRset at the apex.</t>
      </section>
      <section anchor="ns-maybe-required-in-practice">
        <name>NS Maybe Required in Practice</name>
        <t>Although DELEG removes the protocol requirement for NS records, resolver support for DELEG will not be universal for a long time after this protocol is first deployed.
The deployment of DELEG-only delegation creates a new situation in which DNS servers that are authoritative for a particular set of domains provide partly or completely different answers.
Where "split DNS" or "split-horizon DNS" <xref target="RFC9499"/> differences depend on the source of the query, resolution of DELEG-only delegations will depend on whether or not the resolver is aware of and using DELEG.
Compare examples of DELEG-only delegation and respective answers for DELEG-unaware client in <xref target="legacynxdomain"/> and DELEG-aware client in <xref target="aware-new-delegation-only"/>.</t>
        <t>For any part of the namespace that is intended to be globally reachable, operators should avoid DELEG-only delegations, as some resolvers will be unaware of DELEG.
For other parts of the namespace, operators should take care to ensure that any variability in responses introduced maps correctly to the client capabilities.</t>
        <t>DELEG-only delegation is appropriate only where all intended users are known to use DELEG-capable resolvers.
This might be the case when a zone operator wants a zone be reachable only over secure transport, for example.
The decision to drop NS records should be guided by operational measurements of resolver adoption of the DELEG protocol.</t>
      </section>
      <section anchor="ns-and-deleg-combined">
        <name>NS and DELEG Combined</name>
        <t>This document explicitly allows zones to be delegated using DELEG records without also using NS records; delegating a zone with both DELEG and NS records is also allowed.
Software that manages delegations or checks the validity of zones need to be updated to allow delegations with all combinations of (with, without) * (NS, DELEG) records.</t>
        <t>If both NS and DELEG records are present, zone managers might want to check consistency across both RRsets, subject to local policy.
This specification treats both NS and DELEG RRsets as completely independent on the protocol level,
but it does not prohibit a provisioning system from generating one record type from the other.</t>
      </section>
      <section anchor="authoritative-deployment">
        <name>Authoritative Deployment</name>
        <t>Before adding a first DELEG record into a DNS zone, these steps need to be taken, in this order:</t>
        <ol spacing="normal" type="1"><li>
            <t>If zone checkers are used: ensure that the zone checkers are DELEG-aware.</t>
          </li>
          <li>
            <t>Ensure that all authoritative servers serving (and transfering) the zone are DELEG-aware.</t>
          </li>
          <li>
            <t>If a zone is DNSSEC-signed: ensure that the signer is DELEG-aware.</t>
          </li>
          <li>
            <t>If a zone is DNSSEC-signed: ensure that at least one DNSKEY record has the ADT flag set to 1. Failure to do so results in loss of downgrade resistence of the DELEG protocol for this zone; see <xref target="downgrade-attacks"/>.</t>
          </li>
        </ol>
        <section anchor="enabling-adt-flag">
          <name>Enabling ADT Flag</name>
          <t>According to the DNSSEC specification, changing flags of a DNSKEY record changes its Key Tag and thus requires a key rollover.
For this reason, the ADT flag cannot be simply enabled on an existing key without other changes to the record.
Operators are advised to set the ADT flag at the time of generating a new key, as part of a regular key rollover using established procedures.
A zone can safely have keys with the ADT flag set to 1 even if the zone does not have any DELEG records.
Turning on the ADT flag can be done months or even years before a first DELEG record is introduced into the zone.</t>
          <t>Downgrade protection is effective if any DNSKEY with ADT flag set to 1 is present, even if this key does not sign any RRset.
In other words, it is sufficient to pre-publish new key, as described in stage 2 of Pre-Publish Zone Signing Key Rollover, section 4.1.1.1 of <xref target="RFC6781"/>.</t>
          <t>An extremely conservative approach might be:</t>
          <ol spacing="normal" type="1"><li>
              <t>Lower DNSKEY TTL to shorten time to rollback.</t>
            </li>
            <li>
              <t>Add a new DNSKEY with ADT flag set to 1, but do not sign any RRsets with this key.</t>
            </li>
            <li>
              <t>Monitor deployment for issues.</t>
            </li>
            <li>
              <t>Experiment with adding DELEG records at this point, even if the key rollover is not finished. If there is a problem, withdraw the new, otherwise unused key.</t>
            </li>
            <li>
              <t>Finish the key rollover.</t>
            </li>
            <li>
              <t>Restore the original DNSKEY TTL.</t>
            </li>
          </ol>
          <t>Such an approach requires changing only to DNSKEY RRset and resigning it.
Consequently, the time required to withdraw the new DNSKEY record is limited only by DNSKEY TTL + time to sign + time to transfer modified DNSKEY RRset.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO: More people should check this section is complete!</t>
      <section anchor="too-much-work">
        <name>Preventing Over-work Attacks</name>
        <t>Resolvers MUST prevent situations where accidental misconfiguration of zones or malicious attacks cause them to perform too much work when resolving.
This document describes two sets of actions that, if not controlled, could lead to over-work attacks.</t>
        <t>Long chains of include-delegparam information (<xref target="nameserver-info"/>), and those with circular chains of include-delegparam information, can be burdensome.
To prevent this, the resolver SHOULD NOT follow more than 3 include-delegparam chains in an RRset when populating SLIST.
Note that include-delegparam chains can have CNAME steps in them; in such a case, a CNAME step is counted the same as a DELEGPARAM step when determining when to stop following a chain.</t>
        <t>TODO: No other DNS spec specifies hard maximum number of indirections. Perhaps we should not specify it either? After all DELEG value can contain a name in NS-only delegation and then we get into realm of 'count DELEG but NS is uncounted' and other fun combinations like this. Perhaps this is better dealt with for the whole DNS protocol within draft-fujiwara-dnsop-dns-upper-limit-values?</t>
      </section>
      <section anchor="downgrade-attacks">
        <name>Preventing Downgrade Attacks</name>
        <t>During the rollout of the DELEG protocol, the operator of an authoritative server can upgrade the server software to be DELEG-aware before changing any DNS zones.
Such deployment should work and provide DELEG-aware clients with correct DELEG-aware answers.
However, the deployment will not be protected from downgrade attacks against the DELEG protocol.</t>
        <t>To protect DNSSEC-secure DNS zones that contain DELEG delegations, the delegating zone needs to have at least one DNSKEY with the ADT flag set to 1.
Failure to set this flag in a DNSKEY record in the zone allows an attacker to remove the DELEG RRset from referrals which contain the DS RRset, and replace the original signed DELEG RRset with an arbitrary unsigned NS set.
Doing so would be a downgrade from the strong protection offered by DNSSEC for DELEG.
That is, the DELEG protocol when used with upgraded DNSKEY records gives the same protection to DELEG that the zone's DS RRset has.
Without DELEG, there are no security guarantees for the NS RRset on the parent side of the zone cut.</t>
        <t>Please note that a full DNSKEY rollover is not necessary to achieve the downgrade protection for DELEG.
Any single DNSKEY with the ADT flag set to 1 is sufficient; the zone can introduce an otherwise unused record into the DNSKEY RRset.</t>
      </section>
      <section anchor="deleg-is-stronger-than-ns">
        <name>DELEG Is Stronger Than NS</name>
        <t>DELEG RRtype has stronger protection (by DNSSEC) than NS and glue records on the parent side of a zone cut.
A child zone that does not need to be resolvable by DELEG-unaware clients (see {operational-considerations}),
and is delegated only with DELEG records,
will have a smaller attack surface compared to a zone delegated with both DELEG and NS records.</t>
        <t>The additional attack surface of legacy delegations stems from the possibility of replacing NS and glue records in referrals with arbitrary values,
which is not detectable by DNSSEC (by design in <xref target="RFC4035"/> Section 2.2).</t>
        <t>For example, this allows redirecting a referral to names and/or addresses under an attacker's control.
Even for DNSSEC-secure zones, an attacker can use this ability to continuously proxy queries and responses,
observe traffic, and also monitor the network addresses involved, which might be a privacy concern for roaming clients.</t>
        <t>The feasibility and impact of such attacks depend on the threat model, which is outside the scope of this document.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="iana-existing">
        <name>Changes to Existing Registries</name>
        <t>All new allocations should reference this document.</t>
        <t>IANA is requested to assign two types in the Resource Record (RR) TYPEs registry (<xref target="RFC6895"/>):</t>
        <ul spacing="normal">
          <li>
            <t>TYPE DELEG, Meaning "Extensible Delegation", Value equal to 61440.</t>
          </li>
          <li>
            <t>TYPE DELEGPARAM, Meaning "Extensible Delegation Indirection", Value TBA1 inside one of the ranges marked as "data TYPEs".</t>
          </li>
        </ul>
        <t>IANA is requested to assign a new bit in the DNSKEY RR Flags registry (<xref target="RFC4034"/>):
Number 14, Description "Authoritative Delegation Types (ADT)".
For compatibility reasons, we request the Number 14 to be used.
This value has been proven to work whereas bit number 0 was proven to break in practical deployments (because of bugs).</t>
        <t>IANA is requested to assign a bit in the EDNS Header Flags registry (<xref target="RFC6891"/>):
Bit TBA2, Flag DE, with the description "DELEG enabled".</t>
        <t>IANA is requested to assign a value in the Extended DNS Error Codes registry (<xref target="RFC8914"/>):
INFO-CODE TBA3, with the Purpose "New Delegation Only".</t>
        <t>IANA is requested to create this assignment in the DNS Resolver Information Keys registry (<xref target="RFC9606"/>): Name "deleg", Description "The presence of the key indicates that DELEG protocol is supported."</t>
      </section>
      <section anchor="new-registry-for-delegation-information">
        <name>New Registry for Delegation Information</name>
        <t>IANA is requested to create the "DELEG Delegation Information" registry.
This registry defines the namespace for delegation information keys, including string representations and numeric key values.</t>
        <section anchor="procedure">
          <name>Procedure</name>
          <t>A registration MUST include the following fields:</t>
          <t>Number:  Wire-format numeric identifier (range 0-65535)
Name:  Unique presentation name
Meaning:  A short description
Reference:  Location of specification or registration source
Change Controller:  Person or entity, with contact information if appropriate</t>
          <t>To enable code reuse from SVCB parsers, the requirements for registered Name exactly copy requirements set by <xref target="RFC9460"/> section 14.3.1:
The characters in the registered Name field entry MUST be lowercase alphanumeric or "-".
The name MUST NOT start with "key" or "invalid".</t>
          <t>The registration policy for new entries is Expert Review (<xref target="RFC8126"/>).
The designated expert MUST ensure that the reference is stable and publicly available and that it specifies how to convert the delegation information's presentation format to wire format.
The reference MAY be any individual's Internet-Draft or a document from any other source with similar assurances of stability and availability.
An entry MAY specify a reference of the form "Same as (other key name)" if it uses the same presentation and wire formats as an existing key.</t>
          <t>This arrangement supports the development of new parameters while ensuring that zone files can be made interoperable.</t>
        </section>
        <section anchor="initial-contents">
          <name>Initial Contents</name>
          <t>The "DELEG Delegation Information" registry should be populated with the following initial registrations:</t>
          <artwork><![CDATA[
Number:  0
Name:  mandatory
Meaning: Mandatory keys in this RR
Reference:  {{mandatory}} of this document
Change Controller:  IETF

Number:  1
Name:  server-ipv4
Meaning:  An unordered collection of IPv4 addresses of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  2
Name:  server-ipv6
Meaning:  An unordered collection of IPv6 addresses of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  3
Name:  server-name
Meaning:  An unordered collection of domain names of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  4
Name:  include-delegparam
Meaning:  An unordered collection of domain names of DELEGPARAM records
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

The registration for numbers 65280-65534 is reserved for private use.
The registration for number 65535 is reserved.
]]></artwork>
        </section>
      </section>
      <section anchor="temporary-assignments">
        <name>Temporary Assignments</name>
        <t>This section gives the values that can be used for interoperability testing before IANA makes permanent assignments.
The section will be removed when IANA makes permanent assignments.</t>
        <ul spacing="normal">
          <li>
            <t>DELEG RR type code is 61440</t>
          </li>
          <li>
            <t>DELEGPARAM RR type code is 65433</t>
          </li>
          <li>
            <t>DELEG EDNS DE flag bit is 2</t>
          </li>
          <li>
            <t>DNSKEY ADT (Authoritative Delegation Types) flag bit is 14</t>
          </li>
        </ul>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9460">
          <front>
            <title>Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)</title>
            <author fullname="B. Schwartz" initials="B." surname="Schwartz"/>
            <author fullname="M. Bishop" initials="M." surname="Bishop"/>
            <author fullname="E. Nygren" initials="E." surname="Nygren"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document specifies the "SVCB" ("Service Binding") and "HTTPS" DNS resource record (RR) types to facilitate the lookup of information needed to make connections to network services, such as for HTTP origins. SVCB records allow a service to be provided from multiple alternative endpoints, each with associated parameters (such as transport protocol configuration), and are extensible to support future uses (such as keys for encrypting the TLS ClientHello). They also enable aliasing of apex domains, which is not possible with CNAME. The HTTPS RR is a variation of SVCB for use with HTTP (see RFC 9110, "HTTP Semantics"). By providing more information to the client before it attempts to establish a connection, these records offer potential benefits to both performance and privacy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9460"/>
          <seriesInfo name="DOI" value="10.17487/RFC9460"/>
        </reference>
        <reference anchor="RFC1035">
          <front>
            <title>Domain names - implementation and specification</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised specification of the protocol and format used in the implementation of the Domain Name System. It obsoletes RFC-883. This memo documents the details of the domain name client - server communication.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1035"/>
          <seriesInfo name="DOI" value="10.17487/RFC1035"/>
        </reference>
        <reference anchor="RFC2181">
          <front>
            <title>Clarifications to the DNS Specification</title>
            <author fullname="R. Elz" initials="R." surname="Elz"/>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <date month="July" year="1997"/>
            <abstract>
              <t>This document considers some areas that have been identified as problems with the specification of the Domain Name System, and proposes remedies for the defects identified. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2181"/>
          <seriesInfo name="DOI" value="10.17487/RFC2181"/>
        </reference>
        <reference anchor="RFC1034">
          <front>
            <title>Domain names - concepts and facilities</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised basic definition of The Domain Name System. It obsoletes RFC-882. This memo describes the domain style names and their used for host address look up and electronic mail forwarding. It discusses the clients and servers in the domain name system and the protocol used between them.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1034"/>
          <seriesInfo name="DOI" value="10.17487/RFC1034"/>
        </reference>
        <reference anchor="RFC3597">
          <front>
            <title>Handling of Unknown DNS Resource Record (RR) Types</title>
            <author fullname="A. Gustafsson" initials="A." surname="Gustafsson"/>
            <date month="September" year="2003"/>
            <abstract>
              <t>Extending the Domain Name System (DNS) with new Resource Record (RR) types currently requires changes to name server software. This document specifies the changes necessary to allow future DNS implementations to handle new RR types transparently. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3597"/>
          <seriesInfo name="DOI" value="10.17487/RFC3597"/>
        </reference>
        <reference anchor="RFC6891">
          <front>
            <title>Extension Mechanisms for DNS (EDNS(0))</title>
            <author fullname="J. Damas" initials="J." surname="Damas"/>
            <author fullname="M. Graff" initials="M." surname="Graff"/>
            <author fullname="P. Vixie" initials="P." surname="Vixie"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>The Domain Name System's wire protocol includes a number of fixed fields whose range has been or soon will be exhausted and does not allow requestors to advertise their capabilities to responders. This document describes backward-compatible mechanisms for allowing the protocol to grow.</t>
              <t>This document updates the Extension Mechanisms for DNS (EDNS(0)) specification (and obsoletes RFC 2671) based on feedback from deployment experience in several implementations. It also obsoletes RFC 2673 ("Binary Labels in the Domain Name System") and adds considerations on the use of extended labels in the DNS.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="75"/>
          <seriesInfo name="RFC" value="6891"/>
          <seriesInfo name="DOI" value="10.17487/RFC6891"/>
        </reference>
        <reference anchor="RFC4035">
          <front>
            <title>Protocol Modifications for the DNS Security Extensions</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <author fullname="D. Massey" initials="D." surname="Massey"/>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <date month="March" year="2005"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication and data integrity to the DNS. This document describes the DNSSEC protocol modifications. This document defines the concept of a signed zone, along with the requirements for serving and resolving by using DNSSEC. These techniques allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications.</t>
              <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4035"/>
          <seriesInfo name="DOI" value="10.17487/RFC4035"/>
        </reference>
        <reference anchor="RFC6672">
          <front>
            <title>DNAME Redirection in the DNS</title>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <author fullname="W. Wijngaards" initials="W." surname="Wijngaards"/>
            <date month="June" year="2012"/>
            <abstract>
              <t>The DNAME record provides redirection for a subtree of the domain name tree in the DNS. That is, all names that end with a particular suffix are redirected to another part of the DNS. This document obsoletes the original specification in RFC 2672 as well as updates the document on representing IPv6 addresses in DNS (RFC 3363). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6672"/>
          <seriesInfo name="DOI" value="10.17487/RFC6672"/>
        </reference>
        <reference anchor="RFC8914">
          <front>
            <title>Extended DNS Errors</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="E. Hunt" initials="E." surname="Hunt"/>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
            <author fullname="D. Lawrence" initials="D." surname="Lawrence"/>
            <date month="October" year="2020"/>
            <abstract>
              <t>This document defines an extensible method to return additional information about the cause of DNS errors. Though created primarily to extend SERVFAIL to provide additional information about the cause of DNS and DNSSEC failures, the Extended DNS Errors option defined in this document allows all response types to contain extended error information. Extended DNS Error information does not change the processing of RCODEs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8914"/>
          <seriesInfo name="DOI" value="10.17487/RFC8914"/>
        </reference>
        <reference anchor="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="RFC9606">
          <front>
            <title>DNS Resolver Information</title>
            <author fullname="T. Reddy.K" initials="T." surname="Reddy.K"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <date month="June" year="2024"/>
            <abstract>
              <t>This document specifies a method for DNS resolvers to publish information about themselves. DNS clients can use the resolver information to identify the capabilities of DNS resolvers. How DNS clients use such information is beyond the scope of this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9606"/>
          <seriesInfo name="DOI" value="10.17487/RFC9606"/>
        </reference>
        <reference anchor="RFC6763">
          <front>
            <title>DNS-Based Service Discovery</title>
            <author fullname="S. Cheshire" initials="S." surname="Cheshire"/>
            <author fullname="M. Krochmal" initials="M." surname="Krochmal"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document specifies how DNS resource records are named and structured to facilitate service discovery. Given a type of service that a client is looking for, and a domain in which the client is looking for that service, this mechanism allows clients to discover a list of named instances of that desired service, using standard DNS queries. This mechanism is referred to as DNS-based Service Discovery, or DNS-SD.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6763"/>
          <seriesInfo name="DOI" value="10.17487/RFC6763"/>
        </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="RFC6895">
          <front>
            <title>Domain Name System (DNS) IANA Considerations</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>This document specifies Internet Assigned Numbers Authority (IANA) parameter assignment considerations for the allocation of Domain Name System (DNS) resource record types, CLASSes, operation codes, error codes, DNS protocol message header bits, and AFSDB resource record subtypes. It obsoletes RFC 6195 and updates RFCs 1183, 2845, 2930, and 3597.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="42"/>
          <seriesInfo name="RFC" value="6895"/>
          <seriesInfo name="DOI" value="10.17487/RFC6895"/>
        </reference>
        <reference anchor="RFC4034">
          <front>
            <title>Resource Records for the DNS Security Extensions</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <author fullname="D. Massey" initials="D." surname="Massey"/>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <date month="March" year="2005"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of resource records and protocol modifications that provide source authentication for the DNS. This document defines the public key (DNSKEY), delegation signer (DS), resource record digital signature (RRSIG), and authenticated denial of existence (NSEC) resource records. The purpose and format of each resource record is described in detail, and an example of each resource record is given.</t>
              <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4034"/>
          <seriesInfo name="DOI" value="10.17487/RFC4034"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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>
        <referencegroup anchor="BCP219" target="https://www.rfc-editor.org/info/bcp219">
          <reference anchor="RFC9499" target="https://www.rfc-editor.org/info/rfc9499">
            <front>
              <title>DNS Terminology</title>
              <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
              <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
              <date month="March" year="2024"/>
              <abstract>
                <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
                <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="219"/>
            <seriesInfo name="RFC" value="9499"/>
            <seriesInfo name="DOI" value="10.17487/RFC9499"/>
          </reference>
        </referencegroup>
        <reference anchor="RFC5952">
          <front>
            <title>A Recommendation for IPv6 Address Text Representation</title>
            <author fullname="S. Kawamura" initials="S." surname="Kawamura"/>
            <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
            <date month="August" year="2010"/>
            <abstract>
              <t>As IPv6 deployment increases, there will be a dramatic increase in the need to use IPv6 addresses in text. While the IPv6 address architecture in Section 2.2 of RFC 4291 describes a flexible model for text representation of an IPv6 address, this flexibility has been causing problems for operators, system engineers, and users. This document defines a canonical textual representation format. It does not define a format for internal storage, such as within an application or database. It is expected that the canonical format will be followed by humans and systems when representing IPv6 addresses as text, but all implementations must accept and be able to handle any legitimate RFC 4291 format. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5952"/>
          <seriesInfo name="DOI" value="10.17487/RFC5952"/>
        </reference>
        <reference anchor="RFC4001">
          <front>
            <title>Textual Conventions for Internet Network Addresses</title>
            <author fullname="M. Daniele" initials="M." surname="Daniele"/>
            <author fullname="B. Haberman" initials="B." surname="Haberman"/>
            <author fullname="S. Routhier" initials="S." surname="Routhier"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <date month="February" year="2005"/>
            <abstract>
              <t>This MIB module defines textual conventions to represent commonly used Internet network layer addressing information. The intent is that these textual conventions will be imported and used in MIB modules that would otherwise define their own representations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4001"/>
          <seriesInfo name="DOI" value="10.17487/RFC4001"/>
        </reference>
        <reference anchor="RFC8427">
          <front>
            <title>Representing DNS Messages in JSON</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Some applications use DNS messages, or parts of DNS messages, as data. For example, a system that captures DNS queries and responses might want to be able to easily search them without having to decode the messages each time. Another example is a system that puts together DNS queries and responses from message parts. This document describes a general format for DNS message data in JSON. Specific profiles of the format in this document can be described in other documents for specific applications and usage scenarios.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8427"/>
          <seriesInfo name="DOI" value="10.17487/RFC8427"/>
        </reference>
        <reference anchor="I-D.peltan-edns-presentation-format">
          <front>
            <title>EDNS Presentation and JSON Format</title>
            <author fullname="Libor Peltan" initials="L." surname="Peltan">
              <organization>CZ.NIC</organization>
            </author>
            <author fullname="Tom Carpay" initials="T." surname="Carpay">
              <organization>NLnet Labs</organization>
            </author>
            <date day="19" month="April" year="2024"/>
            <abstract>
              <t>   This document describes the textual and JSON representation formats
   of EDNS options.  It also modifies the escaping rules of the JSON
   representation of DNS messages, previously defined in RFC8427.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-peltan-edns-presentation-format-03"/>
        </reference>
        <reference anchor="I-D.tapril-ns2">
          <front>
            <title>Parameterized Nameserver Delegation with NS2 and NS2T</title>
            <author fullname="Tim April" initials="T." surname="April">
              <organization>Akamai Technologies</organization>
            </author>
            <date day="13" month="July" year="2020"/>
            <abstract>
              <t>   Within the DNS, there is no mechanism for authoritative servers to
   advertise which transport methods they are capable of.  If secure
   transport methods are adopted by authoritative operators, transport
   signaling would be required to negotiate how authoritative servers
   would be contacted by resolvers.  This document provides two new
   Resource Record Types, NS2 and NS2T, to facilitate this negotiation
   by allowing zone owners to signal how the authoritative nameserver(s)
   for their zone(s) may accept queries.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-tapril-ns2-01"/>
        </reference>
      </references>
    </references>
    <?line 835?>

<section anchor="examples">
      <name>Examples</name>
      <section anchor="example-root">
        <name>Root zone file</name>
        <t>The following example shows an excerpt from a signed root zone.
It shows the delegation point for "example." and "test."</t>
        <t>The "example." delegation has DELEG and NS records.
The "test." delegation has DELEG but no NS records.</t>
        <t>TODO: Add examples that have include-delegparam being sets of more than one name.</t>
        <artwork><![CDATA[
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.
example.   RRSIG DELEG 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleDELEG/ )

example.   NS    ns1.example.
example.   NS    ns2.example.net.
example.   NS    ns3.example.org.

example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )

example.   NSEC  net. NS DS RRSIG NSEC DELEG
example.   RRSIG NSEC 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleNSEC+/ )

; unsigned glue for legacy (NS) delegation
; it is NOT present in NSEC chain
ns1.example. A     192.0.2.1
ns1.example. AAAA  2001:DB8::1
]]></artwork>
        <t>The "test." delegation point has a DELEG record and no NS or DS records.</t>
        <t>Please note:
This is an example of an unnecessarily complicated setup to demonstrate the capabilities of the DELEG and DELEGPARAM RR types.</t>
        <artwork><![CDATA[
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegparam=Acfg.example.org.
test.      DELEG include-delegparam=config2.example.net.
test.      RRSIG DELEG 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestDELEG )

test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

; a forgotten glue record from legacy (NS) delegation
; it is NOT present in NSEC chain and it is occluded
a.test.    A     192.0.2.1
]]></artwork>
        <t>Delegations to org and net zones omitted for brevity.</t>
      </section>
      <section anchor="exampleorg-zone-file">
        <name>Example.org zone file</name>
        <t>The following example shows an excerpt from an unsigned example.org zone.</t>
        <artwork><![CDATA[
Acfg.example.org.    DELEGPARAM server-ipv6=2001:DB8::6666
Acfg.example.org.    DELEGPARAM server-name=ns3.example.org.
Acfg.example.org.    DELEGPARAM include-delegparam=subcfg.example.org.

ns3.example.org.       AAAA   3fff::33

subcfg.example.org.  DELEGPARAM server-ipv4=203.0.113.1 server-ipv6=3fff::2
]]></artwork>
      </section>
      <section anchor="examplenet-zone-file">
        <name>Example.net zone file</name>
        <t>The following example shows an excerpt from an unsigned example.net zone.</t>
        <artwork><![CDATA[
ns2.example.net.       A      198.51.100.1

config2.example.net. DELEGPARAM server-name=b.example.org.
]]></artwork>
      </section>
      <section anchor="responses">
        <name>Responses</name>
        <t>The following sections show referral examples:</t>
        <section anchor="do-bit-clear-de-bit-clear">
          <name>DO bit clear, DE bit clear</name>
          <section anchor="query-for-fooexample">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   NS    ns1.example.
example.   NS    ns2.example.net.
example.   NS    ns3.example.org.

;; Additional
ns1.example. A     192.0.2.1
ns1.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="query-for-footest">
            <name>Query for foo.test</name>
            <t>See <xref target="no-ns"/>.</t>
            <artwork><![CDATA[
;; Header: QR AA RCODE=NXDOMAIN
;;

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
.   SOA ...

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
          <section anchor="occluded-example">
            <name>Query for a.test</name>
            <t>A forgotten glue record under the "test." delegation point is occluded by DELEG RRset.</t>
            <artwork><![CDATA[
;; Header: QR AA RCODE=NXDOMAIN
;;

;; Question
a.test.   IN A

;; Answer
;; (empty)

;; Authority
.   SOA ...

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
        </section>
        <section anchor="do-bit-set-de-bit-clear">
          <name>DO bit set, DE bit clear</name>
          <section anchor="query-for-fooexample-1">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DO RCODE=NOERROR
;;

;; Question
foo.example.   IN MX

;; Answer
;; (empty)

;; Authority

example.   NS    ns1.example.
example.   NS    ns2.example.net.
example.   NS    ns3.example.org.
example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )
;; Additional
ns1.example. A     192.0.2.1
ns1.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="legacynxdomain">
            <name>Query for foo.test</name>
            <t>See <xref target="no-ns"/>.</t>
            <t>DELEG-unaware validators would treat this answer as DNSSEC-secure.</t>
            <t>DELEG-aware validators would treat it as DNSSEC-bogus because the DELEG bit in NSEC type bitmap would trigger downgrade attack detection (see <xref target="validator-downgrade-protection"/>).</t>
            <artwork><![CDATA[
;; Header: QR DO AA RCODE=NXDOMAIN
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
.          SOA ...
.          RRSIG SOA ...
test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
          <section anchor="example-occluded">
            <name>Query for a.test</name>
            <t>A forgotten glue record under the "test." delegation point is occluded by DELEG RRset.
This is indicated by NSEC chain which "skips" over the owner name with A RRset.</t>
            <artwork><![CDATA[
;; Header: QR DO AA RCODE=NXDOMAIN
;;

;; Question
a.test.      IN A

;; Answer
;; (empty)

;; Authority
.          SOA ...
.          RRSIG SOA ...
test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
        </section>
        <section anchor="do-bit-clear-de-bit-set">
          <name>DO bit clear, DE bit set</name>
          <section anchor="query-for-fooexample-2">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DE RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.

;; Additional
;; (empty)
]]></artwork>
          </section>
          <section anchor="query-for-footest-1">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR RCODE=NOERROR
;;

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegparam=Acfg.example.org.
test.      DELEG include-delegparam=config2.example.net.

;; Additional
;; (empty)
]]></artwork>
            <t>A follow-up example in <xref target="delegparam-example"/> explains the ultimate meaning of this response.</t>
          </section>
        </section>
        <section anchor="do-bit-set-de-bit-set">
          <name>DO bit set, DE bit set</name>
          <section anchor="query-for-fooexample-3">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DO DE RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.
example.   RRSIG DELEG 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleDELEG/ )
example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 1 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )

;; Additional
ns1.example. A     192.0.2.1
ns1.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="aware-new-delegation-only">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR DO DE RCODE=NOERROR
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegparam=Acfg.example.org.
test.      DELEG include-delegparam=config2.example.net.
test.      RRSIG DELEG 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestDELEG )
test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 1 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

;; Additional
;; (empty)
]]></artwork>
            <t>A follow-up example in <xref target="delegparam-example"/> explains the ultimate meaning of this response.</t>
          </section>
        </section>
      </section>
      <section anchor="delegparam-example">
        <name>DELEGPARAM Interpretation</name>
        <t>In the examples above, the test. DELEG record uses indirection and points to other domain names with DELEGPARAM, A, and AAAA records.
During resolution, a resolver will gradually build set of name servers to contact, as defined in <xref target="slist"/>.</t>
        <t>To visualize the end result of this process, we represent full set of name servers in form of a 'virtual' DELEG RRset.</t>
        <artwork><![CDATA[
test. DELEG server-ipv4=198.51.100.1
test. DELEG server-ipv4=203.0.113.1
test. DELEG server-ipv6=2001:DB8::6666
test. DELEG server-ipv6=3fff::2
; IPv6 address 3fff::33 was de-duplicated (input RRsets listed it twice)
test. DELEG server-ipv6=3fff::33
]]></artwork>
        <t>Implementations are free to use alternative representations for this data, as it is not directly exposed via DNS protocol.</t>
      </section>
    </section>
    <section anchor="test-vectors">
      <name>Test Vectors</name>
      <t>TODO: In what format? Machine readable would be a win. Perhaps a combination of <xref target="RFC8427"/> and <xref target="I-D.peltan-edns-presentation-format"/>?</t>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document is heavily based on past work done by Tim April in
<xref target="I-D.tapril-ns2"/> and thus extends the thanks to the people helping on this which are:
John Levine, Erik Nygren, Jon Reed, Ben Kaduk, Mashooq Muhaimen, Jason Moreau, Jerrod Wiesman, Billy Tiemann, Gordon Marx and Brian Wellington.</t>
      <t>Work on DELEG protocol has started at IETF 118 Hackaton.
Hackaton participants: Christian Elmerot, David Blacka, David Lawrence, Edward Lewis, Erik Nygren, George Michaelson, Jan Včelák, Klaus Darilion, Libor Peltan, Manu Bretelle, Peter van Dijk, Petr Špaček, Philip Homburg, Ralf Weber, Roy Arends, Shane Kerr, Shumon Huque, Vandan Adhvaryu, Vladimír Čunát, Andreas Schulze.</t>
      <t>Other people joined the effort after the initial hackaton: Ben Schwartz, Bob Halley, Paul Hoffman, Miek Gieben, Ray Hunter, Håvard Eidnes, Ted Hardie, Michael Richardson, Florian Obser, Evan Hunt, ...</t>
      <t>The RESINFO extension was contributed by Florian Obser.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
