Registry Data Access Protocol (RDAP): A Common Whois System

By Andy Newton - Chief Engineer, ARIN

For decades the only common method for accessing data in all the Regional Internet Registries (RIRs) has been Whois. Unfortunately, as a protocol, Whois does not specify any queries or responses making true interoperability between RIRs very difficult. This situation is even worse for domain registries.

In March, the Internet Engineering Task Force (IETF) published a set of Requests for Comment (RFCs) for a protocol intended to be a replacement for the Whois systems of RIRs and Domain Name Registries (DNRs). This protocol is called the Registry Data Access Protocol (RDAP), and it is based on the common approach of delivering results in JavaScript Object Notation (JSON) format over HTTP (also know as a Representational State Transfer, or RESTful web service). Both LACNIC and APNIC have already fielded servers speaking this new protocol. On 20 June 2015, ARIN officially deployed its RDAP services. The other RIRs and many DNRs are expected to do so very soon as well.

ARIN’s RDAP services are composed of an RDAP version of its WHOIS system, essentially returning ARIN registration data in RDAP format, and an RDAP bootstrap service.

In RDAP, the method to find the proper server for which to send queries is called bootstrapping. It is a set of processes that involve downloading JSON files from IANA and indexing them appropriately. For some types of clients, such as Javascript programs running in web browsers or simple Bash scripts using curl or wget, bootstrapping can be onerous. But ARIN’s bootstrapping service makes this trivial. Clients that do not wish to conduct bootstrapping simply send their RDAP queries to the bootstrap service, and an HTTP(S) redirect will be returned instructing the client where next to send the query.

ARIN’s bootstrap service is located at https://rdap.arin.net/bootstrap. A query for IP address 1.0.0.0 would look like this: https://rdap.arin.net/bootstrap/ip/1.0.0.0. That query results in a redirect to APNIC, whereas http://rdap.arin.net/bootstrap/ip/23.0.0.0 results in a redirect to ARIN’s RDAP registry service (located at https://rdap.arin.net/registry). Incidentally, the code for ARIN’s RDAP bootstrap service is open source and available on GitHub.

ARIN has also made available an RDAP command-line client called NicInfo. This is an open source, Ruby program, and most recent versions of Linux and Mac OS can be simply installed with ‘gem install nicinfo’. More information on NicInfo can be found on its GitHub pages.

 

 

POST WRITTEN BY:

Andy Newton

Chief Engineer, ARIN