<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.17 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-dnsop-generalized-notify-02" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="Generalized Notifications">Generalized DNS Notifications</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-generalized-notify-02"/>
    <author initials="J." surname="Stenstam" fullname="Johan Stenstam">
      <organization>The Swedish Internet Foundation</organization>
      <address>
        <email>johan.stenstam@internetstiftelsen.se</email>
      </address>
    </author>
    <author initials="P." surname="Thomassen" fullname="Peter Thomassen">
      <organization>deSEC, Secure Systems Engineering</organization>
      <address>
        <email>peter@desec.io</email>
      </address>
    </author>
    <author initials="J." surname="Levine" fullname="John Levine">
      <organization>Standcore LLC</organization>
      <address>
        <email>standards@standcore.com</email>
      </address>
    </author>
    <date/>
    <area>Internet</area>
    <workgroup>DNSOP Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This document extends the use of DNS NOTIFY <xref target="RFC1996"/> beyond conventional
zone transfer hints, bringing the benefits of ad-hoc notifications to DNS
delegation maintenance in general.  Use cases include DNSSEC key rollovers
hints, and quicker changes to a delegation's NS record set.</t>
      <t>To enable this functionality, a method for discovering the receiver endpoint
for such notification message is introduced, via the new NOTIFY record type.</t>
      <t>TO BE REMOVED: This document is being collaborated on in Github at:
<eref target="https://github.com/peterthomassen/draft-ietf-dnsop-generalized-notify">https://github.com/peterthomassen/draft-ietf-dnsop-generalized-notify</eref>.
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>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Traditional DNS notifications <xref target="RFC1996"/>, which are here referred to as
"NOTIFY(SOA)", are sent from a primary server to a secondary server to
minimize the latter's convergence time to a new version of the
zone. This mechanism successfully addresses a significant inefficiency
in the original protocol.</t>
      <t>Today similar inefficiencies occur in new use cases, in particular delegation
maintenance (DS and NS record updates). Just as in the NOTIFY(SOA) case, a new
set of notification types will have a major positive benefit by
allowing the DNS infrastructure to completely sidestep these
inefficiencies. For additional context, see <xref target="context"/>.</t>
      <t>No DNS protocol changes are introduced by this document. The mechanism
instead makes use of a wider range of DNS messages allowed by the protocol.
Future extension for further use cases (such as multi-signer key exchange)
is possible.</t>
      <t>Readers are expected to be familiar with DNSSEC, including <xref target="RFC4033"/>,
<xref target="RFC4034"/>, <xref target="RFC4035"/>, <xref target="RFC6781"/>, <xref target="RFC7344"/>, <xref target="RFC7477"/>,
<xref target="RFC7583"/>, and <xref target="RFC8901"/>.</t>
      <section anchor="design-requirements">
        <name>Design Requirements</name>
        <t>When the parent is interested in notifications for delegation
maintenance (such as for DS or NS updates), a service will need to be
made available for accepting these notifications. Depending on the
context, this service may be run by the parent zone operator themselves,
or by a designated entity who is in charge of handling the domain's
delegation data (such as a domain registrar).</t>
        <t>It seems desirable to minimize the number of steps that the notification
sender needs to figure out where to send the NOTIFY. This suggests that
the lookup process be ignorant of the details of the parent-side
relationships (e.g., whether there is a registrar or not). This is
addressed by parameterizing the lookup with the name of the child. The
parent may then (optionally) announce the notification endpoint in a
delegation-specific way, that is, at a child-specific name. (A catch-all
endpoint may be indicated by wildcarding.)</t>
        <t>The solution proposed here is thus for the parent to publish the address
where it listens for notifications, in a child-specific way (see
<xref target="signaling"/>). Potential senders, knowing the name of the parent zone,
can then simply look up that information (see <xref target="discovery"/>).</t>
      </section>
      <section anchor="requirements-notation">
        <name>Requirements Notation</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      </section>
    </section>
    <section anchor="dsyncrdtype">
      <name>DSYNC RR Type</name>
      <section anchor="wire-format">
        <name>Wire Format</name>
        <t>The DSYNC RDATA wire format is encoded as follows:</t>
        <artwork><![CDATA[
                     1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RRtype                        | Scheme        | Port
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                | Target ...  /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-/
]]></artwork>
        <dl>
          <dt>RRtype</dt>
          <dd>
            <t>The type of generalized NOTIFY that this DSYNC RR defines the
desired target address for (see "Resource Record (RR) TYPEs" IANA
registry). For now, only CDS and CSYNC are supported values, with
the former indicating an updated CDS or CDNSKEY record set.</t>
          </dd>
          <dt>Scheme</dt>
          <dd>
            <t>The scheme indicates the mode used for locating the desired
notification address.  This is an 8 bit unsigned integer. Records
with value 0 (null scheme) are ignored by consumers.  Value 1 is
described in this document, and values 128-255 are reserved for
private use.  All other values are currently unspecified.</t>
          </dd>
          <dt>Port</dt>
          <dd>
            <t>The port on the target host of the notification service. This
is a 16 bit unsigned integer in network byte order.</t>
          </dd>
          <dt>Target</dt>
          <dd>
            <t>The fully-qualified, uncompressed domain name of the target host
