<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.0.2) -->


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

]>


<rfc ipr="trust200902" docName="draft-simmen-rpp-dns-data-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="RPP DNS data representation">DNS data representation for use in RESTful Provisioning Protocol (RPP)</title>

    <author fullname="Christian Simmen">
      <organization>DENIC eG</organization>
      <address>
        <postal>
          <country>DE</country>
        </postal>
        <email>simmen@denic.de</email>
      </address>
    </author>
    <author fullname="Pawel Kowalik">
      <organization>DENIC eG</organization>
      <address>
        <postal>
          <country>DE</country>
        </postal>
        <email>pawel.kowalik@denic.de</email>
      </address>
    </author>

    <date year="2025" month="July" day="07"/>

    <area>Applications and Real-Time</area>
    <workgroup>rpp</workgroup>
    <keyword>rpp</keyword> <keyword>epp</keyword> <keyword>json</keyword> <keyword>provisioning</keyword> <keyword>host</keyword>

    <abstract>


<?line 84?>

<t>This document proposes a unified, extensible JSON representation for DNS resource records for use in the RESTful Provisioning Protocol (RPP). The aim is to create a single, consistent structure for provisioning all DNS-related data - including delegation, DNSSEC, and other record types - that directly mirrors the DNS data model and being mappable to existing EPP model of requests and responses same time. This approach simplifies the adoption of both current and future DNS features by aligning the provisioning format with the target system, thereby streamlining the management of domain names and related objects within RPP.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        The latest revision of this draft can be found at <eref target="https://github.com/christian-simmen/draft-simmen-rpp-dns-data"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-simmen-rpp-dns-data/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        WG Working Group mailing list (<eref target="mailto:rpp@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/rpp/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/rpp/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/christian-simmen/draft-simmen-rpp-dns-data"/>.</t>
    </note>


  </front>

  <middle>


<?line 88?>

<section anchor="introduction"><name>Introduction</name>

<t>The Extensible Provisioning Protocol (EPP) manages DNS delegation data using distinct object types and extensions. Host Objects <xref target="RFC5732"/> are used for name servers (NS records) and their associated addresses (glue A/AAAA records), while DNSSEC data is handled via a separate security extension <xref target="RFC5910"/>. Name server information can be also directly attached to a domain name as a set of Host Attributes <xref target="RFC5731"/>. More recently, control over Time-to-Live (TTL) values was added through another extension <xref target="RFC9803"/>.</t>

<t>While functional, this segmented approach creates complexity. The DNS landscape itself is evolving, with new transport protocols like DNS-over-HTTPS <xref target="RFC8484"/> and DNS-over-QUIC <xref target="RFC9250"/> driving the need for more sophisticated delegation information, such as the proposed DELEG record type <xref target="I-D.draft-ietf-deleg"/>.</t>

<t>Some registry operators have developed their own proprietary solutions. These include grouping name servers into "sets" for easier management or allowing domains to be provisioned with arbitrary DNS resource records (RR) without formal delegation, which is expanding on Host Attribute model with other resource record types.</t>

<t>The development of the RESTful Provisioning Protocol (RPP) provides an opportunity to address this fragmentation. This document proposes a unified data representation for all DNS-related information, specified in a format that directly mirrors DNS resource records. This approach is not intended to influence existing registry data models, but rather to offer a flexible and consistent structure for the data in the protocol. By unifying the representation of delegation data (NS, A/AAAA glue), DNSSEC information, and other record types, this model can be applied across various contexts. It is designed to be equally applicable whether a registry uses separate host objects, host attributes within a domain, or more abstract concepts like name server sets, thereby simplifying implementation and ensuring adaptability for future developments in the DNS.</t>

</section>
<section anchor="domain-names-in-dns"><name>Domain Names in DNS</name>

<t>DNS domain names are hierarchically ordered label separated by a dot ".". Each label represent the delegation of a subordinate namespace or a host name. DNS resource records <xref target="RFC1035"/> are expressed as a dataset containing:</t>

<t>"NAME" "CLASS" "TYPE" "TTL" "RDLENGTH" "RDATA"</t>

<t>A set of resource records describes the behavior of a namespace. Each resource record shares the same top level format.</t>

<t>NAME      The owner name of the DNS entry which <bcp14>MAY</bcp14> be the domain itself or a subordinate hostname.</t>

<t>CLASS     The RR CLASS</t>

<t>TYPE      The RR TYPE of data present in the RDATA field.</t>

<t>TTL       Time interval a RR may be cached by name servers</t>

<t>RDLENGTH  The length of the RDATA field. RDLENGTH will be safely ignored in RPP</t>

<t>RDATA     The actual payload data. Structures defer for each type.</t>

</section>
<section anchor="json-representation"><name>JSON representation</name>

<section anchor="rules"><name>Rules</name>

<section anchor="dns-data-extending-an-domain-object"><name>DNS data extending an domain object</name>
<t>Delegation data, as well as DNSSEC data, is intended to find it's way into the parent side DNS servers. Because of the strong connection to the provisioned domain object and DNS servers both aspects should be visible in the RPP data model. Therefore the domain object is extended by an array of DNS entries. The properties of an object in this array <bcp14>MUST</bcp14> be a representation of the top level format as described in section 3.2.1 of <xref target="RFC1035"/>. All keys <bcp14>MUST</bcp14> be lowercase. Whitespaces <bcp14>MUST</bcp14> be translated to underscores ("_").</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "",
          "class": "",
          "type": "",
          "ttl": "",
          "rdata": {}
        }
      ]
    }
]]></sourcecode></figure>

