Internet-Draft RDAP DELEG Extension April 2024
AlBanna & Hollenbeck Expires 13 October 2024 [Page]
Workgroup:
Registration Extensions (REGEXT)
Internet-Draft:
draft-albanna-regext-rdap-deleg-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
Z. AlBanna
Verisign
S. Hollenbeck
Verisign

RDAP Extension for DNS DELEG

Abstract

This document describes an extension of the Registration Data Access Protocol (RDAP) that includes DNS DELEG values in responses to RDAP domain object queries.

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 13 October 2024.

Table of Contents

1. Introduction

This document describes an extension of the Registration Data Access Protocol (RDAP) that includes DNS DELEG values in responses to RDAP domain object queries as described in section 5.3 of RFC 9083 [RFC9083]. The definition of DNS DELEG information is based on concepts described in Internet-Draft "Extensible Delegation for DNS" [DELEG] and Internet-Draft "Extensible Provisioning Protocol (EPP) mapping for DELEG records" [brown-epp-deleg]. This draft is subject to changes that may take place in [DELEG] and [brown-epp-deleg] as they are developed. This document describes how DNS DELEG record information can be included in RDAP responses that contain RDAP domain objects.

2. Conventions used in this document

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 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

3. RDAP Conformance

RDAP responses that contain values described in this document MUST indicate conformance with this specification by including an rdapConformance ([RFC9083]) value of "deleg". The information needed to register this value in the RDAP Extensions Registry is described in Section 5.

Example rdapConformance structure with extension specified:

   "rdapConformance" :
     [
       "rdap_level_0",
       "deleg"
     ]
Figure 1

4. RDAP Response Specification

This specification describes a new data structure that is used to return DNS DELEG information in a RDAP domain response. s described in Internet-Draft "Extensible Delegation for DNS" [DELEG], a DELEG record is a specialized form of a DNS SVCB [RFC9460] resource record. "deleg_delegInfo" is a data structure that contains information that describes DNS DELEG record information associated with a registered domain name. The "deleg_delegInfo" data structure is a list of objects. The list of objects contains the following members whose values and presentations are described in Section 2.1, and Appendix A of RFC 9460 [RFC9460]:

  1. "priority": a number that represents the SvcPriority value of the record.

  2. "target": a domain name that represents the TargetName of the record.

  3. "params": an OPTIONAL object that contains SvcParam key-value pairs.

4.1. Examples of deleg_delegInfo

Example 1: single DELEG AliasMode record type from a single provider based on the example shown in section 2.2 of [DELEG]:

        "deleg_delegInfo": [
          {
            "priority": 0,
            "target": "config1.example.net"
          }
        ]

