<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-deleg-02" category="std" consensus="true" submissionType="IETF" updates="1034, 1035, 6672, 6840" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.0 -->
  <front>
    <title abbrev="DELEG">Extensible Delegation for DNS</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-deleg-02"/>
    <author initials="T." surname="April" fullname="Tim April">
      <organization>Google, LLC</organization>
      <address>
        <email>ietf@tapril.net</email>
      </address>
    </author>
    <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="2025" month="August" day="15"/>
    <area>Internet</area>
    <workgroup>deleg</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>DNS</keyword>
    <keyword>delegation</keyword>
    <abstract>
      <?line 51?>
<t>A delegation in the Domain Name System (DNS) is a mechanism that enables efficient and distributed management of the DNS namespace. It involves delegating authority over subdomains to specific DNS servers via NS records, allowing for a hierarchical structure and distributing the responsibility for maintaining DNS records.</t>
      <t>An NS record contains the hostname of the nameserver for the delegated namespace. Any facilities of that nameserver must be discovered through other mechanisms. This document proposes a new extensible DNS record type, DELEG, for delegation of the authority for a domain. Future documents then can use this mechanism to use additional information about the delegated namespace and the capabilities of authoritative nameservers for the delegated namespace.</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 55?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the Domain Name System, subdomains within the domain name hierarchy are indicated by delegations to servers which are authoritative for their portion of the namespace.  The DNS records that do this, called NS records, contain hostnames of nameservers, which resolve to addresses.  No other information is available to the resolver. It is limited to connect to the authoritative servers over UDP and TCP port 53. This limitation is a barrier for efficient introduction of new DNS technology.</t>
      <t>The proposed DELEG and DELEGI record types remedy this problem by providing extensible parameters to indicate capabilities and additional information, such as addresses that a resolver may use for the delegated authority. The DELEG record is authoritative and thus signed in the parent side of the delegation making it possible to validate all delegation parameters with DNSSEC.</t>
      <t>This document only shows how a DELEG record can be used instead of or along side a NS record to create a delegation. Future documents can use the extensible 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 addition terms defined here:</t>
        <ul spacing="normal">
          <li>
            <t>legacy name servers: An authoritative server that does not support the DELEG record</t>
          </li>
          <li>
            <t>legacy resolvers: A resolver that does not support the DELEG record</t>
          </li>
          <li>
            <t>DELEG-aware: An authoritative server or resolver that follows the protocol defined in this document</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="deleg-and-delegi-record-types">
      <name>DELEG and DELEGI Record Types</name>
      <t>The DELEG record (whose RRtype is TBD) has Rdata is one field, a list of key-value pairs called "delegation information".
The delegation information field has wire and display formats that are based on the rules in Appendix A of <xref target="RFC9460"/>.
A DELEG record is authoritative for the named zone, and creates a delegation and thus lives in the parent of the named zone.</t>
      <t>The DELEGI record has the identical format as the DELEG record.
The use of the DELEGI record is different from the use of the DELEG record: it gives information about delegation.
DELEGI records are treated like regular authoritative records in their zone.</t>
      <t>Some delegation information key-value pairs are actions that a DELEG-aware resolver takes when it gets a DELEG or DELEGI record.