</section>
<section anchor="dns-record-structure-representation"><name>DNS record structure representation</name>

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

<t>The owner name of the DNS entry which <bcp14>MAY</bcp14> be the domain itself or a subordinate hostname. A server <bcp14>MUST NOT</bcp14> accept a NAME which is not a subordinate label to the provisioned domain name.</t>

<t>A server <bcp14>MUST</bcp14> accept values as "@", "relative names" and fully qualified domain names (FQDN).</t>

<t>"@" <bcp14>MUST</bcp14> be interpreted as the provisioned domain name.</t>

<t>"relative names" <bcp14>MUST</bcp14> be appended by the server with the provisioned domain name.</t>

<t>"FQDN" identified by a trailing dot (".") <bcp14>MUST NOT</bcp14> be interpreted by the server. A server <bcp14>MUST</bcp14> check if the provided name is a subordinate to the provisioned domain, or the domain itself.</t>

<t>Example:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "a",
          "rdata": {
            "address": "192.0.2.1"
          }
        },
        {
          "name": "www",
          "type": "a",
          "rdata": {
            "address": "192.0.2.2"
          }
        },
        {
          "name": "web.example.com.",
          "type": "a",
          "rdata": {
            "address": "192.0.2.3"
          }
        }
      ]
    }
]]></sourcecode></figure>

<t>The above example implies three resulting records:</t>

<t><list style="symbols">
  <t>An "A" RR for "example.com" ("@") set to 192.0.2.1.</t>
  <t>An "A" RR for "www.example.com" ("www" relative) set to 192.0.2.2.</t>
  <t>An "A" RR for "web.example.com" (FQDN) set to 192.0.2.3.</t>
</list></t>

</section>
<section anchor="class"><name>class</name>

<t>A client <bcp14>SHOULD</bcp14> omit the class. The server <bcp14>MUST</bcp14> assume "IN" as class of a transferred dataset and <bcp14>MAY</bcp14> decline other values. If present the value <bcp14>MUST</bcp14> be chosen from section 3.2.4. (CLASS values) of <xref target="RFC1035"/>.</t>

</section>
<section anchor="type"><name>type</name>

<t>The TYPE of data present in the RDATA. This also implies the expected fields in RDATA.
If present the value <bcp14>MUST</bcp14> chosen from section 3.2.2. (TYPE values) of <xref target="RFC1035"/> or other RFC describing the RR type. Values <bcp14>MUST</bcp14> be converted to lower case.</t>

</section>
<section anchor="ttl"><name>ttl</name>

<t>TTL is considered a operational control (see section 3.1.3 and section 4.3.1 of this document). A server <bcp14>MUST</bcp14> set a default value as TTL and <bcp14>MAY</bcp14> ignore other values send by a client.</t>

</section>
<section anchor="rdlength"><name>rdlength</name>

<t>RDLENGTH specifies the length of the RDATA field and will be ignored in RPP. A client <bcp14>MUST NOT</bcp14> include this field. A server <bcp14>MUST</bcp14> ignore this field if present.</t>

</section>
<section anchor="rdata"><name>rdata</name>

<t>The RDATA structure depends on the TYPE and <bcp14>MUST</bcp14> be expressed as a JSON object. Property names <bcp14>MUST</bcp14> follow the definition of the RDATA described by the corresponding RFC. Property names <bcp14>MUST</bcp14> be translated to lowercase. Whitespaces <bcp14>MUST</bcp14> be translated to underscores ("_").</t>

<t>Example:</t>

<t><list style="symbols">
  <t>Section 3.3.11 (NS RDATA format) of <xref target="RFC1035"/> describes the RDATA of a NS RR having a field named "NSDNAME".</t>
  <t>Section 3.3.9 (MX RDATA format) of <xref target="RFC1035"/> describes the RDATA of a MX RR having the field named "PREFERENCE", "EXCHANGE".</t>
</list></t>

<t>The resulting structure is therefore:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "mx",
          "rdata": {
            "preference": "10",
            "exchange": "mx1.example.net"
          }
        }
      ]
    }
]]></sourcecode></figure>

</section>
</section>
<section anchor="operational-controls"><name>Operational controls</name>

<t>In addition to the regular data a server <bcp14>MAY</bcp14> allow clients to control specific operational behavior. A client <bcp14>MAY</bcp14> add an JSON object with a number of "dns_controls" to the domain object.</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "<name>",
          "type": "<type>",
          "rdata": {
            "rdata_key": "<rdata_value>"
          }
        }
      ],
      "dns_controls": {
        "<named_control>": "<named_control_value>"
      }
    }
]]></sourcecode></figure>

</section>
<section anchor="future-dns-record-types"><name>Future DNS record types</name>