Example 2: multiple DELEG AliasMode records type from multiple providers based on the example shown in section 2.2.1 of [DELEG]:

        "deleg_delegInfo": [
          {
            "priority": 0,
            "target": "config1.example.net"
          {
            "priority": 0,
            "target": "config1.example.org"
        ]

Example 3: single DELEG ServiceMode record type from a single provider based on the example shown in section 2.1 of [DELEG]:

       "deleg_delegInfo": [
          {
            "priority": 1,
            "target": "config3.example.net",
            "params": {
              "ipv6hint": "2001:db8:2423::3"
            }
          }
       ]

Example 4: multiple DELEG ServiceMode records type from multiple providers based on the example shown in section 5.1.1 of [brown-epp-deleg]:

       "deleg_delegInfo": [
          {
            "priority": 1,
            "target": "ns1.example.com",
            "params": {
              "ipv4hint": "192.0.2.1",
              "ipv6hint": "2001:DB8::1"
            }
          },
          {
            "priority": 1,
            "target": "ns2.example.net",
            "params": {
              "ipv4hint": "192.0.2.2",
              "ipv6hint": "2001:DB8::2"
            }
          }
       ]

4.2. Examples of full RDAP responses including deleg_delegInfo

Example 1: Domain object class with a single DELEG AliasMode record type:

{
  "objectClassName": "domain",
  "handle": "2336799_SomeHandle",
  "ldhName": "EXAMPLE.COM",
  "links": [
    ...
  ],
  "status": [
    "client delete prohibited",
    "client transfer prohibited",
    "client update prohibited"
  ],
  "entities": [
    ...
  ],
  "events": [
    ...
  ],
  "secureDNS": {
    ...
  },
  "deleg_delegInfo": [
     {
        "priority": 0,
        "target" : "config1.example.net",
     }
  ],
  "nameservers": [
    {
      "objectClassName": "nameserver",
      "ldhName": "ns1.example.net"
    },
    {
      "objectClassName": "nameserver",
      "ldhName": "ns2.example.net"
    }
  ],
  "rdapConformance": [
    "rdap_level_0",
    "deleg"
  ],
  "notices": [
    ...
  ]
}

Example 2: Domain object class with multiple DELEG ServiceMode records:

{
  "objectClassName": "domain",
  "handle": "2336799_SomeHandle",
  "ldhName": "EXAMPLE.COM",
  "links": [
    {
      ...
    }
  ],
  "status": [
    "client delete prohibited",
    "client transfer prohibited",
    "client update prohibited"
  ],
  "entities": [
    ...
  ],
  "events": [
    ...
  ],
  "secureDNS": {
    ...
  },
  "deleg_delegInfo": [
     {
        "priority": 1,
        "target" : "ns1.example.com",
        "params": {
           "ipv4hint": "192.0.2.1",
           "ipv6hint": "2001:BE8::1"
         }
     },
     {
        "priority": 1,
        "target" : "ns2.example.net",
        "params": {
           "ipv4hint": "192.0.2.2",
           "ipv6hint": "2001:DB8::2"
         }
     }
  ],
  "nameservers": [
    {
      "objectClassName": "nameserver",
      "ldhName": "ns1.example.com"
    },
    {
      "objectClassName": "nameserver",
      "ldhName": "ns2.example.com"
    }
  ],
  "rdapConformance": [
    "rdap_level_0",
    "deleg"
  ],
  "notices": [
    ...
  ]
}

5. IANA Considerations

IANA is requested to register the following value in the RDAP Extensions Registry:

Extension identifier: deleg

Registry operator: Any

Published specification: this document

Contact: IETF <iesg@ietf.org>

Intended usage: this extension describes how DNS DELEG records values can be included in RDAP responses.

6. Security Considerations

The Security Considerations described in RFC 9083 [RFC9083] are applicable to this extension.

7. Acknowledgments

The following individuals have provided feedback and contributions to the content and direction of this document: James Gould

8. References

8.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC9083]
Hollenbeck, S. and A. Newton, "JSON Responses for the Registration Data Access Protocol (RDAP)", STD 95, RFC 9083, DOI 10.17487/RFC9083, , <https://www.rfc-editor.org/info/rfc9083>.
[RFC9460]
Schwartz, B., Bishop, M., and E. Nygren, "Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)", BCP 78, RFC 9460, DOI 10.17487/RFC9460, , <https://www.rfc-editor.org/info/rfc9460>.

8.2. Informative References

[DELEG]
April, T., Špaček, P., Weber, R., and D. Lawrence, "Extensible Delegation for DNS", Work in Progress, Internet-Draft, draft-dnsop-deleg-00, , <https://datatracker.ietf.org/doc/draft-dnsop-deleg/>.
[brown-epp-deleg]
Brown, G. and P. Hoffman, "Extensible Provisioning Protocol (EPP) mapping for DELEG records", Work in Progress, Internet-Draft, draft-brown-epp-deleg, , <https://datatracker.ietf.org/doc/draft-brown-epp-deleg/>.

Authors' Addresses

Zaid AlBanna
Verisign
12061 Bluemont Way
Reston, VA 20190
United States of America
Scott Hollenbeck
Verisign
12061 Bluemont Way
Reston, VA 20190
United States of America