providing the service of listening for generalized notifications of the
specified type. This name MUST resolve to one or more address records.</t>
          </dd>
        </dl>
      </section>
      <section anchor="semantics">
        <name>Semantics</name>
        <t>For now, the only scheme defined is scheme=1 with the interpretation
that when a new CDS/CDNSKEY (or CSYNC) is published, a NOTIFY(CDS)
(or NOTIFY(CSYNC)) should be sent to the address and port listed in
the corresponding NOTIFY RRset.</t>
        <t>Example (for the owner names of these records, see <xref target="signaling"/>):</t>
        <artwork><![CDATA[
IN DSYNC CDS   1 5359 cds-scanner.example.net.
IN DSYNC CSYNC 1 5360 csync-scanner.example.net.
]]></artwork>
        <t>Should a need for other mechanisms arise, other schemes may be defined
to deal with such requirements using alternative logic.</t>
      </section>
      <section anchor="rationale">
        <name>Rationale</name>
        <t>(RFC Editor: This subsection is to be removed before publication)</t>
        <t>It may look like it's possible to store the same information in an SRV
record. However, this would require indicating the RRtype via a label in
the owner name, leading to name space pollution. It would also require
changing the semantics of one of the integer fields of the SRV record.</t>
        <t>Such overloading has not been a good idea in the past. Furthermore, as
the generalized notifications are a new proposal with no prior
deployments, there is an opportunity to avoid repeating mistakes.</t>
        <t>The DSYNC record type also provides a cleaner solution for bundling all
the new types of notification signaling in one RRset, like:</t>
        <artwork><![CDATA[
IN DSYNC  CDS     1  59   scanner.example.net.
IN DSYNC  CSYNC   1  59   scanner.example.net.
]]></artwork>
        <t>For DSYNC records indicating CDS/CDNSKEY/CSYNC notification targets, no
special processing needs to be applied by the authoritative nameserver
upon insertion of a DSYNC record. The nameserver can thus be "unaware".</t>
        <t>Future use cases (such as for multi-signer key exchange) may require the
nameserver to trigger special operations, for example when a DSYNC
record is inserted during onboarding of a new signer. It seems cleaner
and easier that such processing be associated with the insertion of a
record of a new type, not an existing type like SRV.</t>
      </section>
    </section>
    <section anchor="publication-of-notification-targets">
      <name>Publication of Notification Targets</name>
      <t>To use generalized notifications, it is necessary for the sender to know
where to direct each NOTIFY message. This section describes the
procedure for discovering that notification target.</t>
      <t>Note that generalized NOTIFY messages are but one mechanism for
improving the efficiency of automated delegation maintenance. Other
alternatives alternatives, such as contacting the parent via an API or
DNS Update (<xref target="RFC2136"/>), may (or may not) be more suitable in
individual cases. Like generalized notifications, they similarly require
a means for discovering where to send the API or DNS Update requests.</t>
      <t>The scope for the publication mechanism is therefore wider than only to
support generalized notifications, and a unified approach that works
independently of the notification method is specified in this section.</t>
      <section anchor="signaling">
        <name>Signaling Method</name>
        <t>Parents participating in the discovery scheme for the purpose of
delegation maintenance notifications MUST publish endpoint information
using the record type defined in <xref target="dsyncrdtype"/>. A parent MUST NOT
publish more than one DSYNC record for each combination of rrtype and
scheme.</t>
        <t>If the parent itself performs CDS/CDNSKEY or CSYNC processing, or if
the parent forwards the notifications internally to the designated party
(such as as registrar), the following scheme is used:</t>
        <artwork><![CDATA[
*._dsync.example.  IN DSYNC  CDS   scheme port target
*._dsync.example.  IN DSYNC  CSYNC scheme port target
]]></artwork>
        <t>It is RECOMMENDED to secure the corresponding zone with DNSSEC.</t>
        <t>It is also possible to publish child-specific records, where the
wildcard label is replaced by the child's FQDN with the parent zone's
labels stripped.</t>
        <t>As an example, consider a registrar offering domains like
<tt>child.example</tt>, delegated from <tt>example</tt> zone. If the registrar
provides the notification endpoint, e.g., <tt>rr-endpoint.example:5300</tt>,
the parent may publish this information as follows:</t>
        <artwork><![CDATA[
child._dsync.example.  IN DSYNC  CDS  1 5300 rr-endpoint.example.
]]></artwork>
        <t>In case the parent does not need child-specificity, the wildcard label
may be dropped from the DSYNC owner name (i.e., it may be published at
the <tt>_dsync</tt> label instead). While this practice enables zone structures
without wildcards, it also requires an additional step during discovery
(see <xref target="discovery"/>), and is therefore NOT RECOMMENDED.</t>
        <t>For practical purposes, the parent MAY delegate the <tt>_dsync</tt> domain as a
separate zone, and/or synthesize records under it. If child-specificity
is not needed, the parent can publish a wildcard DSYNC record.</t>
        <t>To accommodate indirect delegation management models, the parent's