<t>With respect to an evolving DNS landscape new record types - including delegation - may emerge. Usually these record type will be defined and standardized for the DNS in first. Adopting future record types <bcp14>MUST</bcp14> be done using the rules described in section 3.1.2.6 of this document.</t>

</section>
</section>
</section>
<section anchor="use-cases"><name>Use cases</name>

<section anchor="domain-delegation-host-attribute"><name>Domain delegation (Host Attribute)</name>

<t>To enable domain delegation a server <bcp14>MUST</bcp14> support the "NS", "A" and "AAAA" record types (<xref target="RFC1035"/>, <xref target="RFC3596"/>).</t>

<t>In this delegation model the delegation information and corresponding DNS configuration is attached directly to a domain object. This is corresponding to Host Attribute delegation model of <xref target="RFC5731"/>.</t>

<t>A minimal delegation can be expressed by adding an array of name servers to the DNS data of a domain:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns2.example.net."
          }
        }
      ]
    }
]]></sourcecode></figure>

<t>If GLUE records are needed the client may add records of type "A" or "AAAA" :</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns.example.com"
          }
        },
        {
          "name": "ns.example.com.",
          "type": "a",
          "rdata": {
            "address": "192.0.2.1"
          }
        },
        {
          "name": "ns.example.com.",
          "type": "aaaa",
          "rdata": {
            "address": "2001:DB8::1"
          }
        }
      ]
    }
]]></sourcecode></figure>

</section>
<section anchor="host-object"><name>Host Object</name>

<t><xref target="RFC5731"/> specifies how domain delegation can be expressed as a relation to a separate provisioning object (Host Object), which carries the DNS configuration (name and glue records), with details specified in <xref target="RFC5732"/>.</t>

<t>To enable specification of Host Objexts, similar to direct domain delegation, a server <bcp14>MUST</bcp14> support the "NS", "A" and "AAAA" record types (<xref target="RFC1035"/>, <xref target="RFC3596"/>).</t>

<t>DNS configuration of Host Object is specified by NS, A and AAAA configuration within "dns" data structure:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Host",
      "name": "ns.example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns.example.com"
          }
        },
        {
          "name": "ns.example.com.",
          "type": "a",
          "rdata": {
            "address": "192.0.2.1"
          }
        },
        {
          "name": "ns.example.com.",
          "type": "aaaa",
          "rdata": {
            "address": "2001:DB8::1"
          }
        }
      ]
    }
]]></sourcecode></figure>

</section>
<section anchor="dnssec"><name>DNSSEC</name>

<t>To enable DNSSEC provisioning a server <bcp14>SHOULD</bcp14> support either "DS" or "DNSKEY" or both record types. The records <bcp14>MUST</bcp14> be added to the "dns" array of the domain. If provided with only "DNSKEY" a server <bcp14>MUST</bcp14> calculate the DS record. If both record types are provided a server <bcp14>MAY</bcp14> use the DNSKEY to validate the DS record.</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns2.example.net."
          }
        },
        {
          "name": "@",
          "type": "ds",
          "rdata": {
            "key_tag": 12345,
            "algorithm": 13,
            "digest_type": 2,
            "digest": "BE74359954660069D5C632B56F120EE9F3A86764247C"
          }
        }
      ]
    }
]]></sourcecode></figure>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com.",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns2.example.net."
          }
        },
        {
          "name": "@",
          "type": "dnskey",
          "rdata": {
            "flags": 257,
            "protocol": 3,
            "algorithm": 5,
            "public_key": "AwEAAddt2AkL4RJ9Ao6LCWheg8"
          }
        }
      ]
    }
]]></sourcecode></figure>

</section>
<section anchor="operational-controls-1"><name>Operational controls</name>

<section anchor="ttl-1"><name>TTL</name>

<t>The TTL controls the caching behavior of DNS resource records (see Section 5 of <xref target="RFC9499"/>). Typically a default TTL is defined by the registry operator. In some use cases it is desirable for a client to change the TTL value.</t>

<t>A client <bcp14>MAY</bcp14> assign "ttl" to the dns_controls of an RR set which is intended to be present in the parent sides DNS. A server <bcp14>MAY</bcp14> ignore these values e.g. for policy reasons.</t>

<t>Example:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "a",
          "rdata": {
            "address": "192.0.2.1"
          }
        },
        {
          "name": "@",
          "type": "aaaa",
          "rdata": {
            "address": "2001:DB8::1"
          }
        }
      ],
      "dns_controls": {
        "ttl": {
          "a": 86400,
          "aaaa": 3600
       }
      }
    }
]]></sourcecode></figure>

</section>
<section anchor="maximum-signature-lifetime"><name>Maximum signature lifetime</name>

<t>Maximum signature lifetime (maximum_signature_lifetime) describes the maximum number of seconds after signature generation a parents signature on signed DNS information should expire. The maximum_signature_lifetime value applies to the RRSIG resource record over the signed DNS RR. See Section 3 of <xref target="RFC4034"/> for information on the RRSIG resource record.</t>

<t>A client <bcp14>MAY</bcp14> assign "maximum_signature_lifetime" to the dns_controls of an RR set which is intended to be signed on the parent side. A server <bcp14>MAY</bcp14> ignore these values, e.g. for policy reasons.</t>

<t>Example:</t>

