DEV Community

slxca
slxca

Posted on

Why WHOIS is Deprecating and How to Use RDAP in Java

The Problem with WHOIS

For decades, the WHOIS protocol was the go-to solution to check domain ownership, IP address allocations, and Autonomous System Numbers (ASNs). However, WHOIS has a massive flaw: it lacks a standardized format. Parsing plain text responses from hundreds of different registries is an absolute nightmare.
Enter RDAP (Registration Data Access Protocol). It’s the official, modern successor to WHOIS. It runs over HTTP and delivers responses in structured JSON.

Introducing rdap-java

While working on infrastructure and DNS monitoring utilities, I realized that existing Java solutions for RDAP were either part of massive, bloated frameworks or heavily outdated.
To solve this, I built rdap-java—a lightweight, dependency-minimal client specifically designed to fetch and map RDAP data cleanly.

Quick Code Example

Here is how simple it is to look up a domain using the package:

// Quick draft example of querying a domain
RdapClient client = new RdapClient();
DomainResponse response = client.queryDomain("github.com");

System.out.println("Registrar: " + response.getRegistrarName());
System.out.println("Status: " + response.getStatus());
Enter fullscreen mode Exit fullscreen mode

(Note: Feel free to adjust this snippet to match your exact API syntax!)

Open Source & Feedback

The project is fully open-source under the MIT license. If you are building anything in the networking, DevOps, or cybersecurity space with Java, I’d love for you to try it out.
Check out the repository here: https://github.com/slxca/rdap-java
What features should I add next? Let me know in the comments!

Top comments (2)

Collapse
 
bhavin-allinonetools profile image
Bhavin Sheth

Clean approach. Keeping the client lightweight is a big plus, especially for small infrastructure and monitoring projects.

Collapse
 
alexshev profile image
Alex Shev

WHOIS deprecation is a good example of infrastructure changing underneath old habits. RDAP is not just a cleaner lookup format; it gives developers a more structured contract for registration data, which matters when the result feeds automation or compliance checks.