The actions defined in this document are described briefly here, and more fully described in <xref target="actions"/>.</t>
      <ul spacing="normal">
        <li>
          <t>server-ip4: a set of IPv4 addresses for nameservers of the given zone</t>
        </li>
        <li>
          <t>server-ip6: a set of IPv6 addresses for nameservers of the given zone</t>
        </li>
        <li>
          <t>server-name: the domain name of a nameserver of the given zone; the addresses must be fetched</t>
        </li>
        <li>
          <t>include-name: the domain name of a zone that has more information about the nameservers of the given zone</t>
        </li>
      </ul>
      <t>Future documents might define additional delegation information that are actions, and might also define delegation information key-value pairs that modify actions.</t>
      <t>TODO: Add some introduction comparing how resolvers see legacy delegatation (set of NS and A/AAAA records) and DELEG delegation (DELEG and DELEGI records with server-ip4 and server-ip6 keys)</t>
    </section>
    <section anchor="use-of-deleg-records">
      <name>Use of DELEG Records</name>
      <t>A DELEG RRset MAY be present at a delegation point. The DELEG RRset MAY contain multiple records. DELEG RRsets MUST NOT appear at a zone's apex.</t>
      <t>A DELEG RRset MAY be present with or without NS or DS RRsets at the delegation point.</t>
      <section anchor="resolvers">
        <name>Resolvers</name>
        <section anchor="signaling-deleg-support">
          <name>Signaling DELEG support</name>
          <t>A resolver that is DELEG-aware MUST signal its support by sending the DE bit when iterating.</t>
          <t>This bit is referred to as the "DELEG" (DE) bit.  In the context of the EDNS0 OPT meta-RR, the DE bit is the TBD of the "extended RCODE and flags" portion of the EDNS0 OPT meta-RR, structured as follows (to be updated when assigned):</t>
          <artwork><![CDATA[
            +0 (MSB)                +1 (LSB)
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  0: |   EXTENDED-RCODE      |       VERSION         |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  2: |DO|CO|DE|              Z                       |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
]]></artwork>
          <t>Setting the DE bit to one in a query indicates the resolver understands new DELEG semantics and does not need NS records to follow a referral. The DE bit cleared (set to zero) indicates the resolver is unprepared to handle DELEG and hence can only be served NS, DS and glue in a delegation response.</t>
          <t>Motivation: For a long time there will be both DELEG and NS needed for delegation. As both methods should be configured to get to a proper resolution it is not necessary to send both in a referral response. We therefore purpose an EDNS flag to be use similar to the DO Bit for DNSSEC to be used to signal that the sender understands DELEG and does not need NS or glue information in the referral.</t>
        </section>
        <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 case, a DELEG-aware resolver MUST NOT use NS records even if they happen to be present in cache, even if resolution using DELEG records have failed for any reason. Such fallback from DELEG to NS would invalidate security guarantees of DELEG protocol.</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 DS and DELEG types) retain the same special handling as described in Section 2.6  of <xref target="RFC4035"/>.</t>
          <t>Legacy 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.</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.
That information currently is 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."
Section 3.1.4.1 of <xref target="RFC4035"/> should have explicitly updated Section 5.3.3 of <xref target="RFC1034"/> for the DS RRtype, but failed to do so; this was remedied by <xref target="RFC6672"/>.
This document simply extends this existing behavior to DELEG RRtype as well, and makes this special case explicit.</t>
          <t>When a DELEG RRset exists in a zone, DELEG-aware resolvers ignore the NS RRset for that zone.
This means that the DELEG-aware resolver ignores the NS RRset in the zone's parent as well as any cached NS RRset that the resolver might have gotten by looking in the apex of the zone.</t>
          <t>DELEG and NS RRtypes can be used differently at each delegation level, and DELEG-aware resolvers MUST be able 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 nameservers 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"/>:</t>
          <t>SNAME is the domain name we are searching for.</t>
          <t>SLIST is a structure which describes the name servers and the zone which the resolver is currently trying to query.
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 need to enforce suitable limits to prevent damage even if someone has incorrectly configured some of the data used to create an SLIST.</t>
          <t>This leads to a modified description of find the best servers to ask" from earlier documents for DELEG-aware resolvers.
That description becomes:</t>
          <ol spacing="normal" type="1"><li>
              <t>Determine deepest possible zone cut which can potentially hold the answer for given (query name, type, class) combination:  </t>
              <ol spacing="normal" type="1"><li>
                  <t>Start with SNAME equal to QNAME.</t>
                </li>
                <li>
                  <t>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 th eQTYPE is DELEG or DS, set SNAME to "example.".</t>
                </li>
              </ol>
            </li>
            <li>
              <t>Look for locally-available DELEG and NS RRsets, starting at current SNAME.  </t>
              <ol spacing="normal" type="1"><li>
                  <t>For given SNAME, check for 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), the resolver MUST NOT instead use an NS RRset, even if it is locally available; instead, the resolver MUST treat this case as if no servers were available.</t>
                </li>
                <li>
                  <t>If a given SNAME is proven to not have a DELEG RRset but does have NS RRset, the resolver MUST copy the NS RRset into SLIST.</t>
                </li>
                <li>
                  <t>If SLIST is now populated, stop walking up the DNS tree.
