<?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-rfc2629 version 1.6.5 (Ruby 3.0.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-add-ddr-06" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.3 -->
  <front>
    <title abbrev="DDR">Discovery of Designated Resolvers</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-add-ddr-06"/>
    <author initials="T." surname="Pauly" fullname="Tommy Pauly">
      <organization>Apple Inc.</organization>
      <address>
        <postal>
          <street>One Apple Park Way</street>
          <city>Cupertino, California 95014</city>
          <country>United States of America</country>
        </postal>
        <email>tpauly@apple.com</email>
      </address>
    </author>
    <author initials="E." surname="Kinnear" fullname="Eric Kinnear">
      <organization>Apple Inc.</organization>
      <address>
        <postal>
          <street>One Apple Park Way</street>
          <city>Cupertino, California 95014</city>
          <country>United States of America</country>
        </postal>
        <email>ekinnear@apple.com</email>
      </address>
    </author>
    <author initials="C. A." surname="Wood" fullname="Christopher A. Wood">
      <organization>Cloudflare</organization>
      <address>
        <postal>
          <street>101 Townsend St</street>
          <city>San Francisco</city>
          <country>United States of America</country>
        </postal>
        <email>caw@heapingbits.net</email>
      </address>
    </author>
    <author initials="P." surname="McManus" fullname="Patrick McManus">
      <organization>Fastly</organization>
      <address>
        <email>mcmanus@ducksong.com</email>
      </address>
    </author>
    <author initials="T." surname="Jensen" fullname="Tommy Jensen">
      <organization>Microsoft</organization>
      <address>
        <email>tojens@microsoft.com</email>
      </address>
    </author>
    <date year="2022" month="April" day="04"/>
    <area>Internet</area>
    <workgroup>ADD</workgroup>
    <abstract>
      <t>This document defines Discovery of Designated Resolvers (DDR), a
mechanism for DNS clients to use DNS records to discover a resolver's encrypted
DNS configuration. This mechanism can be used to move from unencrypted DNS to
encrypted DNS when only the IP address of a resolver is known. This mechanism is
designed to be limited to cases where unencrypted resolvers and their designated
resolvers are operated by the same entity or cooperating entities. It can also be used
to discover support for encrypted DNS protocols when the name of an encrypted resolver
is known.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
  Adaptive DNS Discovery Working Group mailing list (add@ietf.org),
  which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/add/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
  <eref target="https://github.com/ietf-wg-add/draft-ietf-add-ddr"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>When DNS clients wish to use encrypted DNS protocols such as DNS-over-TLS (DoT)
<xref target="RFC7858"/> or DNS-over-HTTPS (DoH) <xref target="RFC8484"/>, they require additional
information beyond the IP address of the DNS server, such as the resolver's
hostname, non-standard ports, or URL paths. However, common configuration
mechanisms only provide the resolver's IP address during configuration. Such
mechanisms include network provisioning protocols like DHCP <xref target="RFC2132"/> and
IPv6 Router Advertisement (RA) options <xref target="RFC8106"/>, as well as manual
configuration.</t>
      <t>This document defines two mechanisms for clients to discover designated
resolvers using DNS server Service Binding (SVCB, <xref target="I-D.ietf-dnsop-svcb-https"/>)
records:</t>
      <ol spacing="normal" type="1"><li>When only an IP address of an Unencrypted Resolver is known, the client
queries a special use domain name (SUDN) <xref target="RFC6761"/> to discover DNS SVCB
records associated with one or more Encrypted Resolvers the Unencrypted
Resolver has designated for use when support for DNS encryption is
requested (<xref target="bootstrapping"/>).</li>
        <li>When the hostname of an Encrypted Resolver is known, the client requests
details by sending a query for a DNS SVCB record. This can be used to discover
alternate encrypted DNS protocols supported by a known server, or to provide
details if a resolver name is provisioned by a network (<xref target="encrypted"/>).</li>
      </ol>
      <t>Both of these approaches allow clients to confirm that a discovered Encrypted
Resolver is designated by the originally provisioned resolver. "Designated" in
this context means that the resolvers are operated by the same entity or
cooperating entities; for example, the resolvers are accessible on the same
IP address, or there is a certificate that claims ownership over the 
IP address for the original designating resolver.</t>
      <section anchor="specification-of-requirements">
        <name>Specification of Requirements</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP 14
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when,
they appear in all capitals, as shown here.</t>
      </section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>This document defines the following terms:</t>
      <dl>
        <dt>DDR:</dt>
        <dd>
          <t>Discovery of Designated Resolvers. Refers to the mechanisms defined
in this document.</t>
        </dd>
        <dt>Designated Resolver:</dt>
        <dd>
          <t>A resolver, presumably an Encrypted Resolver, designated by another resolver
for use in its own place. This designation can be verified with TLS certificates.</t>
        </dd>
        <dt>Encrypted Resolver:</dt>
        <dd>
          <t>A DNS resolver using any encrypted DNS transport. This includes current
mechanisms such as DoH and DoT as well as future mechanisms.</t>
        </dd>
        <dt>Unencrypted Resolver:</dt>
        <dd>
          <t>A DNS resolver using TCP or UDP port 53.</t>
        </dd>
      </dl>
    </section>
    <section anchor="dns-service-binding-records">
      <name>DNS Service Binding Records</name>
      <t>DNS resolvers can advertise one or more Designated Resolvers that
may offer support over encrypted channels and are controlled by the same
entity.</t>
      <t>When a client discovers Designated Resolvers, it learns information such as
the supported protocols and ports. This information is provided in ServiceMode
Service Binding (SVCB) records for DNS Servers, although AliasMode SVCB records
can be used to direct clients to the needed ServiceMode SVCB record per
<xref target="I-D.ietf-dnsop-svcb-https"/>. The formatting of these records, including the
DNS-unique parameters such as "dohpath", are defined by <xref target="I-D.ietf-add-svcb-dns"/>.</t>
      <t>The following is an example of an SVCB record describing a DoH server discovered
by querying for <tt>_dns.example.net</tt>:</t>
      <artwork><![CDATA[
_dns.example.net.  7200  IN SVCB 1 example.net. (
     alpn=h2 dohpath=/dns-query{?dns} )
]]></artwork>
      <t>The following is an example of an SVCB record describing a DoT server discovered
by querying for <tt>_dns.example.net</tt>:</t>
      <artwork><![CDATA[
_dns.example.net  7200  IN SVCB 1 dot.example.net (
     alpn=dot port=8530 )
]]></artwork>
      <t>If multiple Designated Resolvers are available, using one or more
encrypted DNS protocols, the resolver deployment can indicate a preference using
the priority fields in each SVCB record <xref target="I-D.ietf-dnsop-svcb-https"/>.</t>
      <t>If the client encounters a mandatory parameter in an SVCB record it does not
understand, it MUST NOT use that record to discover a Designated Resolver. The
client can still use others records in the same response if the client can understand
all of their mandatory parameters. This allows future encrypted deployments to
simultaneously support protocols even if a given client is not aware of all those
protocols. For example, if the Unencrypted Resolver returns three SVCB records, one
for DoH, one for DoT, and one for a yet-to-exist protocol, a client which only supports
DoH and DoT should be able to use those records while safely ignoring the third record.</t>
      <t>To avoid name lookup deadlock, Designated Resolvers SHOULD follow the guidance
in Section 10 of <xref target="RFC8484"/> regarding the avoidance of DNS-based references
that block the completion of the TLS handshake.</t>
      <t>This document focuses on discovering DoH and DoT Designated Resolvers.
Other protocols can also use the format defined by <xref target="I-D.ietf-add-svcb-dns"/>.
However, if any protocol does not involve some form of certificate validation,
new validation mechanisms will need to be defined to support validating
designation as defined in <xref target="verified"/>.</t>
    </section>
    <section anchor="bootstrapping">
      <name>Discovery Using Resolver IP Addresses</name>
      <t>When a DNS client is configured with an Unencrypted Resolver IP address, it
SHOULD query the resolver for SVCB records for "dns://resolver.arpa" before
making other queries. Specifically, the client issues a query for
<tt>_dns.resolver.arpa</tt> with the SVCB resource record type (64)
<xref target="I-D.ietf-dnsop-svcb-https"/>.</t>
      <t>Because this query is for an SUDN, which no entity can claim ownership over,
the ServiceMode SVCB response MUST NOT use the "." value for the TargetName. Instead,
the domain name used for DoT or used to construct the DoH template MUST be provided.</t>
      <t>The following is an example of an SVCB record describing a DoH server discovered
by querying for <tt>_dns.resolver.arpa</tt>:</t>
      <artwork><![CDATA[
_dns.resolver.arpa  7200  IN SVCB 1 doh.example.net (
     alpn=h2 dohpath=/dns-query{?dns} )
]]></artwork>
      <t>The following is an example of an SVCB record describing a DoT server discovered
by querying for <tt>_dns.resolver.arpa</tt>:</t>
      <artwork><![CDATA[
_dns.resolver.arpa  7200  IN SVCB 1 dot.example.net (
     alpn=dot port=8530 )
]]></artwork>
      <t>If the recursive resolver that receives this query has one or more Designated
Resolvers, it will return the corresponding SVCB records. When responding
to these special queries for "dns://resolver.arpa", the recursive resolver
SHOULD include the A and AAAA records for the name of the Designated Resolver
in the Additional Answers section. This will allow the DNS client to make
queries over an encrypted connection without waiting to resolve the Encrypted
Resolver name per <xref target="I-D.ietf-dnsop-svcb-https"/>. If no A/AAAA records or SVCB
IP address hints are included, clients will be forced to delay use of the
Encrypted Resolver until an additional DNS lookup for the A and AAAA records
can be made to the Unencrypted Resolver (or some other resolver the DNS client
has been configured to use).</t>
      <t>If the recursive resolver that receives this query has no Designated Resolvers,
it SHOULD return NODATA for queries to the "resolver.arpa" SUDN.</t>
      <section anchor="use-of-designated-resolvers">
        <name>Use of Designated Resolvers</name>
        <t>When a client discovers Designated Resolvers from an Unencrypted Resolver IP
address, it can choose to use these Designated Resolvers either automatically,
or based on some other policy, heuristic, or user choice.</t>
        <t>This document defines two preferred methods to automatically use Designated
Resolvers:</t>
        <ul spacing="normal">
          <li>Verified Discovery <xref target="verified"/>, for when a TLS certificate can
be used to validate the resolver's identity.</li>
          <li>Opportunistic Discovery <xref target="opportunistic"/>, for when a resolver is accessed
using a non-public IP address.</li>
        </ul>
        <t>A client MAY additionally use a discovered Designated Resolver without
either of these methods, based on implementation-specific policy or user input.
Details of such policy are out of scope of this document. Clients SHOULD NOT
automatically use a Designated Resolver without some sort of validation,
such as the two methods defined in this document or a future mechanism.</t>
        <t>A client MUST NOT use a Designated Resolver designated by one Unencrypted Resolver
in place of another Unencrypted Resolver. As these are known only by IP address,
this means each unique IP address used for unencrypted DNS requires its own
designation discovery. This ensures queries are being sent to a party designated by
the resolver originally being used.</t>
        <t>Generally, clients also SHOULD NOT reuse the Designated Resolver discovered from an
Unencrypted Resolver over one network connection in place of the same Unencrypted
Resolver on another network connection. Instead, clients SHOULD repeat the discovery
process on the other network connection.</t>
        <t>However, if a given Unencrypted Resolver designates a Designated Resolver that uses
a public IP address and can be verified using the mechanism described in <xref target="verified"/>,
it MAY be used on different network connections so long as the subsequent connections
over other networks can also be successfully verified using the mechanism described
in <xref target="verified"/>. This is a tradeoff between performance (by having no delay in
establishing an encrypted DNS connection on the new network) and functionality (if the
Unencrypted Resolver intends to designate different Designated Resolvers based on
the network from which clients connect).</t>
      </section>
      <section anchor="verified">
        <name>Verified Discovery</name>
        <t>Verified Discovery is a mechanism that allows automatic use of a
Designated Resolver that supports DNS encryption that performs a TLS handshake.</t>
        <t>In order to be considered a verified Designated Resolver, the
TLS certificate presented by the Designated Resolver MUST contain the IP address
of the designating Unencrypted Resolver in a subjectAltName extension.
If the certificate can be validated, the client SHOULD use the discovered
Designated Resolver for any cases in which it would have otherwise used the
Unencrypted Resolver. If the Designated Resolver has a different IP
address than the Unencrypted Resolver and the TLS certificate does not cover the
Unencrypted Resolver address, the client MUST NOT automatically use the discovered
Designated Resolver. Additionally, the client SHOULD suppress any further queries for
Designated Resolvers using this Unencrypted Resolver for the length of
time indicated by the SVCB record's Time to Live (TTL).</t>
        <t>If the Designated Resolver and the Unencrypted Resolver share an IP
address, clients MAY choose to opportunistically use the Designated Resolver even
without this certificate check (<xref target="opportunistic"/>).</t>
        <t>If resolving the name of a Designated Resolver from an SVCB record yields an
IP address that was not presented in the Additional Answers section or ipv4hint
or ipv6hint fields of the original SVCB query, the connection made to that IP
address MUST pass the same TLS certificate checks before being allowed to replace
a previously known and validated IP address for the same Designated Resolver name.</t>
      </section>
      <section anchor="opportunistic">
        <name>Opportunistic Discovery</name>
        <t>There are situations where Verified Discovery of encrypted DNS
configuration over unencrypted DNS is not possible. This includes Unencrypted
Resolvers on non-public IP addresses such as those defined in <xref target="RFC1918"/> whose
identity cannot be confirmed using TLS certificates.</t>
        <t>Opportunistic Privacy is defined for DoT in Section 4.1 of <xref target="RFC7858"/> as a
mode in which clients do not validate the name of the resolver presented in the
certificate. A client MAY use information from the SVCB record for
"dns://resolver.arpa" with this "opportunistic" approach (not validating the
names presented in the SubjectAlternativeName field of the certificate) as long
as the IP address of the Encrypted Resolver does not differ from the IP address
of the Unencrypted Resolver. Clients SHOULD use this mode only for resolvers
using non-public IP addresses. This approach can be used for any encrypted DNS
protocol that uses TLS.</t>
      </section>
    </section>
    <section anchor="encrypted">
      <name>Discovery Using Resolver Names</name>
      <t>A DNS client that already knows the name of an Encrypted Resolver can use DDR
to discover details about all supported encrypted DNS protocols. This situation
can arise if a client has been configured to use a given Encrypted Resolver, or
if a network provisioning protocol (such as DHCP or IPv6 Router Advertisements)
provides a name for an Encrypted Resolver alongside the resolver IP address.</t>
      <t>For these cases, the client simply sends a DNS SVCB query using the known name
of the resolver. This query can be issued to the named Encrypted Resolver itself
or to any other resolver. Unlike the case of bootstrapping from an Unencrypted
Resolver (<xref target="bootstrapping"/>), these records SHOULD be available in the public
DNS.</t>
      <t>For example, if the client already knows about a DoT server
<tt>resolver.example.com</tt>, it can issue an SVCB query for
<tt>_dns.resolver.example.com</tt> to discover if there are other encrypted DNS
protocols available. In the following example, the SVCB answers indicate that
<tt>resolver.example.com</tt> supports both DoH and DoT, and that the DoH server
indicates a higher priority than the DoT server.</t>
      <artwork><![CDATA[
_dns.resolver.example.com.  7200  IN SVCB 1 resolver.example.com. (
     alpn=h2 dohpath=/dns-query{?dns} )
_dns.resolver.example.com.  7200  IN SVCB 1 resolver.example.com. (
     alpn=dot )
]]></artwork>
      <t>Clients MUST validate that for any Encrypted Resolver discovered using a
known resolver name, the TLS certificate of the resolver contains the
known name in a subjectAltName extension. In the example above,
this means that both servers need to have certificates that cover
the name <tt>resolver.example.com</tt>. Often, the various supported encrypted
DNS protocols will be specified such that the SVCB TargetName matches the
known name, as is true in the example above. However, even when the
TargetName is different (for example, if the DoH server had a TargetName of
<tt>doh.example.com</tt>), the clients still check for the original known resolver
name in the certificate.</t>
      <t>Note that this resolver validation is not related to the DNS resolver that
provided the SVCB answer.</t>
      <t>As another example, being able to discover a Designated Resolver for a known
Encrypted Resolver is useful when a client has a DoT configuration for
<tt>foo.resolver.example.com</tt> but is on a network that blocks DoT traffic. The
client can still send a query to any other accessible resolver (either the local
network resolver or an accessible DoH server) to discover if there is a designated
DoH server for <tt>foo.resolver.example.com</tt>.</t>
    </section>
    <section anchor="deployment-considerations">
      <name>Deployment Considerations</name>
      <t>Resolver deployments that support DDR are advised to consider the following
points.</t>
      <section anchor="caching-forwarders">
        <name>Caching Forwarders</name>
        <t>A DNS forwarder SHOULD NOT forward queries for "resolver.arpa" upstream. This
prevents a client from receiving an SVCB record that will fail to authenticate
because the forwarder's IP address is not in the upstream resolver's Designated
Resolver's TLS certificate SAN field. A DNS forwarder which already acts as a
completely blind forwarder MAY choose to forward these queries when the operator
expects that this does not apply, either because the operator knows the upstream
resolver does have the forwarder's IP address in its TLS certificate's SAN field
or that the operator expects clients of the unencrypted resolver to use the SVCB
information opportunistically.</t>
        <t>Operators who choose to forward queries for "resolver.arpa" upstream should note
that client behavior is never guaranteed and use of DDR by a resolver does not
communicate a requirement for clients to use the SVCB record when it cannot be
verified.</t>
      </section>
      <section anchor="certificate-management">
        <name>Certificate Management</name>
        <t>Resolver owners that support Verified Discovery will need to list valid
referring IP addresses in their TLS certificates. This may pose challenges for
resolvers with a large number of referring IP addresses.</t>
      </section>
      <section anchor="server-name-handling">
        <name>Server Name Handling</name>
        <t>Clients MUST NOT use "resolver.arpa" as the server name either in the TLS
Server Name Indication (SNI) (<xref target="RFC8446"/>) for DoT or DoH connections,
or in the URI host for DoH requests.</t>
        <t>When performing discovery using resolver IP addresses, clients MUST
use the IP address as the URI host for DoH requests.</t>
        <t>Note that since IP addresses are not supported by default in the TLS SNI,
resolvers that support discovery using IP addresses will need to be
configured to present the appropriate TLS certificate when no SNI is present
for both DoT and DoH.</t>
      </section>
      <section anchor="handling-non-ddr-queries-for-resolverarpa">
        <name>Handling non-DDR queries for resolver.arpa</name>
        <t>DNS resolvers that support DDR by responding to queries for _dns.resolver.arpa
SHOULD treat resolver.arpa as a locally served zone per <xref target="RFC6303"/>.
In practice, this means that resolvers SHOULD respond to queries of any type
other than SVCB for _dns.resolver.arpa with NODATA and queries of any
type for any domain name under resolver.arpa with NODATA.</t>
      </section>
      <section anchor="interaction-with-network-designated-resolvers">
        <name>Interaction with Network-Designated Resolvers</name>
        <t>Discovery of network-designated resolvers (DNR, <xref target="I-D.ietf-add-dnr"/>) allows
a network to provide designation of resolvers directly through DHCP <xref target="RFC2132"/>
          <xref target="RFC8415"/> and IPv6 Router Advertisement (RA) <xref target="RFC4861"/> options. When such
indications are present, clients can suppress queries for "resolver.arpa" to the
unencrypted DNS server indicated by the network over DHCP or RAs, and the DNR
indications SHOULD take precedence over those discovered using "resolver.arpa"
for the same resolver if there is a conflict.</t>
        <t>The designated resolver information in DNR might not contain a full set of
SvcParams needed to connect to an encrypted resolver. In such a case, the client
can use an SVCB query using a resolver name, as described in <xref target="encrypted"/>, to the
authentication-domain-name (ADN).</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Since clients can receive DNS SVCB answers over unencrypted DNS, on-path
attackers can prevent successful discovery by dropping SVCB packets. Clients
should be aware that it might not be possible to distinguish between resolvers
that do not have any Designated Resolver and such an active attack.
To limit the impact of discovery queries being dropped either maliciously or
unintentionally, clients can re-send their SVCB queries periodically.</t>
      <t>DoH resolvers that allow discovery using DNS SVCB answers over unencrypted
DNS MUST NOT provide differentiated behavior based on the HTTP path alone,
since an attacker could modify the "dohpath" parameter.</t>
      <t>While the IP address of the Unencrypted Resolver is often provisioned over
insecure mechanisms, it can also be provisioned securely, such as via manual
configuration, a VPN, or on a network with protections like RA guard
<xref target="RFC6105"/>. An attacker might try to direct Encrypted DNS traffic to itself by
causing the client to think that a discovered Designated Resolver uses
a different IP address from the Unencrypted Resolver. Such a Designated Resolver
might have a valid certificate, but be operated by an attacker that is trying to
observe or modify user queries without the knowledge of the client or network.</t>
      <t>If the IP address of a Designated Resolver differs from that of an
Unencrypted Resolver, clients applying Verified Discovery (<xref target="verified"/>) MUST
validate that the IP address of the Unencrypted Resolver is covered by the
SubjectAlternativeName of the Designated Resolver's TLS certificate.</t>
      <t>Clients using Opportunistic Discovery (<xref target="opportunistic"/>) MUST be limited to cases
where the Unencrypted Resolver and Designated Resolver have the same IP address.</t>
      <t>The constraints on the use of Designated Resolvers specified here apply
specifically to the automatic discovery mechanisms defined in this document, which are
referred to as Verified Discovery and Opportunistic Discovery. Clients
MAY use some other mechanism to verify and use Designated Resolvers discovered
using the DNS SVCB record. However, use of such an alternate mechanism needs
to take into account the attack scenarios detailed here.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <section anchor="special-use-domain-name-resolverarpa">
        <name>Special Use Domain Name "resolver.arpa"</name>
        <t>This document calls for the addition of "resolver.arpa" to the Special-Use
Domain Names (SUDN) registry established by <xref target="RFC6761"/>. This will
allow resolvers to respond to queries directed at themselves rather than a
specific domain name. While this document uses "resolver.arpa" to return SVCB
records indicating designated encrypted capability, the name is generic enough
to allow future reuse for other purposes where the resolver wishes to provide
information about itself to the client.</t>
        <t>The "resolver.arpa" SUDN is similar to "ipv4only.arpa" in that the querying
client is not interested in an answer from the authoritative "arpa" name
servers. The intent of the SUDN is to allow clients to communicate with the
Unencrypted Resolver much like "ipv4only.arpa" allows for client-to-middlebox
communication. For more context, see the rationale behind "ipv4only.arpa" in
<xref target="RFC8880"/>.</t>
        <t>IANA is requested to add an entry in "Transport-Independent Locally-Served
DNS Zones" registry for 'resolver.arpa.' with the description "DNS Resolver
Special-Use Domain", listing this document as the reference.</t>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC7858">
          <front>
            <title>Specification for DNS over Transport Layer Security (TLS)</title>
            <author fullname="Z. Hu" initials="Z." surname="Hu">
              <organization/>
            </author>
            <author fullname="L. Zhu" initials="L." surname="Zhu">
              <organization/>
            </author>
            <author fullname="J. Heidemann" initials="J." surname="Heidemann">
              <organization/>
            </author>
            <author fullname="A. Mankin" initials="A." surname="Mankin">
              <organization/>
            </author>
            <author fullname="D. Wessels" initials="D." surname="Wessels">
              <organization/>
            </author>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <date month="May" year="2016"/>
            <abstract>
              <t>This document describes the use of Transport Layer Security (TLS) to provide privacy for DNS.  Encryption provided by TLS eliminates opportunities for eavesdropping and on-path tampering with DNS queries in the network, such as discussed in RFC 7626.  In addition, this document specifies two usage profiles for DNS over TLS and provides advice on performance considerations to minimize overhead from using TCP and TLS with DNS.</t>
              <t>This document focuses on securing stub-to-recursive traffic, as per the charter of the DPRIVE Working Group.  It does not prevent future applications of the protocol to recursive-to-authoritative traffic.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7858"/>
          <seriesInfo name="DOI" value="10.17487/RFC7858"/>
        </reference>
        <reference anchor="RFC8484">
          <front>
            <title>DNS Queries over HTTPS (DoH)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <author fullname="P. McManus" initials="P." surname="McManus">
              <organization/>
            </author>
            <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="RFC6761">
          <front>
            <title>Special-Use Domain Names</title>
            <author fullname="S. Cheshire" initials="S." surname="Cheshire">
              <organization/>
            </author>
            <author fullname="M. Krochmal" initials="M." surname="Krochmal">
              <organization/>
            </author>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document describes what it means to say that a Domain Name (DNS name) is reserved for special use, when reserving such a name is appropriate, and the procedure for doing so.  It establishes an IANA registry for such domain names, and seeds it with entries for some of the already established special domain names.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6761"/>
          <seriesInfo name="DOI" value="10.17487/RFC6761"/>
        </reference>
        <reference anchor="I-D.ietf-dnsop-svcb-https">
          <front>
            <title>Service binding and parameter specification via the DNS (DNS SVCB and HTTPS RRs)</title>
            <author fullname="Ben Schwartz">
              <organization>Google</organization>
            </author>
            <author fullname="Mike Bishop">
              <organization>Akamai Technologies</organization>
            </author>
            <author fullname="Erik Nygren">
              <organization>Akamai Technologies</organization>
            </author>
            <date day="12" month="October" year="2021"/>
            <abstract>
              <t>   This document specifies the "SVCB" 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 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 [HTTP].
   By providing more information to the client before it attempts to
   establish a connection, these records offer potential benefits to
   both performance and privacy.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-svcb-https-08"/>
        </reference>
        <reference anchor="I-D.ietf-add-svcb-dns">
          <front>
            <title>Service Binding Mapping for DNS Servers</title>
            <author fullname="Benjamin Schwartz">
              <organization>Google LLC</organization>
            </author>
            <date day="1" month="February" year="2022"/>
            <abstract>
              <t>   The SVCB DNS record type expresses a bound collection of endpoint
   metadata, for use when establishing a connection to a named service.
   DNS itself can be such a service, when the server is identified by a
   domain name.  This document provides the SVCB mapping for named DNS
   servers, allowing them to indicate support for new transport
   protocols.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-add-svcb-dns-02"/>
        </reference>
        <reference anchor="RFC1918">
          <front>
            <title>Address Allocation for Private Internets</title>
            <author fullname="Y. Rekhter" initials="Y." surname="Rekhter">
              <organization/>
            </author>
            <author fullname="B. Moskowitz" initials="B." surname="Moskowitz">
              <organization/>
            </author>
            <author fullname="D. Karrenberg" initials="D." surname="Karrenberg">
              <organization/>
            </author>
            <author fullname="G. J. de Groot" initials="G. J." surname="de Groot">
              <organization/>
            </author>
            <author fullname="E. Lear" initials="E." surname="Lear">
              <organization/>
            </author>
            <date month="February" year="1996"/>
            <abstract>
              <t>This document describes address allocation for private internets.  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="5"/>
          <seriesInfo name="RFC" value="1918"/>
          <seriesInfo name="DOI" value="10.17487/RFC1918"/>
        </reference>
        <reference anchor="RFC6303">
          <front>
            <title>Locally Served DNS Zones</title>
            <author fullname="M. Andrews" initials="M." surname="Andrews">
              <organization/>
            </author>
            <date month="July" year="2011"/>
            <abstract>
              <t>Experience with the Domain Name System (DNS) has shown that there are a number of DNS zones that all iterative resolvers and recursive nameservers should automatically serve, unless configured otherwise. RFC 4193 specifies that this should occur for D.F.IP6.ARPA.  This document extends the practice to cover the IN-ADDR.ARPA zones for RFC 1918 address space and other well-known zones with similar characteristics.  This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="163"/>
          <seriesInfo name="RFC" value="6303"/>
          <seriesInfo name="DOI" value="10.17487/RFC6303"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC2132">
          <front>
            <title>DHCP Options and BOOTP Vendor Extensions</title>
            <author fullname="S. Alexander" initials="S." surname="Alexander">
              <organization/>
            </author>
            <author fullname="R. Droms" initials="R." surname="Droms">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>This document specifies the current set of DHCP options.  Future options will be specified in separate RFCs.  The current list of valid options is also available in ftp://ftp.isi.edu/in-notes/iana/assignments. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2132"/>
          <seriesInfo name="DOI" value="10.17487/RFC2132"/>
        </reference>
        <reference anchor="RFC8106">
          <front>
            <title>IPv6 Router Advertisement Options for DNS Configuration</title>
            <author fullname="J. Jeong" initials="J." surname="Jeong">
              <organization/>
            </author>
            <author fullname="S. Park" initials="S." surname="Park">
              <organization/>
            </author>
            <author fullname="L. Beloeil" initials="L." surname="Beloeil">
              <organization/>
            </author>
            <author fullname="S. Madanapalli" initials="S." surname="Madanapalli">
              <organization/>
            </author>
            <date month="March" year="2017"/>
            <abstract>
              <t>This document specifies IPv6 Router Advertisement (RA) options (called "DNS RA options") to allow IPv6 routers to advertise a list of DNS Recursive Server Addresses and a DNS Search List to IPv6 hosts.</t>
              <t>This document, which obsoletes RFC 6106, defines a higher default value of the lifetime of the DNS RA options to reduce the likelihood of expiry of the options on links with a relatively high rate of packet loss.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8106"/>
          <seriesInfo name="DOI" value="10.17487/RFC8106"/>
        </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">
              <organization/>
            </author>
            <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">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="I-D.ietf-add-dnr">
          <front>
            <title>DHCP and Router Advertisement Options for the Discovery of Network-designated Resolvers (DNR)</title>
            <author fullname="Mohamed Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Tirumaleswar Reddy">
              <organization>Akamai</organization>
            </author>
            <author fullname="Dan Wing">
              <organization>Citrix Systems, Inc.</organization>
            </author>
            <author fullname="Neil Cook">
              <organization>Open-Xchange</organization>
            </author>
            <author fullname="Tommy Jensen">
              <organization>Microsoft</organization>
            </author>
            <date day="22" month="March" year="2022"/>
            <abstract>
              <t>   The document specifies new DHCP and IPv6 Router Advertisement options
   to discover encrypted DNS servers (e.g., DNS-over-HTTPS, DNS-over-
   TLS, DNS-over-QUIC).  Particularly, it allows to learn an
   authentication domain name together with a list of IP addresses and a
   set of service parameters to reach such encrypted DNS servers.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-add-dnr-06"/>
        </reference>
        <reference anchor="RFC8415">
          <front>
            <title>Dynamic Host Configuration Protocol for IPv6 (DHCPv6)</title>
            <author fullname="T. Mrugalski" initials="T." surname="Mrugalski">
              <organization/>
            </author>
            <author fullname="M. Siodelski" initials="M." surname="Siodelski">
              <organization/>
            </author>
            <author fullname="B. Volz" initials="B." surname="Volz">
              <organization/>
            </author>
            <author fullname="A. Yourtchenko" initials="A." surname="Yourtchenko">
              <organization/>
            </author>
            <author fullname="M. Richardson" initials="M." surname="Richardson">
              <organization/>
            </author>
            <author fullname="S. Jiang" initials="S." surname="Jiang">
              <organization/>
            </author>
            <author fullname="T. Lemon" initials="T." surname="Lemon">
              <organization/>
            </author>
            <author fullname="T. Winters" initials="T." surname="Winters">
              <organization/>
            </author>
            <date month="November" year="2018"/>
            <abstract>
              <t>This document describes the Dynamic Host Configuration Protocol for IPv6 (DHCPv6): an extensible mechanism for configuring nodes with network configuration parameters, IP addresses, and prefixes. Parameters can be provided statelessly, or in combination with stateful assignment of one or more IPv6 addresses and/or IPv6 prefixes.  DHCPv6 can operate either in place of or in addition to stateless address autoconfiguration (SLAAC).</t>
              <t>This document updates the text from RFC 3315 (the original DHCPv6 specification) and incorporates prefix delegation (RFC 3633), stateless DHCPv6 (RFC 3736), an option to specify an upper bound for how long a client should wait before refreshing information (RFC 4242), a mechanism for throttling DHCPv6 clients when DHCPv6 service is not available (RFC 7083), and relay agent handling of unknown messages (RFC 7283).  In addition, this document clarifies the interactions between models of operation (RFC 7550).  As such, this document obsoletes RFC 3315, RFC 3633, RFC 3736, RFC 4242, RFC 7083, RFC 7283, and RFC 7550.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8415"/>
          <seriesInfo name="DOI" value="10.17487/RFC8415"/>
        </reference>
        <reference anchor="RFC4861">
          <front>
            <title>Neighbor Discovery for IP version 6 (IPv6)</title>
            <author fullname="T. Narten" initials="T." surname="Narten">
              <organization/>
            </author>
            <author fullname="E. Nordmark" initials="E." surname="Nordmark">
              <organization/>
            </author>
            <author fullname="W. Simpson" initials="W." surname="Simpson">
              <organization/>
            </author>
            <author fullname="H. Soliman" initials="H." surname="Soliman">
              <organization/>
            </author>
            <date month="September" year="2007"/>
            <abstract>
              <t>This document specifies the Neighbor Discovery protocol for IP Version 6.  IPv6 nodes on the same link use Neighbor Discovery to discover each other's presence, to determine each other's link-layer addresses, to find routers, and to maintain reachability information about the paths to active neighbors.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4861"/>
          <seriesInfo name="DOI" value="10.17487/RFC4861"/>
        </reference>
        <reference anchor="RFC6105">
          <front>
            <title>IPv6 Router Advertisement Guard</title>
            <author fullname="E. Levy-Abegnoli" initials="E." surname="Levy-Abegnoli">
              <organization/>
            </author>
            <author fullname="G. Van de Velde" initials="G." surname="Van de Velde">
              <organization/>
            </author>
            <author fullname="C. Popoviciu" initials="C." surname="Popoviciu">
              <organization/>
            </author>
            <author fullname="J. Mohacsi" initials="J." surname="Mohacsi">
              <organization/>
            </author>
            <date month="February" year="2011"/>
            <abstract>
              <t>Routed protocols are often susceptible to spoof attacks.  The canonical solution for IPv6 is Secure Neighbor Discovery (SEND), a solution that is non-trivial to deploy.  This document proposes a light-weight alternative and complement to SEND based on filtering in the layer-2 network fabric, using a variety of filtering criteria, including, for example, SEND status.  This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6105"/>
          <seriesInfo name="DOI" value="10.17487/RFC6105"/>
        </reference>
        <reference anchor="RFC8880">
          <front>
            <title>Special Use Domain Name 'ipv4only.arpa'</title>
            <author fullname="S. Cheshire" initials="S." surname="Cheshire">
              <organization/>
            </author>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi">
              <organization/>
            </author>
            <date month="August" year="2020"/>
            <abstract>
              <t>NAT64 (Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers) allows client devices using IPv6 to communicate with servers that have only IPv4 connectivity.</t>
              <t>The specification for how a client discovers its local network's NAT64 prefix (RFC 7050) defines the special name 'ipv4only.arpa' for this purpose. However, in its Domain Name Reservation Considerations section (Section 8.1), that specification (RFC 7050) indicates that the name actually has no particularly special properties that would require special handling.</t>
              <t>Consequently, despite the well-articulated special purpose of the name, 'ipv4only.arpa' was not recorded in the Special-Use Domain Names registry as a name with special properties.</t>
              <t>This document updates RFC 7050. It describes the special treatment required and formally declares the special properties of the name. It also adds similar declarations for the corresponding reverse mapping names.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8880"/>
          <seriesInfo name="DOI" value="10.17487/RFC8880"/>
        </reference>
        <reference anchor="I-D.schinazi-httpbis-doh-preference-hints">
          <front>
            <title>DoH Preference Hints for HTTP</title>
            <author fullname="David Schinazi">
              <organization>Google LLC</organization>
            </author>
            <author fullname="Nick Sullivan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Jesse Kipp">
              <organization>Cloudflare</organization>
            </author>
            <date day="13" month="July" year="2020"/>
            <abstract>
              <t>   When using a publicly available DNS-over-HTTPS (DoH) server, some
   clients may suffer poor performance when the authoritative DNS server
   is located far from the DoH server.  For example, a publicly
   available DoH server provided by a Content Delivery Network (CDN)
   should be able to resolve names hosted by that CDN with good
   performance but might take longer to resolve names provided by other
   CDNs, or might provide suboptimal results if that CDN is using DNS-
   based load balancing and returns different address records depending
   or where the DNS query originated from.  This document attempts to
   lessen these issues by allowing the web server to indicate to the
   client which DoH server can best resolve its addresses.  This
   document defines an HTTP header field that enables web host operators
   to inform user agents of the preferred DoH servers to use for
   subsequent DNS lookups for the host's domain.

   Discussion of this work is encouraged to happen on the ADD IETF
   mailing list add@ietf.org or on the GitHub repository which contains
   the draft: https://github.com/DavidSchinazi/draft-httpbis-doh-
   preference-hints.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-schinazi-httpbis-doh-preference-hints-02"/>
        </reference>
        <reference anchor="I-D.ietf-tls-esni">
          <front>
            <title>TLS Encrypted Client Hello</title>
            <author fullname="Eric Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Kazuho Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Nick Sullivan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Christopher A. Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="13" month="February" year="2022"/>
            <abstract>
              <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

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

   Source for this draft and an issue tracker can be found at
   https://github.com/tlswg/draft-ietf-tls-esni
   (https://github.com/tlswg/draft-ietf-tls-esni).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-14"/>
        </reference>
        <reference anchor="RFC5507">
          <front>
            <title>Design Choices When Expanding the DNS</title>
            <author>
              <organization>IAB</organization>
            </author>
            <author fullname="P. Faltstrom" initials="P." role="editor" surname="Faltstrom">
              <organization/>
            </author>
            <author fullname="R. Austein" initials="R." role="editor" surname="Austein">
              <organization/>
            </author>
            <author fullname="P. Koch" initials="P." role="editor" surname="Koch">
              <organization/>
            </author>
            <date month="April" year="2009"/>
            <abstract>
              <t>This note discusses how to extend the DNS with new data for a new application.  DNS extension discussions too often focus on reuse of the TXT Resource Record Type.  This document lists different mechanisms to extend the DNS, and concludes that the use of a new DNS Resource Record Type is the best solution.  This memo provides information  for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5507"/>
          <seriesInfo name="DOI" value="10.17487/RFC5507"/>
        </reference>
      </references>
    </references>
    <section anchor="rationale">
      <name>Rationale for using SVCB records</name>
      <t>This mechanism uses SVCB/HTTPS resource records <xref target="I-D.ietf-dnsop-svcb-https"/>
to communicate that a given domain designates a particular Designated
Resolver for clients to use in place of an Unencrypted Resolver (using a SUDN)
or another Encrypted Resolver (using its domain name).</t>
      <t>There are various other proposals for how to provide similar functionality.
There are several reasons that this mechanism has chosen SVCB records:</t>
      <ul spacing="normal">
        <li>Discovering encrypted resolver using DNS records keeps client logic for DNS
self-contained and allows a DNS resolver operator to define which resolver names
and IP addresses are related to one another.</li>
        <li>Using DNS records also does not rely on bootstrapping with higher-level
application operations (such as <xref target="I-D.schinazi-httpbis-doh-preference-hints"/>).</li>
        <li>SVCB records are extensible and allow definition of parameter keys. This makes
them a superior mechanism for extensibility as compared to approaches such as
overloading TXT records. The same keys can be used for discovering Designated
Resolvers of different transport types as well as those advertised by
Unencrypted Resolvers or another Encrypted Resolver.</li>
        <li>Clients and servers that are interested in privacy of names will already need
to support SVCB records in order to use Encrypted TLS Client Hello
<xref target="I-D.ietf-tls-esni"/>. Without encrypting names in TLS, the value of encrypting
DNS is reduced, so pairing the solutions provides the largest benefit.</li>
        <li>Clients that support SVCB will generally send out three queries when accessing
web content on a dual-stack network: A, AAAA, and HTTPS queries. Discovering a
Designated Resolver as part of one of these queries, without having to
add yet another query, minimizes the total number of queries clients send. While
<xref target="RFC5507"/> recommends adding new RRTypes for new functionality, SVCB provides
an extension mechanism that simplifies client behavior.</li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAHh5S2IAA81cW3McN3Z+x69AqAeTVTNjSpZkmamtNS3KEROJUkhqnU0q
FWO6MZxe9jRmG92kuSrtb8+5AQ309Eh2diu1W+XVcKYbODg4l+9cgPl8rrqq
q+2JPjirfOHubPug3UqfWV/dNKazpb603tXwvT9QZrls7d2JPju7VKUrGrOB
F8vWrLp5ZbvV3JTlvCzb+fFzVcK7J6qA/79x7cOJ9l2pVLVtT3TX9r57cnz8
3fETZVprTvR509m2sZ26d+3tTev67Yk+PTtTynemKf/H1K6BeR6sV9vqRP9X
54qZ9q7tWrvy8Olhgx/+WynTd2vXniit5/Cf1lXjT/T1Qr83ff1A3zDF126z
eUi+de0NTLjd1hZIKRb0nYfRbXei3zVWfnpv2lv9k+FXiqqDRb3st7btqsbN
9EtTVyvXNpXR3z07fvyUn3J90+HqPzQVsvKqA3545O/pxrZVYegpuzFVDXzZ
IkHfG5xsUbhNvoxXC/1vVdNY0yYLeQVjZF//Y6zE3jJJ+9bycqFPF/on58pk
LS/XbeU7t13bNvuVlvSydn25qkFcsiU9Pn4Mm3nfeNsgScl6rkyjf2xNU6BQ
//YVFOb++7U126q5WVadX6BwZkt4v9Bvi7em6X2yhPemg4Fus1+I/B+N70TW
ZIJNscFHvi/74ta75maXSSC3/2pxZTuCm3xNo7+titZ5t+oyaXJ/gse+34Tf
aAI1n8+1WQL7TNEpdb2uvAY97je26XRpV1UDHPmiHdCHoP9HM23UxhZr01R+
o0Fg9NnFlS7qCsbyML3uvaWvWlu4tqSvShlaG/iWR/vKa9sU7cMWplA0gmtW
1U3fmq5yzUITjcM8Bezr0uLYJQ64gdH0qnUb3TdxGJq1cyr/4n5tG+2a+kF3
a9CO9xqMFRBBEjCQo2G22wZEamfmyquSmMEzAxF1tSFJgr8K44FzMEVrM0ra
yDMwZDhx1eoyslQlP8OLDlSQOL1kGj3sOTAH7DNsRQuM4QdAJvnbyvqFPu+I
J6b2LjBGpZz2/XYLppI2KGfItnVgSV3tmTU4I0oZ8aPRu2tQkTUsR5uqLGur
1CO0360DScYdU+onHC2VhfvKr4NA7CPB98VaG4/fzpHu+fWbK5Azd32kPn78
p8sfX3774tmLT580ixk/8vr6+j099PpI80Mvnr54+unTDNfyAHT/ua+ArbDP
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

-->

</rfc>