<figure><sourcecode type="json"><![CDATA[
    {
      "@type": "Domain",
      "name": "example.com",
      "dns": [
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns1.example.net."
          }
        },
        {
          "name": "@",
          "type": "ns",
          "rdata": {
            "nsdname": "ns2.example.net."
          }
        },
        {
          "name": "@",
          "type": "ds",
          "rdata": {
            "key_tag": 12345,
            "algorithm": 13,
            "digest_type": 2,
            "digest": "BE74359954660069D5C632B56F120EE9F3A86764247C"
          }
        }
      ],
      "dns_controls": {
        "maximum_signature_lifetime": {
          "ds": 86400
        }
      }
    }
]]></sourcecode></figure>

</section>
</section>
<section anchor="authoritative-dns-data"><name>Authoritative DNS data</name>

<t>A server <bcp14>MAY</bcp14> support additional RR types, e.g. to support delegation-less provisioning. By doing this the registry operators name servers becomes authoritative for the registered domain. A server <bcp14>MUST</bcp14> consider resource records designed for delegation - including DNSSEC - and resource records representing authoritative data - except for GLUE RR - mutual exclusive.</t>

<figure><sourcecode type="json"><![CDATA[
{
  "@type": "Domain",
  "name": "example.com",
  "dns": [
    {
      "name": "@",
      "type": "a",
      "rdata": {
        "address": "192.0.2.1"
      }
    },
    {
      "name": "www.example.com.",
      "type": "a",
      "rdata": {
        "address": "192.0.2.1"
      }
    },
    {
      "name": "@",
      "type": "aaaa",
      "rdata": {
        "address": "2001:DB8::1"
      }
    },
    {
      "name": "www.example.com.",
      "type": "a",
      "rdata": {
        "address": "2001:DB8::1"
      }
    },
    {
      "name": "@",
      "type": "mx",
      "rdata": {
        "preference": "10",
        "exchange": "mx1.example.com"
      }
    },
    {
      "name": "mx1.example.com.",
      "type": "a",
      "rdata": {
        "address": "192.0.2.2"
      }
    },
    {
      "name": "@",
      "type": "mx",
      "rdata": {
        "preference": "20",
        "exchange": "mx2.example.net"
      }
    },
    {
      "name": "@",
      "type": "txt",
      "rdata": {
        "txt_data": "v=spf1 -all"
      }
    }
  ]
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="discoverability"><name>Discoverability</name>

<t>The server <bcp14>MUST</bcp14> provide the following information per profile in the discovery document in section 10 of <xref target="I-D.draft-ietf-rpp-requirements"/>:</t>

<t><list style="symbols">
  <t>A list of supported resource record types</t>
  <t>A list of applicable dns_controls</t>
  <t>Minimum, maximum and default values for dns_controls</t>
</list></t>

<t>TODO: Needs rewrite after definition of the discovery document</t>

</section>
<section anchor="epp-compatibility-considerations"><name>EPP compatibility considerations</name>

<t>TODO</t>

</section>
<section anchor="conventions-and-definitions"><name>Conventions and Definitions</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<?line -18?>

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

<section anchor="authoritative-data"><name>Authoritative data</name>

<t>Allowing to store authoritative resource records (see section 4.4 of this document) in the registry provides faster resolution. However, if not done properly situations may occur where the data served authoritative should have been delegated. RPP servers <bcp14>MUST</bcp14> take precautions to not store authoritative and non-authoritative data at the same time.</t>

<t>The types and number of authoritative records can result in uncontrolled growth of the registries zone file and eventually exhaust the hardware resources of the registries name server. RPP servers <bcp14>SHOULD</bcp14> consider limiting the amount of authoritative records and carefully choose which record types are allowed.</t>

</section>
<section anchor="host-references-within-the-rdata-field"><name>Host references within the rdata field</name>

<t>Some RR types (NS, MX and others) use references to host names which can be categorized into three categories:</t>

<t>Domain internal references
are references to a subordinate host name of the domain. E.g. "ns.example.com" is an domain internal reference when used as a name server for "example.com".</t>

<t>Registry internal references
are references to a host name within the same registry. E.g. "ns.example.com" is an domain internal reference when used as a name server for "example2.com".</t>

<t>Registry external references
are references to a host name outside of the registry. E.g. "ns.example.net" is an domain internal reference when used as a name server for "example.com".</t>

<t>Deletion of a host name while still being referenced may lead to severe security risks for the referencing domain.</t>

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

<t>This document has no IANA actions.</t>

</section>
<section anchor="appendix-a-examples-from-current-implementations"><name>Appendix A. Examples from current implementations</name>

<section anchor="epp"><name>EPP</name>

<section anchor="create-domain-using-host-attributes-example"><name>Create domain using host attributes example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
          xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.com</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.com</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.1</domain:hostAddr>
            <domain:hostAddr ip="v6">2001:db8::1</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.com</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>registrantID</domain:registrant>
        <domain:contact type="admin">adminID</domain:contact>
        <domain:contact type="tech">techID</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create
          xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:maxSigLife>604800</secDNS:maxSigLife>
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>13</secDNS:alg>
          <secDNS:digestType>2</secDNS:digestType>
          <secDNS:digest>
            BE74359954660069D5C632B56F120EE9F3A86764247
          </secDNS:digest>
        </secDNS:dsData>
      </secDNS:create>
      <ttl:create xmlns:ttl="urn:ietf:params:xml:ns:epp:ttl-1.0">
        <ttl:ttl for="NS">3600</ttl:ttl>
      </ttl:create>
    </extension>
    <clTRID>clTRID-1234</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "@type": "Domain",
  "name": "example.com",
  "...": "",
  "dns": [
    {
      "name": "@",
      "type": "ns",
      "rdata": {
        "nsdname": "ns1.example.com"
      }
    },
    {
      "name": "ns1.example.com",
      "type": "a",
      "rdata": {
        "address": "192.0.2.1"
      }
    },
    {
      "name": "ns1.example.com",
      "type": "aaaa",
      "rdata": {
        "address": "2001:db8::1"
      }
    },
    {
      "name": "@",
      "type": "ns",
      "rdata": {
        "nsdname": "ns2.example.com"
      }
    },
    {
      "name": "ns2.example.com",
      "type": "a",
      "rdata": {
        "address": "192.0.2.2"
      }
    },
    {
      "name": "@",
      "type": "ds",
      "rdata": {
        "key_tag": 12345,
        "algorithm": 13,
        "digest_type": 2,
        "digest": "BE74359954660069D5C632B56F120EE9F3A86764247"
      }
    }
  ],
  "dns_controls": {
    "maximum_signature_lifetime": {
      "ds": 604800
    },
    "ttl": {
      "ns": 3600
    }
  }
}
]]></sourcecode></figure>