However, if SLIST is not populated, remove leftmost label from SNAME and go back to the first step, using the new (shortened) SNAME.
Do not go back to the first step if doing so would exceed the amount of work that the resolver is configured to do when processing names; see <xref target="too-much-work"/>.</t>
                </li>
              </ol>
            </li>
          </ol>
          <t>The rest of the Step 2's description is not affected by this document.</t>
          <t>(TODO: Determine what to do about ". DELEG" or ". DS" queries, which by definition do not exist.)</t>
        </section>
        <section anchor="actions">
          <name>Actions in Delegation Information</name>
          <t>The DELEG and DELEGI records have four keys that describe actions the resolver takes.
The purpose of these actions is to populate the SLIST with IP addresses of the nameservers for a zone.
The actions defined in this document are:</t>
          <ul spacing="normal">
            <li>
              <t>server-ip4: a set of IPv4 addresses for nameservers of the given zone</t>
            </li>
            <li>
              <t>server-ip6: a set of IPv6 addresses for nameservers of the given zone</t>
            </li>
            <li>
              <t>server-name: the domain name of a nameserver of the given zone; the addresses must be fetched</t>
            </li>
            <li>
              <t>include-name: the domain name of a zone that has more information about the nameservers of the given zone</t>
            </li>
          </ul>
          <t>The presentation values for server-ip4 and server-ip6 are comma-separated list 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-ip4 and server-ip6 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-name are as full-qualified domain names.
The wire formats are the same as the wire formats for domain names, and MUST NOT be compressed.</t>
          <t>If any of these keys are used, it MUST have a value (that is, it cannot be a key with a zero-length value).</t>
          <t>A DELEG or DELEGI record SHOULD have only one of the following:</t>
          <ul spacing="normal">
            <li>
              <t>one server-ip4 key</t>
            </li>
            <li>
              <t>one server-ip6 key</t>
            </li>
            <li>
              <t>one server-ip4 and one server-ip6 key</t>
            </li>
            <li>
              <t>one server-name key</t>
            </li>
            <li>
              <t>one include-name key</t>
            </li>
          </ul>
        </section>
        <section anchor="populating-the-slist-from-deleg-and-delegi-records">
          <name>Populating the SLIST from DELEG and DELEGI Records</name>
          <t>Each individual DELEG record inside a DELEG RRset, or each individual DELEGI record in a DELEGI 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 DELEGI record in a DELEGI RRset, using the following steps:</t>
          <ol spacing="normal" type="1"><li>
              <t>If one or more server-ip4 or server-ip6 actions are present inside the record, copy all the address values from either key into SLIST.
Ignore any server-name or include-name keys that are (erroneously) present in the same record.
Stop processing this record.</t>
            </li>
            <li>
              <t>If a server-name action is present in the record, resolve it into addresses from the resolver cache or using A and AAAA queries.
Copy these addresses into SLIST.
Ignore any include-name keys that are (erroneously) present in the same record.
Stop processing this record.</t>
            </li>
            <li>
              <t>If a include-name action is present in the record, resolve it into a DELEGI RRset from the resolver cache or by sending queries for the domain name in the value of the include-name pair.
Go through these same steps with the result of the DELEGI RRset, 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 remaining records if SLIST already has what the resolver considers a sufficiently large pool of addresses to contact.</t>
        </section>
      </section>
      <section anchor="authoritative-servers">
        <name>Authoritative Servers</name>
        <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).</t>
        <t>The server MUST copy the value of the DE bit from the query into the response.
(TODO: not really necessary protocol-wise, but might be nice for monitoring the deployment?)</t>
        <section anchor="deleg-unaware-clients">
          <name>DELEG-unaware Clients</name>
          <t>DELEG-unaware clients do not use DELEG records for delegation.
