Internet-Draft rdap-geofeed December 2023
Singh & Harrison Expires 19 June 2024 [Page]
Workgroup:
Registration Protocols Extensions (regext)
Internet-Draft:
draft-ietf-regext-rdap-geofeed-01
Published:
Intended Status:
Standards Track
Expires:
Authors:
J. Singh
ARIN
T. Harrison
APNIC

An RDAP Extension for Geofeed Data

Abstract

This document defines a new RDAP extension "geofeed1" for including a geofeed file URL in an IP Network object.

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 19 June 2024.

Table of Contents

1. Introduction

[RFC8805] and [I-D.ymbk-opsawg-9092-update] (obsoletes [RFC9092]) detail the IP geolocation feed (in short, geofeed) concept. This document specifies how the geofeed data can be accessed through RDAP. It defines a new RDAP extension "geofeed1" for including a geofeed file URL in an IP Network object.

1.1. Requirements Language

The keywords "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.

2. Specification

2.1. Extension

A new RDAP extension "geofeed1" is defined for accessing the geofeed data through RDAP. It updates the IP Network object class definition (Section 5.4 of [RFC9083]) to include a new link object for the geofeed file URL in its "links" array (Section 4.2 of [RFC9083]).

An RDAP server conforming to this specification MUST include the "geofeed1" extension string in the "rdapConformance" array for the IP Network lookup and search responses, as well as in the help response.

2.4. Example

The following is an elided example of an IP Network object with a Geofeed link object:

{
    "objectClassName": "ip network",
    "handle": "XXXX-RIR",
    "startAddress": "2001:db8::",
    "endAddress": "2001:db8:0:ffff:ffff:ffff:ffff:ffff",
    "ipVersion": "v6",
    "name": "NET-RTR-1",
    "type": "DIRECT ALLOCATION",
    "country": "AU",
    "parentHandle": "YYYY-RIR",
    "status": [ "active" ],
    "links":
     [
        {
            "value": "https://example.net/ip/2001:db8::/48",
            "rel": "self",
            "href": "https://example.net/ip/2001:db8::/48",
            "type": "application/rdap+json"
        },
        {
            "value": "https://example.net/ip/2001:db8::/48",
            "rel": "geo",
            "href": "https://example.net/geofeed",
            "type": "application/geofeed+csv"
        },
        ...
    ],
    ...
}

3. Redaction

Since the Geofeed link objects in the "links" array of an IP Network object are optional, the Redaction by Removal method [I-D.ietf-regext-rdap-redacted] MUST be used when redacting them. The following is an elided example of an IP Network object with redacted Geofeed link objects:

{
    "objectClassName": "ip network",
    "handle": "XXXX-RIR",
    "startAddress": "2001:db8::",
    "endAddress": "2001:db8:0:ffff:ffff:ffff:ffff:ffff",
    "ipVersion": "v6",
    "name": "NET-RTR-1",
    "type": "DIRECT ALLOCATION",
    "country": "AU",
    "parentHandle": "YYYY-RIR",
    "status": [ "active" ],
    "links":
     [
        {
            "value": "https://example.net/ip/2001:db8::/48",
            "rel": "self",
            "href": "https://example.net/ip/2001:db8::/48",
            "type": "application/rdap+json"
        },
        ...
    ],
    "redacted":
    [
        {
            "name":
            {
                "description": "Geofeed links"
            },
            "prePath": "$.links[?(@.rel=='geo')]",
            "method": "removal"
        }
    ],
    ...
}

4. Privacy Considerations

When including a geofeed file URL in an IP Network object, an RDAP server operator SHOULD follow the guidance from Section 7 of [I-D.ymbk-opsawg-9092-update] to not accidentally expose the location of an individual.

5. Security Considerations

[I-D.ymbk-opsawg-9092-update] requires an HTTPS URL for a geofeed file, and optionally RPKI-signing the data within. Besides that, this document does not introduce any new security considerations past those already discussed in the RDAP protocol specifications.

6. IANA Considerations

6.1. RDAP Extensions Registry

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

  • Extension identifier: geofeed1
  • Registry operator: Any
  • Published specification: This document.
  • Contact: IETF iesg@ietf.org
  • Intended usage: This extension describes version 1 of a method to access the IP geolocation feed data through RDAP.

