Network Working Group                                      S. Bortzmeyer
Internet-Draft                                                     AFNIC
Intended status: Standards Track                          March 19, 2018
Expires: September 20, 2018


            EPP Mapping for DNAME delegation of domain names
                  draft-bortzmeyer-regext-epp-dname-02

Abstract

   This document describes an Extensible Provisioning Protocol (EPP)
   extension mapping for the provisioning and management of Domain Name
   System for domain names stored in a shared central repository.
   Specified in XML, this mapping extends the EPP domain name mapping to
   provide the ability to delegate a domain names through DNAME resource
   records, thus making the new domain an alias of a previous domain.

   REMOVE BEFORE PUBLICATION This document should be discussed on the
   Registration Protocols Extensions (regext) mailing list.  The source
   of this document is kept on a Gitlab at Framagit [1].  A list of open
   issues is there as well [2].

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 20, 2018.

Copyright Notice

   Copyright (c) 2018 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of



Bortzmeyer             Expires September 20, 2018               [Page 1]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Conventions Used in This Document . . . . . . . . . . . .   3
   2.  Object Attributes . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Presentation  . . . . . . . . . . . . . . . . . . . . . . . .   4
   4.  Examples  . . . . . . . . . . . . . . . . . . . . . . . . . .   4
   5.  EPP Command Mapping . . . . . . . . . . . . . . . . . . . . .   4
     5.1.  EPP Query Commands  . . . . . . . . . . . . . . . . . . .   4
       5.1.1.  EPP <check> Command . . . . . . . . . . . . . . . . .   5
       5.1.2.  EPP <info> Command  . . . . . . . . . . . . . . . . .   5
     5.2.  EPP <transfer> Command  . . . . . . . . . . . . . . . . .   7
   6.  EPP Transform Commands  . . . . . . . . . . . . . . . . . . .   7
     6.1.  EPP <create> Command  . . . . . . . . . . . . . . . . . .   7
     6.2.  EPP <delete> Command  . . . . . . . . . . . . . . . . . .   8
     6.3.  EPP <renew> Command . . . . . . . . . . . . . . . . . . .   8
     6.4.  EPP <transfer> Command  . . . . . . . . . . . . . . . . .   8
     6.5.  EPP <update> Command  . . . . . . . . . . . . . . . . . .   9
   7.  Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . .  10
   8.  Internationalization Considerations . . . . . . . . . . . . .  10
   9.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  11
   10. Security Considerations . . . . . . . . . . . . . . . . . . .  11
   11. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  12
   12. References  . . . . . . . . . . . . . . . . . . . . . . . . .  12
     12.1.  Normative References . . . . . . . . . . . . . . . . . .  12
     12.2.  Informative References . . . . . . . . . . . . . . . . .  13
     12.3.  URIs . . . . . . . . . . . . . . . . . . . . . . . . . .  14
   Appendix A.  Generic Resource Records type  . . . . . . . . . . .  15
   Appendix B.  Implementation status  . . . . . . . . . . . . . . .  15
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  15

1.  Introduction

   This document describes an extension mapping for version 1.0 of the
   Extensible Provisioning Protocol (EPP) described in RFC 5730
   [RFC5730].  This mapping, an extension of the domain name mapping
   described in RFC 5731 [RFC5731], is specified using the Extensible
   Markup Language (XML) 1.0 [W3C.REC-xml-20001006] and XML Schema
   notation ([W3C.REC-xmlschema-1-20041028]
   [W3C.REC-xmlschema-2-20041028]).




Bortzmeyer             Expires September 20, 2018               [Page 2]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   The EPP core protocol specification [RFC5730] provides a complete
   description of EPP command and response structures.  A thorough
   understanding of the base protocol specification is necessary to
   understand the mapping described in this document.  Familiarity with
   the Domain Name System (DNS) described in RFC 1034 [RFC1034] and
   RFC 1035 [RFC1035] and with the DNS DNAME Resource Record type
   described in RFC 6672 [RFC6672] is required to understand the DNS
   concepts described in this document.  (DNAME have properties that may
   be surprising at first; for instance, it aliases only the subdomains,
   not the owner name of the DNAME record itself.)

   The EPP mapping described in this document specifies a mechanism for
   the provisioning and management of domain names in a shared central
   repository.  Today, most registries allow only delegation of domain
   names to name servers specified in NS resource records.  DNAME
   [RFC6672] allow another type of delegation, which can be useful for
   instance for the new AS 112 [RFC7535], as proposed in
   [I-D.bortzmeyer-dname-root].  Information exchanged via this mapping
   can be extracted from the repository and used to publish DNAME
   resource records.