When a DELEG-aware authoritative server responds to a DELEG-unaware client, any DELEG record in the response does not create zone cut, is not returned in referral responses, and is not considered authoritative on the parent side of a zone cut. Because of this, DELEG-aware authoritative servers MUST answer as if they are DELEG-unaware.
Please note this instruction does not affect DNSSEC signing, i.e. no special handling for NSEC type bitmap is necessary and DELEG RRtype is accurately represented even for DELEG-unaware clients.</t>
          <t>Two specific cases of DELEG-aware authoritative responding in DELEG-unaware manner are described here.</t>
          <section anchor="deleg-unaware-clients-requesting-qtypedeleg">
            <name>DELEG-unaware Clients Requesting QTYPE=DELEG</name>
            <t>In DELEG-unaware clients, records with the DELEG RRtype are not authoritative on the parent side.
Thus, queries with DE=0 and QTYPE=DELEG MUST result in a legacy referral response.</t>
          </section>
          <section anchor="deleg-unaware-clients-with-deleg-rrs-present-but-no-ns-rrs">
            <name>DELEG-unaware Clients with DELEG RRs Present but No NS RRs</name>
            <t>DELEG-unaware clients might ask for a name which belongs to a zone delegated only with DELEG RRs (that is, without any NS RRs). Such zone is, by definition, not resolvable for DELEG-unaware clients. In this case, the DELEG record itself cannot create a zone cut, and the DELEG-aware authoritative server MUST return a legacy response.</t>
            <t>The legacy response might be confusing for subdomains of zones which actually exist because DELEG-aware clients would get a different answer, namely a delegation. An example of a legacy response is in <xref target="legacynxdomain"/>.</t>
            <t>The authoritative server is RECOMMENDED to supplement these responses to DELEG-unaware resolvers with Extended DNS Error "New Delegation Only".</t>
            <t>TODO: debate if WG wants to do explicit SERVFAIL for this case instead of 'just' EDE.</t>
          </section>
        </section>
        <section anchor="deleg-aware-clients">
          <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 parent side of zone cut. This new zone cut has priority over legacy delegation with NS RRset.</t>
          <section anchor="deleg-aware-clients-requesting-qtypedeleg">
            <name>DELEG-aware Clients Requesting QTYPE=DELEG</name>
            <t>An explicit query for the DELEG RRtype at a delegation point behaves much like query for the DS RRtype: the server answers authoritatively from the parent zone. All previous specifications for special handling queries with QTYPE=DS apply equally to QTYPE=DELEG. In summary, server either provides an authoritative DELEG RRset or proves its non-existence.</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 into the Authority section. Presence of the covering RRSIG follows the normal DNSSEC specification for answers with authoritative zone data.</t>
            <t>Similarly, rules for DS RRset inclusion into referrals apply as specified by DNSSEC protocol.</t>
          </section>
          <section anchor="deleg-aware-clients-with-ns-rrs-present-but-no-deleg-rrs">
            <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. Absence of DELEG RRset must be proven as specified by 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 non-existence of DELEG and DS RRsets.</t>
          </section>
        </section>
      </section>
      <section anchor="dnssec-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 DNSSEC specification apply. In summary: for DNSSEC signing, treat the DELEG RRtype the same way as the DS RRtype.</t>
        <t>In order to protect validators from downgrade attacks this draft introduces a new DNSKEY flag ADT (Authoritative Delegation Types). In zones which contain a DELEG RRset, this flag MUST be set 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 type bitmap as indication of a delegation point, and generalizes applicability of ancestor delegation proof to all RRtypes 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
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 secure DELEG support, and explicitly states that Opt-Out is not applicable to DELEG.
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.  The validator also
MUST 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 NS record is covered by an NSEC3
RR with the Opt-Out flag set. Opt-Out is not applicable to DELEG RRtype
because DELEG records are authoritative at the parent side of a zone cut in the same
way that DS RRtypes are.</t>
        </section>
        <section anchor="referral-downgrade-protection">
          <name>Referral downgrade protection</name>
          <t>When DNSKEY flag ADT is set to 1, a DELEG-aware validator MUST prove the absence of a DELEG RRset in referral responses for a 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. A referral response with an unsigned NS and signed DS RRsets does not require additional proofs of nonexistence according to pre-DELEG DNSSEC specification, and it would have been accepted as a delegation without DELEG RRset.</t>
        </section>
        <section anchor="chaining">
          <name>Chaining</name>
          <t>A Validating Stub Resolver that is DELEG-aware has to use a Security-Aware Resolver that is DELEG-aware and, if it is behind a forwarder, that forwarder has to be security-aware and DELEG-aware as well.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO: Add more here</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>
        <ul spacing="normal">
          <li>
            <t>Names with many subdomains can cause walking up the tree to populate SLIST (<xref target="finding-best"/>) to be burdensome.