designated notification target may relay notifications to a third party
(such as the registrar, in ICANN's model). The details of such
arrangements are out of scope for this document.</t>
      </section>
    </section>
    <section anchor="delegation-maintenance-cdscdnskey-and-csync-notifications">
      <name>Delegation Maintenance: CDS/CDNSKEY and CSYNC Notifications</name>
      <t>Delegation maintenance notifications address the inefficiencies related
to scanning child zones for CDS/CDNSKEY records <xref target="RFC7344"/>. (For an
overview of the issues, see <xref target="context"/>.)</t>
      <t>Delegation maintenance NOTIFY messages MUST be formatted as described in
<xref target="RFC1996"/>, with the <tt>qtype</tt> field replaced as appropriate.</t>
      <t>To address the CDS/CDNSKEY dichotomy, the NOTIFY(CDS) message (with
<tt>qtype=CDS</tt>) is defined to indicate any child-side changes pertaining
to an upcoming update of DS records. Upon receipt of NOTIFY(CDS), the
recipient (the parent registry or a registrar) SHOULD initiate the same DNS
lookups and verifications that would otherwise be triggered based on a
timer.</t>
      <t>The CSYNC <xref target="RFC7477"/> inefficiency may be similarly treated, with the
child sending a NOTIFY(CSYNC) message (with <tt>qtype=CSYNC</tt>) to an address
where the parent (or a registrar) is listening to CSYNC notifications.</t>
      <t>In both cases the notification will speed up processing times by
providing the recipient with a hint that a particular child zone has
published new CDS, CDNSKEY and/or CSYNC records.</t>
      <section anchor="discovery">
        <name>Endpoint Discovery</name>
        <t>To locate the target for outgoing delegation maintenance notifications,
the notification sender MUST perform the following procedure:</t>
        <ol spacing="normal" type="1"><li>
            <t>Construct the lookup name, by injecting the <tt>_dsync</tt> label after the
first label of the delegation owner name.</t>
          </li>
          <li>
            <t>Perform a lookup of type DSYNC for the lookup name, and validate the
response if DNSSEC is enabled. If a DSYNC RRset results, return it.</t>
          </li>
          <li>
            <t>If the query resulted in a negative response:  </t>
            <ul spacing="normal">
              <li>
                <t>If the response's SOA record indicates that the parent is more than
one label away from the <tt>_dsync</tt> label, construct a new lookup name
by inserting the <tt>_dsync</tt> label into the delegation owner name just
before the parent zone labels inferred from the negative response,
and go to step 2.      </t>
                <t>
For example, <tt>city.ise.mie.jp</tt> is delegated from <tt>jp</tt> (and not
from <tt>ise.mie.jp</tt> or <tt>mie.jp</tt>!). The initial DSYNC query relating
to it is thus directed at <tt>city._dsync.ise.mie.jp</tt>. This is
expected to result in a negative response from <tt>jp</tt>, and another
query for <tt>city.ise.mie._dsync.jp</tt> is then required;</t>
              </li>
              <li>
                <t>Otherwise, if the lookup name has any labels in front of the
<tt>_dsync</tt> label, remove them to construct a new lookup name (such
as <tt>_dsync.jp</tt>), and go to step 2.
(This is to enable zone structures without wildcards.)</t>
              </li>
              <li>
                <t>Otherwise, return null (no notification target available).</t>
              </li>
            </ul>
          </li>
        </ol>
      </section>
      <section anchor="sending-notifications">
        <name>Sending Notifications</name>
        <t>When changing a CDS/CDNSKEY/CSYNC RRset in the child zone, the DNS
operator SHOULD send a suitable NOTIFY message to the endpoint located
as described in the previous section.</t>
        <t>A NOTIFY message can only carry information about changes concerning one
child zone. When there are changes to several child zones, the sender
MUST send a separate notification for each one.</t>
        <t>When a primary name server publishes a new RRset in the child, there
typically is a time delay until all publicly visible copies of the zone
will have been updated. If the primary sends a NOTIFY at the exact
time of publication of the new zone, there is a potential for the
parent to attempt CDS/CDNSKEY/CSYNC processing before the updated zone
is visible. In this case the parent may draw the wrong conclusion (“the
CDS RRset has not been updated”).</t>
        <t>It is therefore RECOMMENDED that the child delays sending NOTIFY
messages to the recipient until a consistent public view of the pertinent
records is ensured.</t>
        <section anchor="timeouts-and-error-handling">
          <name>Timeouts and Error Handling</name>
          <t>NOTIFY messages are expected to elicit a response from the recipient
(<xref target="RFC1996"/> Section 4.7). If no response is received, senders SHOULD
employ the same logic as for SOA notifications (<xref target="RFC1996"/> Sections
3.5 and 3.6).</t>
          <t>The parent's attempt to act upon the delegation update request may fail
for a variety of reasons (e.g., due to violation of the continuity
requirement set forth in <xref target="RFC7344"/> Section 4.1). Such failures may
occur asynchronously, even after the NOTIFY response has been sent.</t>
          <t>In order to learn about such failures, senders MAY include an
<xref target="RFC9567"/> EDNS0 Report-Channel option in the NOTIFY message to
request the receiving side to report any errors by making a report query
with an appropriate extended DNS error code as described in
<xref target="RFC8914"/>. When including this EDNS0 option, its agent domain MUST
be subordinate or equal to one of the NS hostnames, as listed in the
child's delegation in the parent zone.</t>
        </section>
        <section anchor="roles">
          <name>Roles</name>
          <t>Because of the security model where a notification by itself never
causes a change (it can only speed up the time until the next
check for the same thing), the sender's identity is not crucial.
This opens up the possibility of having an arbitrary party (e.g., a
side-car service) send the notifications, enabling this functionality
even before the emergence of native support in nameserver software.</t>
          <t>While the CDS/CDNSKEY/CSYNC processing following the receipt of a NOTIFY
will often be performed by the registry, the protocol anticipates that
in some contexts (especially for ICANN gTLDs), registrars may take on
the task. In such cases, the parent may publish the current registrar
notification endpoint, enabling notifications to be directed to the
appropriate target. The mechanics of how this is arranged between
registry and registrar are out of scope for this document; the protocol
only offers the possibility to arrange things such that from the child
perspective, it is inconsequential how the parent-side parties are
organized: notifications are simply sent to the published address.</t>
          <t>In the general case, the child DNS operator is unaware of whether the
parent consumes CDS records or prefers CDNSKEY, or when that policy
changes. It therefore seems advisable to publish both types of records,
preferably using automation features of common authoritative nameserver
software for ensuring consistency.</t>
        </section>
        <section anchor="rationale-for-using-the-dns-message-format">
          <name>Rationale for Using the DNS Message Format</name>
          <t>(RFC Editor: This subsection is to be removed before publication)</t>
          <t>In the most common cases of using generalized notifications the
recipient is expected to not be a nameserver, but rather some other
type of service, like a CDS/CSYNC scanner.</t>
          <t>However, this will likely not always be true. In particular it seems
likely that in cases where the parent is not a large
delegation-centric zone like a TLD, but rather a smaller zone with a
small number of delegations there will not be separate services for
everything and the recipient of the NOTIFY(CDS) or NOTIFY(CSYNC) will
be an authoritative nameserver for the parent zone.</t>
          <t>For this reason it seems most reasonable to stay within the the well
documented and already supported message format specified in RFC 1996
and delivered over normal DNS transport, although not necessarily to
port 53.</t>
        </section>
      </section>
      <section anchor="processing-of-notify-messages">
        <name>Processing of NOTIFY Messages</name>
        <t>NOTIFY(CDS) messages carrying notification payloads (records) for
several child zones MUST be discarded, as sending them is an error.</t>
        <t>Upon receipt of a (potentially forwarded) valid NOTIFY(CDS) message for
a particular child zone at the published address for CDS notifications,
the receiving side (parent registry or registrar) has two options:</t>
        <ol spacing="normal" type="1"><li>
            <t>Acknowledge receipt by sending a NOTIFY response as described in
<xref target="RFC1996"/> Section 4.7 (identical to NOTIFY query, but with QR
bit set) and schedule an immediate check of the CDS and CDNSKEY
RRsets as published by that particular child zone.  </t>
            <t>
If the NOTIFY message contains an <xref target="RFC9567"/> EDNS0 Report-Channel
option with an agent domain subordinate or equal to one of the NS
hostnames listed in the delegation, the processing party SHOULD
report any errors occuring during CDS/CDNSKEY processing by sending
a report query with an appropriate extended DNS error code as
described in <xref target="RFC8914"/>.  </t>
            <t>
If the check finds that the CDS/CDNSKEY RRset has indeed changed,
the parent MAY reset the scanning timer for children for which
NOTIFY(CDS) is received, or reduce the periodic scanning frequency
accordingly (e.g. to every two weeks).
This will decrease the scanning effort for the parent.
If a CDS/CDNSKEY change is then detected (without having received
a notification), the parent SHOULD clear that state and revert to
the default scanning schedule.  </t>
            <t>
Parents introducing CDS/CDNSKEY scanning support at the same time
as NOTIFY(CDS) support are not in danger of breaking children's
scanning assumption, and MAY therefore use a low-frequency
scanning schedule in default mode.</t>
          </li>
          <li>
            <t>Do not act upon the notification. To prevent retries, recipients
SHOULD acknowledge the notification by sending a NOTIFY response
even when otherwise ignoring the request, combined with a report
query if feasible (see above). One reason to do this may be a rate
limit (see <xref target="security"/>), in which case "Blocked" (15) maybe a
suitable extended DNS error code.</t>
          </li>
        </ol>
        <t>If the parent implements the first option, the convergence time (time
between publication of a new CDS/CDNSKEY record in the child and
propagation of the resulting DS) will decrease significantly, thereby
providing improved service to the child zone.</t>
        <t>If the parent, in addition to scheduling an immediate check for the
child zone of the notification, also choses to modify the scanning
schedule (to be less frequent), the cost of providing the scanning
service will be reduced.</t>
        <t>Upon receipt of a NOTIFY(CSYNC) to the published address for CSYNC
notifications, the same options and considerations apply as for the
NOTIFY(CDS).</t>
      </section>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>The original NOTIFY specification sidesteps most security issues by not
relying on the information in the NOTIFY message in any way, and instead
only using it to "enter the state it would if the zone's refresh timer
had expired" (<xref section="4.7" sectionFormat="of" target="RFC1996"/>).</t>
      <t>This security model is reused for generalized NOTIFY messages. It
therefore seems impossible to affect the behaviour of the recipient of
the NOTIFY other than by hastening the timing for when different checks
are initiated.</t>
      <t>The receipt of a notification message will, in general, cause the
receiving party to perform one or more outbound queries for the records
of interest (for example, NOTIFY(CDS) will cause CDS/CDNSKEY
queries). When done using standard DNS, the size of these queries is
comparable to that of the NOTIFY messages themselves, rendering any
amplification attempts futile. The number of queries triggered per
notification is also limited by the requirement that a NOTIFY message
can refer to one child only.</t>
      <t>However, when the outgoing query occurs via encrypted transport, some
amplification is possible, both with respect to bandwidth and
computational burden. In this case, the usual principle of bounding the
work, even under unreasonable events, applies.</t>
      <t>Receivers therefore MUST implement rate limiting for notification
processing. It is RECOMMENDED to configure rate limiting independently
for both the notification's source IP address and the name of the zone
that is conveyed in the NOTIFY message. Rate limiting also mitigates
processing load from garbage notifications.</t>
      <t>Alternative solutions (such as signing notifications and validating
their signatures) appear significantly more expensive without tangible
benefit.</t>
      <t>In order to facilitate schemes that are authenticated outside of DNSSEC
(such as via SIG(0)), zones containing DSYNC records are not required to
be signed. Spoofed DSYNC responses would prevent notifications from
reaching their legitimate target, and a different party may receive
unsolicited notifications; both effects, however, can also be achieved
in the presence of DNSSEC. The illegitimate target is also enabled to
learn notification contents in real-time, which may be a privacy concern
for the sender. If so, the sender may choose to ignore unsigned DSYNC
records.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="dsync-rr-type">
        <name>DSYNC RR Type</name>
        <t>IANA is requested to update the "Resource Record (RR) TYPEs" registry
under the "Domain Name System (DNS) Parameters" registry group as
follows:</t>
        <dl>
          <dt>Type</dt>
          <dd>
            <t>DSYNC</t>
          </dd>
          <dt>Value</dt>
          <dd>
            <t>tbd (next available)</t>
          </dd>
          <dt>Meaning</dt>
          <dd>
            <t>Endpoint discovery for delegation synchronization</t>
          </dd>
          <dt>Reference</dt>
          <dd>
            <t>(this document)</t>
          </dd>
        </dl>
      </section>
      <section anchor="dsync-scheme-registration">
        <name>DSYNC Scheme Registration</name>
        <t>Per <xref target="RFC8552"/>, IANA is requested to create a new registry on the
"Domain Name System (DNS) Parameters" IANA web page as follows:</t>
        <dl>
          <dt>Name</dt>
          <dd>
            <t>DSYNC: Location of Synchronization Endpoints</t>
          </dd>
          <dt>Assignment Policy</dt>
          <dd>
            <t>Expert Review</t>
          </dd>
          <dt>Reference</dt>
          <dd>
            <t>(this document)</t>
          </dd>
        </dl>
        <table>
          <thead>
            <tr>
              <th align="left">RRtype</th>
              <th align="left">Scheme</th>
              <th align="left">Purpose</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left"> </td>
              <td align="left">0</td>
              <td align="left">Null scheme (no-op)</td>
              <td align="left">(this document)</td>
            </tr>
            <tr>
              <td align="left">CDS</td>
              <td align="left">1</td>
              <td align="left">Delegation management</td>
              <td align="left">(this document)</td>
            </tr>
            <tr>
              <td align="left">CSYNC</td>
              <td align="left">1</td>
              <td align="left">Delegation management</td>
              <td align="left">(this document)</td>
            </tr>
            <tr>
              <td align="left"> </td>
              <td align="left">2-127</td>
              <td align="left">Unassigned</td>
              <td align="left"> </td>
            </tr>
            <tr>
              <td align="left"> </td>
              <td align="left">128-255</td>
              <td align="left">Reserved (private use)</td>
              <td align="left">(this document)</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>In order of first contribution:
Joe Abley, Mark Andrews, Christian Elmerot, Ólafur Guðmundsson, Paul
Wouters, Brian Dickson, Warren Kumari, Patrick Mevzek, Tim Wicinski</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC1996">
          <front>
            <title>A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)</title>
            <author fullname="P. Vixie" initials="P." surname="Vixie"/>
            <date month="August" year="1996"/>
            <abstract>
              <t>This memo describes the NOTIFY opcode for DNS, by which a master server advises a set of slave servers that the master's data has been changed and that a query should be initiated to discover the new data. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1996"/>
          <seriesInfo name="DOI" value="10.17487/RFC1996"/>
        </reference>
        <reference anchor="RFC4033">
          <front>
            <title>DNS Security Introduction and Requirements</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>The Domain Name System Security Extensions (DNSSEC) add data origin authentication and data integrity to the Domain Name System. This document introduces these extensions and describes their capabilities and limitations. This document also discusses the services that the DNS security extensions do and do not provide. Last, this document describes the interrelationships between the documents that collectively describe DNSSEC. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4033"/>
          <seriesInfo name="DOI" value="10.17487/RFC4033"/>
        </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="RFC4035">
          <front>
            <title>Protocol Modifications for the DNS Security Extensions</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <author fullname="D. Massey" initials="D." surname="Massey"/>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <date month="March" year="2005"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication and data integrity to the DNS. This document describes the DNSSEC protocol modifications. This document defines the concept of a signed zone, along with the requirements for serving and resolving by using DNSSEC. These techniques allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications.</t>
              <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4035"/>
          <seriesInfo name="DOI" value="10.17487/RFC4035"/>
        </reference>
        <reference anchor="RFC7344">
          <front>
            <title>Automating DNSSEC Delegation Trust Maintenance</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="O. Gudmundsson" initials="O." surname="Gudmundsson"/>
            <author fullname="G. Barwood" initials="G." surname="Barwood"/>
            <date month="September" year="2014"/>
            <abstract>
              <t>This document describes a method to allow DNS Operators to more easily update DNSSEC Key Signing Keys using the DNS as a communication channel. The technique described is aimed at delegations in which it is currently hard to move information from the Child to Parent.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7344"/>
          <seriesInfo name="DOI" value="10.17487/RFC7344"/>
        </reference>
        <reference anchor="RFC7477">
          <front>
            <title>Child-to-Parent Synchronization in DNS</title>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
            <date month="March" year="2015"/>
            <abstract>
              <t>This document specifies how a child zone in the DNS can publish a record to indicate to a parental agent that the parental agent may copy and process certain records from the child zone. The existence of the record and any change in its value can be monitored by a parental agent and acted on depending on local policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7477"/>
          <seriesInfo name="DOI" value="10.17487/RFC7477"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC2136">
          <front>
            <title>Dynamic Updates in the Domain Name System (DNS UPDATE)</title>
            <author fullname="P. Vixie" initials="P." role="editor" surname="Vixie"/>
            <author fullname="S. Thomson" initials="S." surname="Thomson"/>
            <author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
            <author fullname="J. Bound" initials="J." surname="Bound"/>
            <date month="April" year="1997"/>
            <abstract>
              <t>Using this specification of the UPDATE opcode, it is possible to add or delete RRs or RRsets from a specified zone. Prerequisites are specified separately from update operations, and can specify a dependency upon either the previous existence or nonexistence of an RRset, or the existence of a single RR. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2136"/>
          <seriesInfo name="DOI" value="10.17487/RFC2136"/>
        </reference>
        <reference anchor="RFC9567">
          <front>
            <title>DNS Error Reporting</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <date month="April" year="2024"/>
            <abstract>
              <t>DNS error reporting is a lightweight reporting mechanism that provides the operator of an authoritative server with reports on DNS resource records that fail to resolve or validate. A domain owner or DNS hosting organization can use these reports to improve domain hosting. The reports are based on extended DNS errors as described in RFC 8914.</t>
              <t>When a domain name fails to resolve or validate due to a misconfiguration or an attack, the operator of the authoritative server may be unaware of this. To mitigate this lack of feedback, this document describes a method for a validating resolver to automatically signal an error to a monitoring agent specified by the authoritative server. The error is encoded in the QNAME; thus, the very act of sending the query is to report the error.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9567"/>
          <seriesInfo name="DOI" value="10.17487/RFC9567"/>
        </reference>
        <reference anchor="RFC8914">
          <front>
            <title>Extended DNS Errors</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="E. Hunt" initials="E." surname="Hunt"/>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
            <author fullname="D. Lawrence" initials="D." surname="Lawrence"/>
            <date month="October" year="2020"/>
            <abstract>
              <t>This document defines an extensible method to return additional information about the cause of DNS errors. Though created primarily to extend SERVFAIL to provide additional information about the cause of DNS and DNSSEC failures, the Extended DNS Errors option defined in this document allows all response types to contain extended error information. Extended DNS Error information does not change the processing of RCODEs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8914"/>
          <seriesInfo name="DOI" value="10.17487/RFC8914"/>
        </reference>
        <reference anchor="RFC8552">
          <front>
            <title>Scoped Interpretation of DNS Resource Records through "Underscored" Naming of Attribute Leaves</title>
            <author fullname="D. Crocker" initials="D." surname="Crocker"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>Formally, any DNS Resource Record (RR) may occur under any domain name. However, some services use an operational convention for defining specific interpretations of an RRset by locating the records in a DNS branch under the parent domain to which the RRset actually applies. The top of this subordinate branch is defined by a naming convention that uses a reserved node name, which begins with the underscore character (e.g., "_name"). The underscored naming construct defines a semantic scope for DNS record types that are associated with the parent domain above the underscored branch. This specification explores the nature of this DNS usage and defines the "Underscored and Globally Scoped DNS Node Names" registry with IANA. The purpose of this registry is to avoid collisions resulting from the use of the same underscored name for different services.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="222"/>
          <seriesInfo name="RFC" value="8552"/>
          <seriesInfo name="DOI" value="10.17487/RFC8552"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC6781">
          <front>
            <title>DNSSEC Operational Practices, Version 2</title>
            <author fullname="O. Kolkman" initials="O." surname="Kolkman"/>
            <author fullname="W. Mekking" initials="W." surname="Mekking"/>
            <author fullname="R. Gieben" initials="R." surname="Gieben"/>
            <date month="December" year="2012"/>
            <abstract>
              <t>This document describes a set of practices for operating the DNS with security extensions (DNSSEC). The target audience is zone administrators deploying DNSSEC.</t>
              <t>The document discusses operational aspects of using keys and signatures in the DNS. It discusses issues of key generation, key storage, signature generation, key rollover, and related policies.</t>
              <t>This document obsoletes RFC 4641, as it covers more operational ground and gives more up-to-date requirements with respect to key sizes and the DNSSEC operations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6781"/>
          <seriesInfo name="DOI" value="10.17487/RFC6781"/>
        </reference>
        <reference anchor="RFC7583">
          <front>
            <title>DNSSEC Key Rollover Timing Considerations</title>
            <author fullname="S. Morris" initials="S." surname="Morris"/>
            <author fullname="J. Ihren" initials="J." surname="Ihren"/>
            <author fullname="J. Dickinson" initials="J." surname="Dickinson"/>
            <author fullname="W. Mekking" initials="W." surname="Mekking"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This document describes the issues surrounding the timing of events in the rolling of a key in a DNSSEC-secured zone. It presents timelines for the key rollover and explicitly identifies the relationships between the various parameters affecting the process.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7583"/>
          <seriesInfo name="DOI" value="10.17487/RFC7583"/>
        </reference>
        <reference anchor="RFC8901">
          <front>
            <title>Multi-Signer DNSSEC Models</title>
            <author fullname="S. Huque" initials="S." surname="Huque"/>
            <author fullname="P. Aras" initials="P." surname="Aras"/>
            <author fullname="J. Dickinson" initials="J." surname="Dickinson"/>
            <author fullname="J. Vcelak" initials="J." surname="Vcelak"/>
            <author fullname="D. Blacka" initials="D." surname="Blacka"/>
            <date month="September" year="2020"/>
            <abstract>
              <t>Many enterprises today employ the service of multiple DNS providers to distribute their authoritative DNS service. Deploying DNSSEC in such an environment may present some challenges, depending on the configuration and feature set in use. In particular, when each DNS provider independently signs zone data with their own keys, additional key-management mechanisms are necessary. This document presents deployment models that accommodate this scenario and describes these key-management requirements. These models do not require any changes to the behavior of validating resolvers, nor do they impose the new key-management requirements on authoritative servers not involved in multi-signer configurations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8901"/>
          <seriesInfo name="DOI" value="10.17487/RFC8901"/>
        </reference>
        <reference anchor="I-D.ietf-dnsop-dnssec-automation">
          <front>
            <title>DNSSEC automation</title>
            <author fullname="Ulrich Wisser" initials="U." surname="Wisser">
         </author>
            <author fullname="Shumon Huque" initials="S." surname="Huque">
              <organization>Salesforce</organization>
            </author>
            <author fullname="Johan Stenstam" initials="J." surname="Stenstam">
              <organization>The Swedish Internet Foundation</organization>
            </author>
            <date day="22" month="October" year="2023"/>
            <abstract>
              <t>   This document describes an algorithm and protocol to automate the
   setup, operations, and decomissioning of Multi-Signer DNSSEC
   [RFC8901] configurations.  It employs Model 2 of the Multi-Signer
   specification, where each operator has their own distinct KSK and ZSK
   sets (or CSK sets), Managing DS Records from the Parent via CDS/
   CDNSKEY [RFC8078], and Child-to-Parent Synchronization in DNS
   [RFC7477] to accomplish this.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-dnssec-automation-02"/>
        </reference>
      </references>
    </references>
    <section anchor="context">
      <name>Efficiency and Convergence Issues in DNS Scanning</name>
      <section anchor="original-notify-for-zone-transfer-nudging">
        <name>Original NOTIFY for Zone Transfer Nudging</name>
        <t><xref target="RFC1996"/> introduced the concept of a DNS Notify message which was used