1.1.  Conventions Used in This Document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, RFC 2119
   [RFC2119].

   In examples, "C:" represents lines sent by a protocol client, and
   "S:" represents lines returned by a protocol server.  "////" is used
   to note element values that have been shortened to better fit page
   boundaries.  Indentation and white space in examples is provided only
   to illustrate element relationships and is not a mandatory feature of
   this protocol.

   XML is case sensitive.  Unless stated otherwise, XML specifications
   and examples provided in this document MUST be interpreted in the
   character case presented in order to develop a conforming
   implementation.

   dnameDeleg-1.0 is used as an abbreviation for
   urn:ietf:params:xml:ns:dnameDeleg-1.0.

2.  Object Attributes

   This extension adds additional elements to the EPP domain name
   mapping [RFC5731].  Only those new elements are described here.




Bortzmeyer             Expires September 20, 2018               [Page 3]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   DNAME information is published by a DNS server to indicate that a
   child zone is actually an alias of another zone.  A DNAME resource
   record (RR) contains a single field named target.  See RFC 6672
   [RFC6672] for the specific field format.

3.  Presentation

   It is the server policy to allow DNAME delegations or not.  It is
   also the server policy to allow (or not) a domain to switch between
   these two types of delegation with a EPP <update>.

   The interface relies on the use of the <dnameDeleg:dnameTarget>
   element for creates, adds, removes, and <domain:info> responses.  The
   data is provided by the client.  If the DNAME target is in a zone
   managed by the server, the server operator MAY checks its existence
   in its database and the fact that it is not itself a DNAME.
   Otherwise, the server operator MAY issue out-of-band DNS queries to
   check if the target really exists.

   The <dnameDeleg:dnameTarget> element contains a domain name, as
   described in Section 2.1 of RFC 6672 [RFC6672].  The value of the
   <dnameDeleg:dnameTarget> element is represented as a eppcom:labelType
   ([RFC5730], section 4.4, and [W3C.REC-xmlschema-2-20041028]).

4.  Examples

   Example use of the dnameDeleg:dnameTarget, for instance for an EPP
   <create>:

   <dnameDeleg:dnameTarget>foo.bar.example</dnameDeleg:dnameTarget>

5.  EPP Command Mapping

   A detailed description of the EPP syntax and semantics can be found
   in the EPP core protocol specification [RFC5730].  The command
   mappings described here are specifically for use in provisioning and
   managing DNAME delegations via EPP.

5.1.  EPP Query Commands

   EPP provides three commands to retrieve object information: <check>
   to determine if an object is known to the server, <info> to retrieve
   detailed information associated with an object, and <transfer> to
   retrieve object transfer status information.







Bortzmeyer             Expires September 20, 2018               [Page 4]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