To prevent this, the resolver SHOULD NOT walk up more than %%TODO: come up with a number%% labels in order to contribute to SLIST.</t>
          </li>
          <li>
            <t>Long chains of include-name actions (<xref target="actions"/>), and those with circular chains if include-name actions, can be burdensome.
To prevent this, the resolver SHOULD NOT follow more than 3 include-name chains in an RRset when populating SLIST.
Note that include-name chains can have CNAME steps in them; in such a case, a CNAME step is counted the same as a DELEGI step when determining when to stop following a chain.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="changes-to-existing-registries">
        <name>Changes to Existing Registries</name>
        <t>IANA is requested to allocate the DELEG RR in the Resource Record (RR) TYPEs registry, with the meaning of "enhanced delegation information" and referencing this document.</t>
        <t>IANA is requested to assign a new bit in the DNSKEY RR Flags registry (<xref target="RFC4034"/>) for the ADT bit (N), with the description "Authoritative Delegation Types" and referencing this document. For compatibility reasons we request the bit 14 to be used. This value has been proven to work whereas bit 0 was proven to break in practical deployments (because of bugs).</t>
        <t>IANA is requested to assign a bit from the EDNS Header Flags registry (<xref target="RFC6891"/>), with the abbreviation DE, the description "DELEG enabled" and referencing this document.</t>
        <t>IANA is requested to assign a value from the Extended DNS Error Codes (<xref target="RFC8914"/>), with the Purpose "New Delegation Only" and referencing this document.</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>The characters in the registered Name field entry MUST be lowercase alphanumeric or "-".
The name MUST NOT start with "key".</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:  1
Name:  server-ip4
Meaning:  A set of IPv4 addresses of nameservers
Reference:  {{actions}} of this document
Change Controller:  IETF

Number:  2
Name:  server-ip6
Meaning:  A set of IPv6 addresses of nameservers
Reference:  {{actions}} of this document
Change Controller:  IETF

Number:  3
Name:  server-name
Meaning:  The fully-qualified domain name of a nameserver
Reference:  {{actions}} of this document
Change Controller:  IETF

Number:  4
Name:  include-name
Meaning:  The fully-qualified domain of a DELEGI record
Reference:  {{actions}} of this document
Change Controller:  IETF

The registration for number 0 is reserved.
The registration for numbers 65280-65535 is reserved for private use.
]]></artwork>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="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="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="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="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="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="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="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="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="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 446?>

<section anchor="examples">
      <name>Examples</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: Examples of using server-ip4 and server-ip6. Also, examples that show DELEGI records in ns2.example.net and ns3.example.org.</t>
      <artwork><![CDATA[
example.   300 IN DELEG server-name=a.example.
example.   300 IN DELEG include-name=ns2.example.net.
example.   300 IN DELEG include-name=ns3.example.org.
example.   300 IN RRSIG DELEG 13 4 300 20250214164848 (
                        20250207134348 21261 . HyDHYVT5KcqWc7J..= )
example.   300 IN NS    a.example.
example.   300 IN NS    b.example.net.
example.   300 IN NS    c.example.org.
example.   300 IN DS    65163 13 2 5F86F2F3AE2B02...
example.   300 IN RRSIG DS 13 4 300 20250214164848 (
                        20250207134348 21261 . O0k558jHhyrC21J..= )
example.   300 IN NSEC  a.example. NS DS RRSIG NSEC DELEG
example.   300 IN RRSIG NSEC 13 4 300 20250214164848 (
                        20250207134348 21261 . 1Kl8vab96gG21Aa..= )
a.example. 300 IN A     192.0.2.1
a.example. 300 IN AAAA  2001:DB8::1
]]></artwork>
      <t>The "test." delegation point has a DELEG record and no NS record.</t>
      <artwork><![CDATA[
test.      300 IN DELEG include-name=ns2.example.net
test.      300 IN RRSIG DELEG 13 4 300 20250214164848 (
                        20250207134348 21261 . 98Aac9f7A1Ac26Q..= )
test.      300 IN NSEC  a.test. RRSIG NSEC DELEG
test.      300 IN RRSIG NSEC 13 4 300  20250214164848 (
                        20250207134348 21261 . kj7YY5tr9h7UqlK..= )
]]></artwork>
      <section anchor="responses">
        <name>Responses</name>
        <t>The following sections show referral examples:</t>
      </section>
      <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=0
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   300 IN NS    a.example.
example.   300 IN NS    b.example.net.
example.   300 IN NS    c.example.org.