to improve the convergence time for secondary servers when a DNS zone
had been updated in the primary. The basic idea was to augment the
traditional "pull" mechanism (a periodic SOA query) with a "push"
mechanism (a Notify) for a common case that was otherwise very
inefficient (due to either slow convergence or wasteful overly
frequent scanning of the primary for changes).</t>
        <t>While it is possible to indicate how frequently checks should occur
(via the SOA Refresh parameter), these checks did not allow catching
zone changes that fall between checkpoints. <xref target="RFC1996"/> addressed the
optimization of the time-and-cost trade-off between a seceondary checking
frequently for new versions of a zone, and infrequent checking, by
replacing scheduled scanning with the more efficient NOTIFY mechanism.</t>
      </section>
      <section anchor="similar-issues-for-ds-maintenance-and-beyond">
        <name>Similar Issues for DS Maintenance and Beyond</name>
        <t>Today, we have similar issues with slow updates of DNS data in spite of
the data having been published. The two most obvious cases are CDS and
CSYNC scanners deployed in a growing number of TLD registries. Because of
the large number of child delegations, scanning for CDS and CSYNC records
is rather slow (as in infrequent).</t>
        <t>It is only a very small number of the delegations that will have updated
CDS or CDNSKEY record in between two scanning runs. However, frequent
scanning for CDS and CDNSKEY records is costly, and infrequent scanning
causes slower convergence (i.e., delay until the DS RRset is updated).</t>
        <t>Unlike in the original case, where the primary is able to suggest the