5.1.1.  EPP <check> Command

   This extension does not add any elements to the EPP <check> command
   or <check> response described in the EPP domain mapping [RFC5731].
   Note that an EPP client cannot use <check> to find out if a server
   authorizes DNAME delegation for this specific domain (EPP login
   information is not sufficient because the fact that the server
   supports the extension does not mean it is authorized for all names.)
   [REMOVE BEFORE PUBLICATION: issue #3 discussed the case.]

5.1.2.  EPP <info> Command

   This extension does not add any elements to the EPP <info> command
   described in the EPP domain mapping [RFC5731].  [REMOVE BEFORE
   PUBLICATION: issue #6 discussed whether or not it would be a good
   idea.]  However, additional elements are defined for the <info>
   response.

   When an <info> command has been processed successfully, the EPP
   <resData> element MUST contain child elements as described in the EPP
   domain mapping [RFC5731].  In addition, the EPP <extension> element
   SHOULD contain a child <dnameDeleg:dnameTarget> element that
   identifies the extension namespace if the domain object has data
   associated with this extension, based on server policy and depending
   on support of the client for dnameDeleg, based on the EPP login
   services it provided.  The <dnameDeleg:dnameTarget> element contains
   a domain name as its value.  A server MUST NOT return both a
   <dnameDeleg:dnameTarget> and a <domain:ns> ([RFC5731], section
   3.1.2).






















Bortzmeyer             Expires September 20, 2018               [Page 5]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


Example <info> Response

S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
S:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
S:  <response>
S:    <result code="1000">
S:      <msg>Command completed successfully</msg>
S:    </result>
S:    <resData>
S:      <domain:infData
S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
S:        <domain:name>example.com</domain:name>
S:        <domain:roid>EXAMPLE1-REP</domain:roid>
S:        <domain:status s="ok"/>
S:        <domain:registrant>jd1234</domain:registrant>
S:        <domain:contact type="admin">sh8013</domain:contact>
S:        <domain:contact type="tech">sh8013</domain:contact>
S:        <domain:clID>ClientX</domain:clID>
S:        <domain:crID>ClientY</domain:crID>
S:        <domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate>
S:        <domain:upID>ClientX</domain:upID>
S:        <domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate>
S:        <domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate>
S:        <domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate>
S:        <domain:authInfo>
S:          <domain:pw>2fooBAR</domain:pw>
S:        </domain:authInfo>
S:      </domain:infData>
S:    </resData>
S:    <extension>
S:      <dnameDeleg:dnameTarget xmlns:dnameDeleg="urn:ietf:params:xml:ns:dnameDeleg-1.0">
S:           foo.bar.example
S:      </dnameDeleg:dnameTarget>
S:    </extension>
S:    <trID>
S:      <clTRID>ABC-12345</clTRID>
S:      <svTRID>54322-XYZ</svTRID>
S:    </trID>
S:  </response>
S:</epp>


   An EPP error response MUST be returned if an <info> command cannot be
   processed for any reason.






Bortzmeyer             Expires September 20, 2018               [Page 6]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


5.2.  EPP <transfer> Command

   This extension does not add any elements to the EPP <transfer>
   command or <transfer> response described in the EPP domain mapping
   [RFC5731].  A domain cannot be switched from NS delegation to DNAME
   delegation (or vice-versa) through a transfer.

   Note that this may be one additional reason for a transfer to fail:
   if the gaining registrar does not support DNAME delegation.  The
   server MUST return error code 2106.

6.  EPP Transform Commands

   EPP provides five commands to transform objects: <create> to create
   an instance of an object, <delete> to delete an instance of an
   object, <renew> to extend the validity period of an object,
   <transfer> to manage object sponsorship changes, and <update> to
   change information associated with an object.

6.1.  EPP <create> Command

   This extension defines an additional element for the EPP <create>
   command described in the EPP domain mapping [RFC5731].  No additional
   elements are defined for the EPP <create> response.

   The EPP <create> command provides a transform operation that allows a
   client to create a domain object.  In addition to the EPP command
   elements described in the EPP domain mapping [RFC5731], the command
   MUST contain an <extension> element, and the <extension> element MUST
   contain a child <dnameDeleg:dnameTarget> element that identifies the
   extension namespace if the client wants to associate data defined in
   this extension to the domain object.  The <dnameDeleg:dnameTarget>
   has a domain name as value.  A client MUST NOT send both a
   <dnameDeleg:dnameTarget> and <domain:ns> elements.  TODO See issue #4
   for the choice of the error code(s).
















Bortzmeyer             Expires September 20, 2018               [Page 7]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


Example <create> Command:

C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
C:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
C:  <command>
C:    <create>
C:      <domain:create
C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
C:        <domain:name>example.com</domain:name>
C:        <domain:period unit="y">2</domain:period>
C:        <domain:registrant>jd1234</domain:registrant>
C:        <domain:contact type="admin">sh8013</domain:contact>
C:        <domain:contact type="tech">sh8013</domain:contact>
C:        <domain:authInfo>
C:          <domain:pw>2fooBAR</domain:pw>
C:        </domain:authInfo>
C:      </domain:create>
C:    </create>
C:    <extension>
C:      <dnameDeleg:dnameTarget xmlns:dnameDeleg="urn:ietf:params:xml:ns:dnameDeleg-1.0">foo.bar.example</dnameDeleg:dnameTarget>
C:    </extension>
C:    <clTRID>ABC-12345</clTRID>
C:  </command>
C:</epp>


   When a <create> command has been processed successfully, the EPP
   response is as described in the EPP domain mapping [RFC5731].

6.2.  EPP <delete> Command

   This extension does not add any elements to the EPP <delete> command
   or <delete> response described in the EPP domain mapping [RFC5731].

6.3.  EPP <renew> Command

   This extension does not add any elements to the EPP <renew> command
   or <renew> response described in the EPP domain mapping [RFC5731].

6.4.  EPP <transfer> Command

   This extension does not add any elements to the EPP <transfer>
   command or <transfer> response described in the EPP domain mapping
   [RFC5731].






Bortzmeyer             Expires September 20, 2018               [Page 8]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


6.5.  EPP <update> Command

   This extension defines additional elements for the EPP <update>
   command described in the EPP domain mapping [RFC5731].  No additional
   elements are defined for the EPP <update> response.

   The EPP <update> command provides a transform operation that allows a
   client to modify the attributes of a domain object.  In addition to
   the EPP command elements described in the EPP domain mapping, the
   command MUST contain an <extension> element, and the <extension>
   element MUST contain a child <dnameDeleg:dnameTarget> element that
   identifies the extension namespace if the client wants to update the
   domain object with data defined in this extension.  The
   <dnameDeleg:dnameTarget> element has a domain name as its value.  If
   present, it updates the DNAME delegation to the new target, if the
   domain was already DNAME-delegated, or it switches the domain to a
   DNAME delegation, if it was previously a NS delegation.  A server MAY
   refuse such a switch, per its policy.  In the same way, a RFC 5731
   [RFC5731] update with NS information, without the extension decribed
   here, switches to NS delegation if the domain was previously DNAME-
   delegated.

   TODO there is an issue with the switch from NS to DNAME delegation if
   the domain had in-bailiwick name servers.  See issue #7.

Example <update> Command, Adding and Removing:

C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
C:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
C:  <command>
C:    <update>
C:      <domain:update
C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
C:        <domain:name>example.com</domain:name>
C:      </domain:update>
C:    </update>
C:    <extension>
C:          <dnameDeleg:dnameTarget xmlns:dnameDeleg="urn:ietf:params:xml:ns:dnameDeleg-1.0">foo.bar.example
C:          </dnameDeleg:dnameTarget>
C:    </extension>
C:    <clTRID>ABC-12345</clTRID>
C:  </command>
C:</epp>


   When an extended <update> command has been processed successfully,
   the EPP response is as described in the EPP domain mapping [RFC5731].



Bortzmeyer             Expires September 20, 2018               [Page 9]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


7.  Formal Syntax

   An EPP object mapping is specified in XML Schema notation.  The
   formal syntax presented here is a complete schema representation of
   the object mapping suitable for automated validation of EPP XML
   instances.  The BEGIN and END tags are not part of the schema; they
   are used to note the beginning and ending of the schema for URI
   registration purposes.


   BEGIN
   <?xml version="1.0" encoding="utf-8"?>
   <schema
     targetNamespace="urn:ietf:params:xml:ns:dnameDeleg-1.0"
     xmlns:dnameDeleg="urn:ietf:params:xml:ns:dnameDeleg-1.0"
     xmlns="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified">

     <annotation>
       <documentation>
         Extensible Provisioning Protocol v1.0
         domain name extension schema
         for provisioning DNAME domain names.
       </documentation>
     </annotation>

     <!--
     Child element found in EPP commands and response.
     -->
     <element name="dnameTarget" type="string"/>

   </schema>
   END


8.  Internationalization Considerations

   EPP is represented in XML, which provides native support for encoding
   information using the Unicode character set and its more compact
   representations including UTF-8 [RFC3629].  Conformant XML processors
   recognize both UTF-8 and UTF-16 [RFC2781].  Though XML includes
   provisions to identify and use other character encodings through use
   of an "encoding" attribute in an <?xml?> declaration, use of UTF-8 is
   RECOMMENDED in environments where parser encoding support
   incompatibility exists.

   As an extension of the EPP domain mapping [RFC5731], the
   internationalization requirements in the EPP domain mapping [RFC5731]



Bortzmeyer             Expires September 20, 2018              [Page 10]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   are followed by this extension.  This extension does not override any
   of the EPP domain mapping [RFC5731] internationalization features.

9.  IANA Considerations

   This document uses URNs to describe XML namespaces and XML schemas
   conforming to a registry mechanism described in RFC 3688 [RFC3688].
   Two URI assignments have been completed by the IANA.

   Registration request for the extension namespace:

   URI: urn:ietf:params:xml:ns:dnameDeleg-1.0

   Registrant Contact: IESG

   XML: None.  Namespace URIs do not represent an XML specification.

   Registration request for the extension XML schema:

   URI: urn:ietf:params:xml:schema:dnameDeleg-1.0

   Registrant Contact: IESG

   XML: See the "Formal Syntax" section of this document.

10.  Security Considerations

   The mapping extensions described in this document do not provide any
   security services beyond those described by EPP [RFC5730], the EPP
   domain name mapping [RFC5731], and protocol layers used by EPP.  The
   security considerations described in these other specifications apply
   to this specification as well.

   As with other domain object transforms, the EPP transform operations
   described in this document MUST be restricted to the sponsoring
   client as authenticated using the mechanisms described in
   Sections 2.9.1.1 and 7 of RFC 5730 [RFC5730].  Any attempt to perform
   a transform operation on a domain object by any client other than the
   sponsoring client MUST be rejected with an appropriate EPP
   authorization error.

   The provisioning service described in this document involves the
   exchange of information that can have an operational impact on the
   DNS.  A trust relationship MUST exist between the EPP client and
   server, and provisioning of DNAME delegation MUST only be done after
   the identities of both parties have been confirmed using a strong
   authentication mechanism.  This is just a repeat of [RFC5734],
   section 8.



Bortzmeyer             Expires September 20, 2018              [Page 11]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   An EPP client might be acting as an agent for a zone administrator
   who wants to send DNAME delegation information to be published by the
   server operator.  Man-in-the-middle attacks are thus possible as a
   result of direct client activity or inadvertent client data
   manipulation.

11.  Acknowledgements

   Most of the text has been copied from [RFC5910], so thanks to its
   authors.

   Thanks to James Gould for a detailed review and for John Levine and
   Patrick Mevzek for good remarks.  Thanks to Patrick Mevzek for the
   first implementation.

12.  References

12.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              DOI 10.17487/RFC3688, January 2004,
              <https://www.rfc-editor.org/info/rfc3688>.

   [RFC5730]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)",
              STD 69, RFC 5730, DOI 10.17487/RFC5730, August 2009,
              <https://www.rfc-editor.org/info/rfc5730>.

   [RFC5731]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)
              Domain Name Mapping", STD 69, RFC 5731,
              DOI 10.17487/RFC5731, August 2009,
              <https://www.rfc-editor.org/info/rfc5731>.

   [RFC6672]  Rose, S. and W. Wijngaards, "DNAME Redirection in the
              DNS", RFC 6672, DOI 10.17487/RFC6672, June 2012,
              <https://www.rfc-editor.org/info/rfc6672>.

   [W3C.REC-xml-20001006]
              Bray, T., Paoli, J., Sperberg-McQueen, M., and E. Maler,
              "Extensible Markup Language (XML) 1.0 (Second Edition)",
              World Wide Web Consortium Recommendation REC-xml-20001006,
              October 2000,
              <http://www.w3.org/TR/2000/REC-xml-20001006>.