</section>
<section anchor="create-domain-using-host-object-example"><name>Create domain using host object example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
          xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.com</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostObj>ns1.example.net</domain:hostObj>
          <domain:hostObj>ns2.example.net</domain:hostObj>
        </domain:ns>
        <domain:registrant>registrantID</domain:registrant>
        <domain:contact type="admin">adminID</domain:contact>
        <domain:contact type="tech">techID</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create
          xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:maxSigLife>604800</secDNS:maxSigLife>
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>13</secDNS:alg>
          <secDNS:digestType>2</secDNS:digestType>
          <secDNS:digest>
            BE74359954660069D5C632B56F120EE9F3A86764247C
          </secDNS:digest>
        </secDNS:dsData>
      </secDNS:create>
      <ttl:create xmlns:ttl="urn:ietf:params:xml:ns:epp:ttl-1.0">
        <ttl:ttl for="NS">3600</ttl:ttl>
      </ttl:create>
    </extension>
    <clTRID>clTRID-1234</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "@type": "Domain",
  "name": "example.com",
  "...": "",
  "_object_references": {
    "nameserver": [
      {
        "name": "ns1.example.net.",
        "href": "https://rpp.example/nameservers/ns1.example.net",
        "rel": "nameserver"
      },
      {
        "name": "ns2.example.net.",
        "href": "https://rpp.example/nameservers/ns2.example.net",
        "rel": "nameserver"
      }
    ]
  },
  "dns": [
    {
      "name": "@",
      "type": "ds",
      "rdata": {
        "key_tag": 12345,
        "algorithm": 13,
        "digest_type": 2,
        "digest": "BE74359954660069D5C632B56F120EE9F3A86764247C"
      }
    }
  ],
  "dns_controls": {
    "maximum_signature_lifetime": {
      "ds": 604800
    },
    "ttl": {
      "ns": 3600
    }
  }
}
]]></sourcecode></figure>