;; Additional
a.example. 300 IN A     192.0.2.1
a.example. 300 IN AAAA  2001:DB8::1
]]></artwork>
        </section>
        <section anchor="query-for-footest">
          <name>Query for foo.test</name>
          <artwork><![CDATA[
;; Header: QR AA RCODE=3
;;

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
.   300 IN 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=0
;;

;; Question
foo.example.   IN MX

;; Answer
;; (empty)

;; Authority

example.   300 IN NS    a.example.
example.   300 IN NS    b.example.net.
example.   300 IN NS    c.example.org.
example.   300 IN DS    65163 13 2 5F86F2F3AE2B02...
example.   300 IN RRSIG DS 13 4 300 20250214164848 (
                        20250207134348 21261 . O0k558jHhyrC21J..= )
;; Additional
a.example. 300 IN A     192.0.2.1
a.example. 300 IN AAAA  2001:DB8::1
]]></artwork>
        </section>
        <section anchor="legacynxdomain">
          <name>Query for foo.test</name>
          <artwork><![CDATA[
;; Header: QR DO AA RCODE=3
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
.          300 IN SOA ...
.          300 IN RRSIG SOA ...
.          300 IN NSEC  aaa NS SOA RRSIG NSEC DNSKEY ZONEMD
.          300 IN RRSIG NSEC 13 4 300
test.      300 IN NSEC  a.test. RRSIG NSEC DELEG
test.      300 IN RRSIG NSEC 13 4 300  20250214164848 (
                        20250207134348 21261 . aBFYask;djf7UqlK..= )

;; 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=0
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   300 IN DELEG server-name=a.example.
example.   300 IN DELEG include-name=ns2.example.net.
example.   300 IN DELEG include-name=ns3.example.org.

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

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
test.      300 IN DELEG include-name=ns2.example.net

;; Additional
;; (empty)
]]></artwork>
        </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=0
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority

example.   300 IN DELEG server-name=a.example.
example.   300 IN DELEG include-name=ns2.example.net.
example.   300 IN DELEG include-name=ns3.example.org.
example.   300 IN RRSIG DELEG 13 4 300 20250214164848 (
                        20250207134348 21261 . HyDHYVT5KcqWc7J..= )
example.   300 IN DS    65163 13 2 5F86F2F3AE2B02...
example.   300 IN RRSIG DS 13 4 300 20250214164848 (
                        20250207134348 21261 . O0k558jHhyrC21J..= )