Bortzmeyer             Expires September 20, 2018              [Page 12]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   [W3C.REC-xmlschema-1-20041028]
              Thompson, H., Beech, D., Maloney, M., and N. Mendelsohn,
              "XML Schema Part 1: Structures Second Edition", World Wide
              Web Consortium Recommendation REC-xmlschema-1-20041028,
              October 2004,
              <http://www.w3.org/TR/2004/REC-xmlschema-1-20041028>.

   [W3C.REC-xmlschema-2-20041028]
              Biron, P. and A. Malhotra, "XML Schema Part 2: Datatypes
              Second Edition", World Wide Web Consortium Recommendation
              REC-xmlschema-2-20041028, October 2004,
              <http://www.w3.org/TR/2004/REC-xmlschema-2-20041028>.

12.2.  Informative References

   [I-D.bortzmeyer-dname-root]
              Bortzmeyer, S., "Using DNAME in the DNS root zone for
              sinking of special-use TLDs", draft-bortzmeyer-dname-
              root-05 (work in progress), January 2018.

   [I-D.hildebrand-deth]
              Hildebrand, J. and P. Hoffman, "DNS Editing Through HTTPS
              (DETH)", draft-hildebrand-deth-00 (work in progress),
              March 2016.

   [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
              STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
              <https://www.rfc-editor.org/info/rfc1034>.

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
              November 1987, <https://www.rfc-editor.org/info/rfc1035>.

   [RFC2781]  Hoffman, P. and F. Yergeau, "UTF-16, an encoding of ISO
              10646", RFC 2781, DOI 10.17487/RFC2781, February 2000,
              <https://www.rfc-editor.org/info/rfc2781>.

   [RFC3629]  Yergeau, F., "UTF-8, a transformation format of ISO
              10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November
              2003, <https://www.rfc-editor.org/info/rfc3629>.

   [RFC5734]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)
              Transport over TCP", STD 69, RFC 5734,
              DOI 10.17487/RFC5734, August 2009,
              <https://www.rfc-editor.org/info/rfc5734>.