scanning interval via the SOA Refresh parameter, an equivalent mechanism
does not exist for DS-related scanning.</t>
        <t>All of this above also applies to parents that offer automated NS and glue
record maintenance via CSYNC scanning <xref target="RFC7477"/>. Again, given that CSYNC
records change only rarely, frequent scanning of a large number of
delegations seems disproportionately costly, while infrequent scanning
causes slower convergence (delay until the delegation is updated).</t>
        <t>While use of the NOTIFY mechanism for coordinating the key exchange in
multi-signer setups <xref target="I-D.ietf-dnsop-dnssec-automation"/> is
conceivable, the detailed specification is left for future work.</t>
      </section>
    </section>
    <section anchor="change-history-to-be-removed-before-publication">
      <name>Change History (to be removed before publication)</name>
      <ul spacing="normal">
        <li>
          <t>draft-ietf-dnsop-generalized-notify-02</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Nits by Tim Wicinski</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Dnsdir feedback</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Specify timeout and error handling</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Editorial nits</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Reserve scheme value 0</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-ietf-dnsop-generalized-notify-01</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Reserve scheme values 128-255</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Rename NOTIFY rrtype to DSYNC (to distinguish from NOTIFY message)</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Describe endpoint discovery</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Discussion on garbage notifications</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>More discussion on amplification risks</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Clean-up, editorial changes</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-ietf-dnsop-generalized-notify-00</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Revision after adoption.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-thomassen-dnsop-generalized-dns-notify-02</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Add rationale for staying in band</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Add John as an author</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-thomassen-dnsop-generalized-dns-notify-01</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Mention Ry-to-Rr forwarding to accommodate RRR model</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Add port number flexiblity</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Add scheme parameter</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Drop SRV-based alternative in favour of new NOTIFY RR</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Editorial improvements</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>draft-thomassen-dnsop-generalized-dns-notify-00</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Initial public draft.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA61963IcR3Lu/36KMvhDM/bMkCBFUcSG5YUASOKaFyxArULH