</section>
<section anchor="create-host-object-example"><name>Create host object example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <host:create
       xmlns:host="urn:ietf:params:xml:ns:host-1.0">
        <host:name>ns1.example.com</host:name>
        <host:addr ip="v4">192.0.2.2</host:addr>
        <host:addr ip="v4">192.0.2.29</host:addr>
        <host:addr ip="v6">1080:0:0:0:8:800:200C:417A</host:addr>
      </host:create>
    </create>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<figure><sourcecode type="json"><![CDATA[
{
    "@type": "Host",
    "...": "",
    "name": "ns1.example.com",
    "dns": [
        {
            "name": "@",
            "type": "a",
            "rdata": {
                "address": "192.0.2.2"
            }
        },
        {
            "name": "@",
            "type": "a",
            "rdata": {
                "address": "192.0.2.29"
            }
        },
        {
            "name": "@",
            "type": "aaaa",
            "rdata": {
                "address": "1080:0:0:0:8:800:200C:417A"
            }
        }
    ]
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="free-registry-for-enum-and-domains-fred"><name>Free Registry for ENUM and Domains (FRED)</name>

<t>FRED is an open source registry software developed by CZ.NIC</t>

<section anchor="create-domain-example"><name>Create domain example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
          xmlns:domain="http://www.nic.cz/xml/epp/domain-1.4">
        <domain:name>example.cz</domain:name>
        <domain:registrant>registrantID</domain:registrant>
        <domain:admin>adminID</domain:admin>
        <domain:nsset>nssetID</domain:nsset>
        <domain:keyset>keysetID</domain:keyset>
      </domain:create>
    </create>
    <clTRID>clTRID-1234</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

</section>
<section anchor="create-nsset-example"><name>Create nsset example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <nsset:create
          xmlns:nsset="http://www.nic.cz/xml/epp/nsset-1.2">
        <nsset:id>nssetID</nsset:id>
        <nsset:ns>
          <nsset:name>ns1.example.cz</nsset:name>
          <nsset:addr>192.0.2.1</nsset:addr>
          <nsset:addr>192.0.2.2</nsset:addr>
        </nsset:ns>
        <nsset:ns>
          <nsset:name>nameserver-example.cz</nsset:name>
        </nsset:ns>
        <nsset:tech>techID</nsset:tech>
        <nsset:reportlevel>1</nsset:reportlevel>
      </nsset:create>
    </create>
    <clTRID>clTRID-1234</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

</section>
<section anchor="create-keyset-example"><name>Create keyset example</name>

<t>EPP XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <keyset:create
          xmlns:keyset="http://www.nic.cz/xml/epp/keyset-1.3">
        <keyset:id>keysetID</keyset:id>
        <keyset:dnskey>
          <keyset:flags>257</keyset:flags>
          <keyset:protocol>3</keyset:protocol>
          <keyset:alg>5</keyset:alg>
          <keyset:pubKey>AwEAAddt2AkL4RJ9Ao6LCWheg8</keyset:pubKey>
        </keyset:dnskey>
        <keyset:dnskey>
          <keyset:flags>257</keyset:flags>
          <keyset:protocol>3</keyset:protocol>
          <keyset:alg>5</keyset:alg>
          <keyset:pubKey>AwEAAddt2AkL4RJ9Ao6LCWheg9</keyset:pubKey>
        </keyset:dnskey>
        <keyset:tech>techID</keyset:tech>
      </keyset:create>
    </create>
    <clTRID>clTRID-1234</clTRID>
  </command>
</epp>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<t>TODO</t>

<figure><sourcecode type="json"><![CDATA[
{}
]]></sourcecode></figure>

</section>
</section>
<section anchor="realtime-registry-interface-rri"><name>Realtime Registry Interface (RRI)</name>

<t>RRI is a proprietary protocol developed by DENIC</t>

<section anchor="create-domain-with-name-servers-example"><name>Create domain with name servers example</name>

<t>RRI XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<registry-request
    xmlns="http://registry.denic.de/global/5.0"
    xmlns:domain="http://registry.denic.de/domain/5.0"
    xmlns:dnsentry="http://registry.denic.de/dnsentry/5.0">
  <domain:create>
    <domain:handle>example.de</domain:handle>
    <domain:contact role="holder">registrantID</domain:contact>
    <dnsentry:dnsentry xsi:type="dnsentry:NS">
      <dnsentry:owner>example.de</dnsentry:owner>
      <dnsentry:rdata>
        <dnsentry:nameserver>ns1.example.com</dnsentry:nameserver>
      </dnsentry:rdata>
    </dnsentry:dnsentry>
    <dnsentry:dnsentry xsi:type="dnsentry:NS">
      <dnsentry:owner>example.de</dnsentry:owner>
      <dnsentry:rdata>
        <dnsentry:nameserver>ns1.example.de</dnsentry:nameserver>
        <dnsentry:address>192.0.2.1</dnsentry:address>
      </dnsentry:rdata>
    </dnsentry:dnsentry>
    <dnsentry:dnsentry xsi:type="dnsentry:DNSKEY">
      <dnsentry:owner>example.de.</dnsentry:owner>
      <dnsentry:rdata>
        <dnsentry:flags>257</dnsentry:flags>
        <dnsentry:protocol>3</dnsentry:protocol>
        <dnsentry:algorithm>5</dnsentry:algorithm>
        <dnsentry:publicKey>
          AwEAAddt2AkL4RJ9Ao6LCWheg8
        </dnsentry:publicKey>
      </dnsentry:rdata>
    </dnsentry:dnsentry>
  </domain:create>
  <ctid>clTRID-1234</ctid>
</registry-request>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "@type": "Domain",
  "name": "example.de",
  "...": "",
  "dns": [
    {
      "name": "@",
      "type": "ns",
      "rdata": {
        "nsdname": "ns1.example.com"
      }
    },
    {
      "name": "@",
      "type": "ns",
      "rdata": {
        "nsdname": "ns1.example.de"
      }
    },
    {
      "name": "ns1.example.de",
      "type": "a",
      "rdata": {
        "address": "192.0.2.1"
      }
    },
    {
      "name": "@",
      "type": "dnskey",
      "rdata": {
        "flags": 257,
        "protocol": 3,
        "algorithm": 5,
        "public_key": "AwEAAddt2AkL4RJ9Ao6LCWheg8"
      }
    }
  ]
}
]]></sourcecode></figure>

</section>
<section anchor="create-domain-without-delegation-example"><name>Create domain without delegation example</name>

<t>RRI XML:</t>