Bortzmeyer             Expires September 20, 2018              [Page 13]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   [RFC5910]  Gould, J. and S. Hollenbeck, "Domain Name System (DNS)
              Security Extensions Mapping for the Extensible
              Provisioning Protocol (EPP)", RFC 5910,
              DOI 10.17487/RFC5910, May 2010,
              <https://www.rfc-editor.org/info/rfc5910>.

   [RFC7535]  Abley, J., Dickson, B., Kumari, W., and G. Michaelson,
              "AS112 Redirection Using DNAME", RFC 7535,
              DOI 10.17487/RFC7535, May 2015,
              <https://www.rfc-editor.org/info/rfc7535>.

   [RFC7942]  Sheffer, Y. and A. Farrel, "Improving Awareness of Running
              Code: The Implementation Status Section", BCP 205,
              RFC 7942, DOI 10.17487/RFC7942, July 2016,
              <https://www.rfc-editor.org/info/rfc7942>.

12.3.  URIs

   [1] https://framagit.org/bortzmeyer/ietf-epp-dname

   [2] https://framagit.org/bortzmeyer/ietf-epp-dname/issues

   [3] https://metacpan.org/pod/Net::DRI

   [4] https://metacpan.org/source/PMEVZEK/Net-DRI-
       0.96_10/lib/Net/DRI/Protocol/EPP/Extensions/DNAME.pm

