4TB7pmsGLfR0z3Z1AxpxGeF38F87wo/gZ7DfxE9y8svMuvRgQFHnLBUhAjN9
qcrKy5dfZhWn02nWlV1lj8y3trZtXpW/2MKcvr40r5uuXJaLvCub2mX5fN7a
m+FVwyuKZlHna3pQ0ebLblrabjktatdspqt4z7TGPdvpo8dZkXd08fvT47dn
HzJ6iF017fbIuK7IsnLTHpmu7V33+NGj53Rx3tr8yLyoO9vWtstum/Z61Tb9
5ghDfXNufqAPynplvsWH2bXd0hVFvGF6ijFlmevyuviXvGpqevXWumxTHpl/
6prFxLim7Vq7dPTTdo0f/jnL8r67atqjzEwzQ3/K2h2ZP8zMZWdretKaP5Q5
/6G5yuvhF027yuvyF5bOkXl7Zc3lrS1KdxVGZb5p+rrgC/gOu87L6sj8hGfN
nD7r96Ve7Uhwna2cpe/sYEjnM3p8s84dfZeM6dzSjTvf0KBogezl2cnEXNpF
39KotvSqtTNn9aqsrW1JjOloNnjK7wvr7GJWNruieGlv6KahIOr0U37hJcS+
aOhlL1+epA/n9cjbwv3e+Utmi2adZXXTrkkwN/aIlKFeJr9Np1OTz13X5gta
0LdXpTOkef3a1p2xP5PQCmc6EnbvrGmWoslv3r745kfz/v3fXHxzcvj8+Rcf
Ppi53TZ1YRZNfUN30grkVfYLqQVpXV67JQnuigRP2jCHQKBaeOicNHlZdg5P
zovpVbMwdWoEpmvwxqywlV3xR4YmSgtY5/XCktSM2sLMmO9pgIvcWUcfL6q+
sLiTFsaQ9pq2qarmxrYu02GQdMyf+3JxTSNbkH6sLL8sN/FVnzlDk20tSbEw
znYzEk9j6NXziqYFQS37eiFzLbstPdOsLSl4YUi+hjRzgTf6qdJzLEm8pQcU
m4YGkeEq1y+uBlOmRziXr2humEfXNkW/sMXE3JQ5P6a2t17+OrJuu7EY2hvz
9Zm5OHv15k9np7CPdCHp57nFSBYkh3zetOQeCkNvIwl+W3ZX/dzk3VH2T1dd
t3FHDx+u+DOozkPW184r/cNPcEb/PPqrPGY8y2Dk68Z1LDyaxq16JSwkZEVa
A5n4aU5Ms7E0J+d6S0tsu8XMuKumrwqTVxVJIMtvyEx0/SzZhmE/Im7JmdEK
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

-->

</rfc>