<figure><sourcecode type="xml"><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<registry-request
    xmlns="http://registry.denic.de/global/5.0"
    xmlns:domain="http://registry.denic.de/domain/5.0"
    xmlns:dnsentry="http://registry.denic.de/dnsentry/5.0">
  <domain:update>
    <domain:handle>example.de</domain:handle>
    <domain:contact role="holder">registrantID</domain:contact>
    <dnsentry:dnsentry xsi:type="dnsentry:A">
      <dnsentry:owner>example.de</dnsentry:owner>
      <dnsentry:rdata>
        <dnsentry:address>192.0.2.1</dnsentry:address>
      </dnsentry:rdata>
    </dnsentry:dnsentry>
  </domain:update>
  <ctid>clTRID-1234</ctid>
</registry-request>
]]></sourcecode></figure>

<t>RPP JSON representation:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "@type": "Domain",
  "name": "example.de",
    "...": "",
  "dns": [
    {
      "name": "@",
      "type": "a",
      "rdata": {
        "address": "192.0.2.1"
      }
    }
  ]
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="rdap"><name>RDAP</name>

<section anchor="domain-object"><name>Domain object</name>

<t>Registration Data Access Protocol (RDAP) is described in <xref target="RFC9083"/>. An extention proposing Time-to-Live (TTL) values is described in
<xref target="I-D.draft-brown-rdap-ttl-extension"/> and is close to adoption in the regext working group.</t>

<t>RDAP JSON:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "objectClassName": "domain",
  "ldhName": "example.com",
  "nameservers": [
    {
      "objectClassName": "nameserver",
      "ldhName": "ns1.example.com",
      "ipAddresses": {
        "v4": ["192.0.2.1"],
        "v6": ["2001:db8::1"]
      }
    },
    {
      "objectClassName": "nameserver",
      "ldhName": "ns2.example.com",
      "ipAddresses": {
        "v4": ["192.0.2.2"]
      }
    }
  ],
  "secureDNS": {
    "delegationSigned": true,
    "maxSigLife": 604800,
    "dsData": [
      {
        "keyTag": 12345,
        "algorithm": 13,
        "digestType": 2,
        "digest": "BE74359954660069D5C632B56F120EE9F3A86764247C"
      }
    ]
  },
  "ttl": [
       {
         "types": [ "NS" ],
         "value": 3600
       }
  ],
  "events": [
    {
      "eventAction": "registration",
      "eventDate": "2025-01-01T00:00:00Z"
    },
    {
      "eventAction": "expiration",
      "eventDate": "2035-01-01T00:00:00Z"
    }
  ],
  "status": ["active"]
}
]]></sourcecode></figure>

</section>
</section>
</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<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="RFC5731">
  <front>
    <title>Extensible Provisioning Protocol (EPP) Domain Name Mapping</title>
    <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
    <date month="August" year="2009"/>
    <abstract>
      <t>This document describes an Extensible Provisioning Protocol (EPP) mapping for the provisioning and management of Internet domain names stored in a shared central repository. Specified in XML, the mapping defines EPP command syntax and semantics as applied to domain names. This document obsoletes RFC 4931. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="69"/>
  <seriesInfo name="RFC" value="5731"/>
  <seriesInfo name="DOI" value="10.17487/RFC5731"/>
</reference>

<reference anchor="RFC5732">
  <front>
    <title>Extensible Provisioning Protocol (EPP) Host Mapping</title>
    <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
    <date month="August" year="2009"/>
    <abstract>
      <t>This document describes an Extensible Provisioning Protocol (EPP) mapping for the provisioning and management of Internet host names stored in a shared central repository. Specified in XML, the mapping defines EPP command syntax and semantics as applied to host names. This document obsoletes RFC 4932. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="69"/>
  <seriesInfo name="RFC" value="5732"/>
  <seriesInfo name="DOI" value="10.17487/RFC5732"/>
</reference>

<reference anchor="RFC5910">
  <front>
    <title>Domain Name System (DNS) Security Extensions Mapping for the Extensible Provisioning Protocol (EPP)</title>
    <author fullname="J. Gould" initials="J." surname="Gould"/>
    <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
    <date month="May" year="2010"/>
    <abstract>
      <t>This document describes an Extensible Provisioning Protocol (EPP) extension mapping for the provisioning and management of Domain Name System security (DNSSEC) extensions for domain names stored in a shared central repository. Specified in XML, this mapping extends the EPP domain name mapping to provide additional features required for the provisioning of DNS security extensions. This document obsoletes RFC 4310. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5910"/>
  <seriesInfo name="DOI" value="10.17487/RFC5910"/>
</reference>

<reference anchor="RFC9803">
  <front>
    <title>Extensible Provisioning Protocol (EPP) Mapping for DNS Time-to-Live (TTL) Values</title>
    <author fullname="G. Brown" initials="G." surname="Brown"/>
    <date month="June" year="2025"/>
    <abstract>
      <t>This document describes an extension to the Extensible Provisioning
Protocol (EPP) that allows EPP clients to manage the Time-to-Live
(TTL) value for domain name delegation records.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9803"/>
  <seriesInfo name="DOI" value="10.17487/RFC9803"/>
</reference>