;; Additional
a.example. 300 IN A     192.0.2.1
a.example. 300 IN AAAA  2001:DB8::1
]]></artwork>
        </section>
        <section anchor="query-for-footest-2">
          <name>Query for foo.test</name>
          <artwork><![CDATA[
;; Header: QR DO DE AA RCODE=0
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
test.      300 IN DELEG include-name=ns2.example.net.
test.      300 IN RRSIG DELEG 13 4 300 20250214164848 (
                        20250207134348 21261 . 98Aac9f7A1Ac26Q..= )
test.      300 IN NSEC  a.test. RRSIG NSEC DELEG
test.      300 IN RRSIG NSEC 13 4 300  20250214164848 (
                        20250207134348 21261 . kj7YY5tr9h7UqlK..= )

;; Additional
;; (empty)
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="acknowledgments-unnumbered">
      <name>Acknowledgments {:unnumbered}</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.</t>
      <t>Other people joined the effort after the initial hackaton: Ben Schwartz, Bob Halley, Paul Hoffman, ...</t>
    </section>
    <section anchor="todo">
      <name>TODO</name>
      <dl>
        <dt>RFC EDITOR:</dt>
        <dd>
          <t>PLEASE REMOVE THE THIS SECTION PRIOR TO PUBLICATION.</t>
        </dd>
      </dl>
      <ul spacing="normal">
        <li>
          <t>Write a security considerations section</t>
        </li>
        <li>
          <t>Change the parameters form temporary to permanent once IANA assigned. Temporary use:
          </t>
          <ul spacing="normal">
            <li>
              <t>DELEG QType code is 65432</t>
            </li>
            <li>
              <t>DELEG EDNS Flag Bit is 3</t>
            </li>
            <li>
              <t>DELEG DNSKEY Flag Bit is 0</t>
            </li>
          </ul>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+096XIbR3r/8RQdqrZMZgGItyWqXGuIpCSuKZImaCtO5U9j
pgGMOZiB5yAFy94nyL5D8gB5it28V76rjxkAFK31buKqqJI1genp/vq7r270
er1OlVSpOVKn7yuTlckoNerEpGaiqyTP1Dgv1MnFsKNHo8LcHamT0/PT151I
V2aSF4sjVVZxpxPnUaZnMEdc6HHVS0w17sU4Ry+FgWXVKevRLClLmLBazGHc
2enNq049j/HpkdrZ3tvv4v8edNXh4ee78L/P9rc7WT0bmeKog6OOOlGelQBf
DeOrojYdgGWvowujYbasMkVmqs59XtxOiryeAyS4fOfWLOC7+Kijem5U7wSB
xG9wX/Cf2O22c2eyGtZSqjGLUgz1O5g+ySbqNT6Eb2c6SWFM/CVuuJ8XOFIX
0fRITatqXh49fYoj8JvkzvTtoKf4xdNRkd+X5mkcP8XVkmpaj44UIe5+wrh7
uoTMkYY3YDgj1a/Cr/ejfPb0MTNUhTFPJ9PeXE9M2ekk84JQWla729vPt3c7
HV1X0xwQ34O1lEoyQPlNXw3mRZLSN0zrm2QWfAcb01nyI6HxSL3O80lquur8
/JieGkYVQvJlpfGlPtIrWOCq/9//Mdd//bO5DZa4MlWhGt83lzkbNqafl3Md
mdsvkzIiagTTX/ffGWCmYO5rnY6V/7I58eBWw5TqxkTTLE/zSQKIChYq7vG9
LzWNQryHS530z/V9YbLIBKud6LskVseq8ai55lCnpgRxk4eyVAXffhnHtJ9O
r9dTelRWhY6qziBgXFhZVVMQ3BzeytQFrKmGi7IyM7UJXL6lklJpNYPtwILl
DMbqSplMg7CXyozHSZSYrFI6i1WcwPzJqK5MDAyeAY/M8FE+5gUuhrQjwnRf
nVWw8l2e3sE0FhoQEGagpFqo/M4UCqQ/JsBKVeWqnJsogRVprtIUMKJUd4lW
8LEwEYhr2VU6TfN7nAr1j1bTxBQkR5FOQeUUdVTVhWnCi6MRxAKAy1GRJSlC
gBPg2hX8Pw458cv0O51B5pdVoGIqhhKmmeZlhTu1O6ddE7Q0JX4lOwZEBSgZ
ZLCmjnBx4Bp+G5AdvD4DUVMjg5BHiB94v5qCSplMVQ7TFp5OZV/dTIF0oF9r
osK8yOd5aZCYmblXJlDZfhuorLqsqLsEa8AnshlPIMYvk6evXtWEV7seYSJT
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
wUOJjMLH253/AfeMNJfRgAAA

-->

</rfc>