Bortzmeyer             Expires September 20, 2018              [Page 14]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


Appendix A.  Generic Resource Records type

   The goal of this document is not to allow arbitrary DNS Resource
   record types (such as TXT or LOC).  Such a mapping would require the
   ability to add, update and remove individual records, but it would
   allow the EPP server to implement a "delegation-less" registry.  An
   example of such attempt to define a standard protocol for
   provisioning a lot of resource record types is [I-D.hildebrand-deth].
   But we don't follow that path.  Instead, we keep the idea that the
   EPP server registers only delegations, either through NS records or,
   as here, a DNAME record.  This keeps the mapping much simpler.

   For this reason, the possibility to add other resource records
   together with the DNAME ([RFC6672], section 2.4) is out-of-scope
   here.

Appendix B.  Implementation status

   RFC-EDITOR: REMOVE BEFORE PUBLICATION

   This section records the status of known implementations of the
   protocol defined by this specification at the time of posting of this
   Internet-Draft, and is based on a proposal described in [RFC7942].
   The description of implementations in this section is intended to
   assist the IETF in its decision processes in progressing drafts to
   RFCs.  Please note that the listing of any individual implementation
   here does not imply endorsement by the IETF.  Furthermore, no effort
   has been spent to verify the information presented here that was
   supplied by IETF contributors.  This is not intended as, and must not
   be construed to be, a catalog of available implementations or their
   features.  Readers are advised to note that other implementations may
   exist.

   According to [RFC7942], "this will allow reviewers and working groups
   to assign due consideration to documents that have the benefit of
   running code, which may serve as evidence of valuable experimentation
   and feedback that have made the implemented protocols more mature.
   It is up to the individual working groups to use this information as
   they see fit".

   This EPP extension is implemented in the Net::DRI EPP client [3],
   written in Perl.  The specific part of Net::DRI is DNAME.pm [4].

Author's Address







Bortzmeyer             Expires September 20, 2018              [Page 15]


Internet-Draft      EPP Mapping for DNAME delegation          March 2018


   Stephane Bortzmeyer
   AFNIC
   1, rue Stephenson
   Montigny-le-Bretonneux  78180
   France

   Phone: +33 1 39 30 83 46
   EMail: bortzmeyer+ietf@nic.fr
   URI:   http://www.afnic.fr/










































Bortzmeyer             Expires September 20, 2018              [Page 16]