Internet DRAFT - draft-ietf-regext-rdap-geofeed
draft-ietf-regext-rdap-geofeed
Registration Protocols Extensions (regext) J. Singh
Internet-Draft ARIN
Intended status: Standards Track T. Harrison
Expires: 5 September 2024 APNIC
4 March 2024
An RDAP Extension for Geofeed Data
draft-ietf-regext-rdap-geofeed-02
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 5 September 2024.
Copyright Notice
Copyright (c) 2024 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 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 Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Singh & Harrison Expires 5 September 2024 [Page 1]
Internet-Draft rdap-geofeed March 2024
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. Specification . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Extension . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Geofeed Link . . . . . . . . . . . . . . . . . . . . . . 3
2.3. Media Type for a Geofeed Link . . . . . . . . . . . . . . 4
2.4. Example . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Redaction . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. Privacy Considerations . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
6.1. RDAP Extensions Registry . . . . . . . . . . . . . . . . 7
6.2. Link Relations Registry . . . . . . . . . . . . . . . . . 7
6.3. Media Types Registry . . . . . . . . . . . . . . . . . . 7
6.4. Structured Syntax Suffixes Registry . . . . . . . . . . . 8
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8
8. Change History . . . . . . . . . . . . . . . . . . . . . . . 8
8.1. Changes from 00 to 01 . . . . . . . . . . . . . . . . . . 8
8.2. Changes from 01 to 02 . . . . . . . . . . . . . . . . . . 9
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
9.1. Normative References . . . . . . . . . . . . . . . . . . 9
9.2. Informative References . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
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.
Indentation and whitespace in examples are provided only to
illustrate element relationships, and are not a REQUIRED feature of
this protocol.
"..." in examples is used as shorthand for elements defined outside
of this document.
Singh & Harrison Expires 5 September 2024 [Page 2]
Internet-Draft rdap-geofeed March 2024
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.
Here is an elided example for this inclusion:
{
"rdapConformance": [ "rdap_level_0", "geofeed1", ... ],
...
}
2.2. Geofeed Link
The IP Network object class (Section 5.4 of [RFC9083]) MAY include a
link object for the geofeed file URL (also referred to as a Geofeed
link object) in its "links" array, with the following REQUIRED JSON
members:
* "value" -- The "value" JSON value is the context URI (Section 4.2
of [RFC9083]).
* "rel" -- The "rel" JSON value is the link relation type and set to
the "geo" string. The "geo" link relation type is new and will be
registered in the IANA Link Relations Registry (see Section 6.2).
* "href" -- The "href" JSON value is the target URI and set to the
HTTPS URL of the geofeed file for an IP network.
Per the definition of a web link ([RFC8288]), a Geofeed link object
may have additional JSON members. Specifically:
* "type" -- The "type" JSON value is the media type for the target
URI. Given that the geofeed data is mostly intended for use by
automated/scripted processes, it is RECOMMENDED that server
operators set a media type in Geofeed link objects. See
Section 2.3 for acceptable "type" values.
* "hreflang" -- The "hreflang" JSON value is an attribute for the
target URI and could be used to indicate the languages the geofeed
data is available in. It is OPTIONAL.
Singh & Harrison Expires 5 September 2024 [Page 3]
Internet-Draft rdap-geofeed March 2024
There MAY be zero or more Geofeed link objects in the "links" array
of an IP Network object. In other words, the Geofeed link objects
are OPTIONAL.
2.3. Media Type for a Geofeed Link
[I-D.ymbk-opsawg-9092-update] requires a geofeed file to be a UTF-8
CSV file, with a series of "#" comments at the end for the optional
RPKI (Resource Public Key Infrastructure) signature. At first
glance, the "text/csv" media type (Section 4 of
[I-D.shafranovich-rfc4180-bis]) seems like a good candidate to
represent a geofeed file since it now supports the "#" comments
needed for including the RPKI signature.
However, although the CSV geofeed data could be directly viewed by a
user, the most common use case will involve it being processed by
some sort of application first, in order to facilitate subsequent
address lookup operations. Therefore, using a new “application”
media type with a “geofeed” subtype under the "application" top-level
type (Section 4.2.5 of [RFC6838]) for the geofeed data is preferable
over the existing "text/csv" media type.
To that end, a new media type "application/geofeed+csv" will be
registered in the IANA Media Types Registry (see Section 6.3), and a
new suffix "+csv" will be registered in the IANA Structured Syntax
Suffixes Registry (see Section 6.4).
The "type" JSON value in a Geofeed link object SHOULD be set to the
"application/geofeed+csv" media type.
If alternative geofeed formats (beside CSV) are defined in the
future, they could be included in future versions of this
specification.
2.4. Example
The following is an elided example of an IP Network object with a
Geofeed link object:
Singh & Harrison Expires 5 September 2024 [Page 4]
Internet-Draft rdap-geofeed March 2024
{
"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:
Singh & Harrison Expires 5 September 2024 [Page 5]
Internet-Draft rdap-geofeed March 2024
{
"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.
Singh & Harrison Expires 5 September 2024 [Page 6]
Internet-Draft rdap-geofeed March 2024
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 (mailto:iesg@ietf.org)
* Intended usage: This extension describes version 1 of a method to
access the IP geolocation feed data through RDAP.
6.2. Link Relations Registry
IANA is requested to register the following value in the Link
Relations Registry:
* Relation Name: geo
* Description: Indicates that the link context has a resource with
geographic information at the link target.
* Reference: This document.
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 Section 5 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. Furthermore, any application that processes the CSV 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/ (https://datatracker.ietf.org/wg/regext/).
* Person & email address to contact for further information: IETF
iesg@ietf.org (mailto:iesg@ietf.org)
* Intended usage: COMMON
Singh & Harrison Expires 5 September 2024 [Page 7]
Internet-Draft rdap-geofeed March 2024
* 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 (mailto: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.
Singh & Harrison Expires 5 September 2024 [Page 8]
Internet-Draft rdap-geofeed March 2024
* Renamed the extension as "geofeed1" instead of "geofeedv1".
* Introduced the new "geo" link relation type.
* Introduced the new "application/geofeed+csv" media type.
8.2. Changes from 01 to 02
* Updated the "Requirements Language" section for examples.
* Added an example for RDAP conformance.
* Updated the rationale for using the new "application/geofeed+csv"
media type.
* Updated the "Applications that use this media type" section for
the "application/geofeed+csv" registration.
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, March 1997,
<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, October 2005,
<https://www.rfc-editor.org/info/rfc4180>.
[RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type
Specifications and Registration Procedures", BCP 13,
RFC 6838, DOI 10.17487/RFC6838, January 2013,
<https://www.rfc-editor.org/info/rfc6838>.
[RFC7111] Hausenblas, M., Wilde, E., and J. Tennison, "URI Fragment
Identifiers for the text/csv Media Type", RFC 7111,
DOI 10.17487/RFC7111, January 2014,
<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,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8288] Nottingham, M., "Web Linking", RFC 8288,
DOI 10.17487/RFC8288, October 2017,
<https://www.rfc-editor.org/info/rfc8288>.
Singh & Harrison Expires 5 September 2024 [Page 9]
Internet-Draft rdap-geofeed March 2024
[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, August 2020,
<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, June 2021,
<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, July 2021,
<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, 27 November 2023,
<https://datatracker.ietf.org/doc/html/draft-ietf-regext-
rdap-redacted-16>.
[I-D.shafranovich-rfc4180-bis]
Shafranovich, Y., "Common Format and MIME Type for Comma-
Separated Values (CSV) Files", Work in Progress, Internet-
Draft, draft-shafranovich-rfc4180-bis-06, 31 January 2024,
<https://datatracker.ietf.org/doc/html/draft-shafranovich-
rfc4180-bis-06>.
[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, 24 July
2023, <https://datatracker.ietf.org/doc/html/draft-ymbk-
opsawg-9092-update-02>.
Authors' Addresses
Jasdip Singh
ARIN
Email: jasdips@arin.net
Tom Harrison
APNIC
Singh & Harrison Expires 5 September 2024 [Page 10]
Internet-Draft rdap-geofeed March 2024
Email: tomh@apnic.net
Singh & Harrison Expires 5 September 2024 [Page 11]