<reference anchor="RFC3596">
  <front>
    <title>DNS Extensions to Support IP Version 6</title>
    <author fullname="S. Thomson" initials="S." surname="Thomson"/>
    <author fullname="C. Huitema" initials="C." surname="Huitema"/>
    <author fullname="V. Ksinant" initials="V." surname="Ksinant"/>
    <author fullname="M. Souissi" initials="M." surname="Souissi"/>
    <date month="October" year="2003"/>
    <abstract>
      <t>This document defines the changes that need to be made to the Domain Name System (DNS) to support hosts running IP version 6 (IPv6). The changes include a resource record type to store an IPv6 address, a domain to support lookups based on an IPv6 address, and updated definitions of existing query types that return Internet addresses as part of additional section processing. The extensions are designed to be compatible with existing applications and, in particular, DNS implementations themselves. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="88"/>
  <seriesInfo name="RFC" value="3596"/>
  <seriesInfo name="DOI" value="10.17487/RFC3596"/>
</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="RFC9083">
  <front>
    <title>JSON Responses for the Registration Data Access Protocol (RDAP)</title>
    <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
    <author fullname="A. Newton" initials="A." surname="Newton"/>
    <date month="June" year="2021"/>
    <abstract>
      <t>This document describes JSON data structures representing registration information maintained by Regional Internet Registries (RIRs) and Domain Name Registries (DNRs). These data structures are used to form Registration Data Access Protocol (RDAP) query responses. This document obsoletes RFC 7483.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="95"/>
  <seriesInfo name="RFC" value="9083"/>
  <seriesInfo name="DOI" value="10.17487/RFC9083"/>
</reference>

<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>

<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC8484">
  <front>
    <title>DNS Queries over HTTPS (DoH)</title>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <author fullname="P. McManus" initials="P." surname="McManus"/>
    <date month="October" year="2018"/>
    <abstract>
      <t>This document defines a protocol for sending DNS queries and getting DNS responses over HTTPS. Each DNS query-response pair is mapped into an HTTP exchange.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8484"/>
  <seriesInfo name="DOI" value="10.17487/RFC8484"/>
</reference>

<reference anchor="RFC9250">
  <front>
    <title>DNS over Dedicated QUIC Connections</title>
    <author fullname="C. Huitema" initials="C." surname="Huitema"/>
    <author fullname="S. Dickinson" initials="S." surname="Dickinson"/>
    <author fullname="A. Mankin" initials="A." surname="Mankin"/>
    <date month="May" year="2022"/>
    <abstract>
      <t>This document describes the use of QUIC to provide transport confidentiality for DNS. The encryption provided by QUIC has similar properties to those provided by TLS, while QUIC transport eliminates the head-of-line blocking issues inherent with TCP and provides more efficient packet-loss recovery than UDP. DNS over QUIC (DoQ) has privacy properties similar to DNS over TLS (DoT) specified in RFC 7858, and latency characteristics similar to classic DNS over UDP. This specification describes the use of DoQ as a general-purpose transport for DNS and includes the use of DoQ for stub to recursive, recursive to authoritative, and zone transfer scenarios.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9250"/>
  <seriesInfo name="DOI" value="10.17487/RFC9250"/>
</reference>

<reference anchor="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>


<reference anchor="I-D.draft-ietf-deleg">
   <front>
      <title>Extensible Delegation for DNS</title>
      <author fullname="Tim April" initials="T." surname="April">
         <organization>Google, LLC</organization>
      </author>
      <author fullname="Petr Špaček" initials="P." surname="Špaček">
         <organization>ISC</organization>
      </author>
      <author fullname="Ralf Weber" initials="R." surname="Weber">
         <organization>Akamai Technologies</organization>
      </author>
      <author fullname="David C Lawrence" initials="" surname="Lawrence">
         <organization>Salesforce</organization>
      </author>
      <date day="7" month="July" year="2025"/>
      <abstract>
	 <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.

   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>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-deleg-01"/>
   
</reference>


<reference anchor="I-D.draft-ietf-rpp-requirements">
   <front>
      <title>RESTful Provisioning Protocol (RPP) - Requirements</title>
      <author fullname="Maarten Wullink" initials="M." surname="Wullink">
         <organization>SIDN Labs</organization>
      </author>
      <author fullname="Paweł Kowalik" initials="P." surname="Kowalik">
         <organization>DENIC</organization>
      </author>
      <date day="30" month="June" year="2025"/>
      <abstract>
	 <t>   This document describes the requirement for the development of the
   RESTful Provisioning Protocol (RPP).

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-rpp-requirements-01"/>
   
</reference>


<reference anchor="I-D.draft-brown-rdap-ttl-extension">
   <front>
      <title>RDAP Extension for DNS Time-To-Live (TTL Values)</title>
      <author fullname="Gavin Brown" initials="G." surname="Brown">
         <organization>ICANN</organization>
      </author>
      <date day="17" month="June" year="2025"/>
      <abstract>
	 <t>   This document describes an extension to the Registration Data Access
   Protocol ([RFC9083]) which allows the Time-To-Live (TTL) values for
   relevant DNS record types to be included in RDAP responses.

About this draft

   This note is to be removed before publishing as an RFC.

   The source for this draft, and an issue tracker, may can be found at
   https://github.com/gbxyz/rdap-ttl-extension.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-brown-rdap-ttl-extension-03"/>
   
</reference>




    </references>

</references>


<?line 1230?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

</section>


  </back>

<!-- ##markdown-source:
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
hgAA

-->

</rfc>