6.3. Media Types Registry

  • Type name: application
  • Subtype name: geofeed+csv
  • Required parameters: N/A
  • Optional parameters: N/A
  • Encoding considerations: See Section 2 of [I-D.ymbk-opsawg-9092-update].
  • Security considerations: See the "Security Considerations" section of this document.
  • Interoperability considerations: There are no known interoperability problems regarding this media format.
  • Published specification: This document.
  • Applications that use this media type: Implementations of the Registration Data Access Protocol (RDAP) Extension for Geofeed Data.
  • Additional information: This media type is a product of the IETF REGEXT Working Group. The REGEXT charter, information on the REGEXT mailing list, and other documents produced by the REGEXT Working Group can be found at https://datatracker.ietf.org/wg/regext/.
  • Person & email address to contact for further information: IESG <iesg&ietf.org>
  • Intended usage: COMMON
  • Restrictions on usage: None
  • Authors: Tom Harrison, Jasdip Singh
  • Change controller: IETF
  • Provisional Registration: No

6.4. Structured Syntax Suffixes Registry

  • Name: Comma-Separated Values (CSV)
  • +suffix: +csv
  • References: [RFC4180], [RFC7111]
  • Encoding Considerations: Same as "text/csv".
  • Interoperability Considerations: Same as "text/csv".
  • Fragment Identifier Considerations:

    The syntax and semantics of fragment identifiers specified for +csv SHOULD be as specified for "text/csv".

    The syntax and semantics for fragment identifiers for a specific "xxx/yyy+csv" SHOULD be processed as follows:

    For cases defined in +csv, where the fragment identifier resolves per the +csv rules, then as specified in +csv.

    For cases defined in +csv, where the fragment identifier does not resolve per the +csv rules, then as specified in "xxx/yyy+csv".

    For cases not defined in +csv, then as specified in "xxx/yyy+csv".

  • Security Considerations: Same as "text/csv".

  • Contact: IETF iesg@ietf.org

7. Acknowledgements

Gavin Brown suggested using a web link instead of a simple URI string to specify a geofeed file URL.

8. Change History

8.1. Changes from 00 to 01

  • Now using a web link instead of a simple URI string to specify a geofeed file URL.
  • Renamed the extension as "geofeed1" instead of "geofeedv1".
  • Introduced the new "geo" link relation type.
  • Introduced the new "application/geofeed+csv" media type.

9. References

9.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>.
[RFC4180]
Shafranovich, Y., "Common Format and MIME Type for Comma-Separated Values (CSV) Files", RFC 4180, DOI 10.17487/RFC4180, , <https://www.rfc-editor.org/info/rfc4180>.
[RFC7111]
Hausenblas, M., Wilde, E., and J. Tennison, "URI Fragment Identifiers for the text/csv Media Type", RFC 7111, DOI 10.17487/RFC7111, , <https://www.rfc-editor.org/info/rfc7111>.
[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>.
[RFC8288]
Nottingham, M., "Web Linking", RFC 8288, DOI 10.17487/RFC8288, , <https://www.rfc-editor.org/info/rfc8288>.
[RFC8805]
Kline, E., Duleba, K., Szamonek, Z., Moser, S., and W. Kumari, "A Format for Self-Published IP Geolocation Feeds", RFC 8805, DOI 10.17487/RFC8805, , <https://www.rfc-editor.org/info/rfc8805>.
[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>.
[RFC9092]
Bush, R., Candela, M., Kumari, W., and R. Housley, "Finding and Using Geofeed Data", RFC 9092, DOI 10.17487/RFC9092, , <https://www.rfc-editor.org/info/rfc9092>.

9.2. Informative References

[I-D.ietf-regext-rdap-redacted]
Gould, J., Smith, D., Kolker, J., and R. Carney, "Redacted Fields in the Registration Data Access Protocol (RDAP) Response", Work in Progress, Internet-Draft, draft-ietf-regext-rdap-redacted-16, , <https://datatracker.ietf.org/doc/html/draft-ietf-regext-rdap-redacted-16>.
[I-D.ymbk-opsawg-9092-update]
Bush, R., Candela, M., Kumari, W. A., and R. Housley, "Finding and Using Geofeed Data", Work in Progress, Internet-Draft, draft-ymbk-opsawg-9092-update-02, , <https://datatracker.ietf.org/doc/html/draft-ymbk-opsawg-9092-update-02>.

Authors' Addresses

Jasdip Singh
ARIN
Tom Harrison
APNIC