Czym jest RDAP?
RDAP (Registration Data Access Protocol) to nowoczesny, ustandaryzowany przez IETF protokół dostępu do danych rejestracyjnych domen. Opracowano go jako następcę WHOIS. RDAP udostępnia uporządkowane, czytelne maszynowo odpowiedzi w formacie JSON, dzięki czemu deweloperom znacznie łatwiej jest zintegrować funkcję wyszukiwania domen ze swoimi aplikacjami.
Dlaczego RDAP ma znaczenie dla deweloperów
Jeśli kiedykolwiek próbowano analizować dane WHOIS, wiadomo, jak problematyczne może to być. Każdy rejestrator formatuje odpowiedzi inaczej, używa niespójnych nazw pól i zwraca nieuporządkowany zwykły tekst, z którego trzeba wyodrębniać przydatne informacje za pomocą złożonych wyrażeń regularnych. RDAP rozwiązuje te problemy dzięki ustandaryzowanemu schematowi JSON, który działa spójnie na wszystkich serwerach zgodnych z RDAP.
Najważniejsze zalety techniczne
Uporządkowane odpowiedzi JSON: Odpowiedzi RDAP korzystają ze standardowego modelu danych JSON zdefiniowanego w RFC 9083. Zapewnia to klientom spójną strukturę do analizy, chociaż usługa może pomijać lub redagować pola zgodnie ze swoją polityką dostępu. Architektura RESTful: RDAP korzysta ze standardowych metod HTTP i kodów statusu. Żądanie GET zwraca informacje o domenie, gdy serwer znajdzie pasujący obiekt. Odpowiedź 404 oznacza, że wyszukiwany obiekt nie został znaleziony w tej usłudze; sama w sobie nie dowodzi, że domenę można zarejestrować. HTTPS jako standard: W przeciwieństwie do WHOIS, który przesyła dane w postaci zwykłego tekstu przez port 43, RDAP korzysta z HTTPS, zapewniając szyfrowaną komunikację między aplikacją a serwerem RDAP. Obsługa umiędzynarodowienia: RDAP prawidłowo obsługuje IDN (Internationalized Domain Names) i znaki Unicode, co jest niezbędne w aplikacjach globalnych.Jak działa RDAP
Po wysłaniu zapytania o domenę przez RDAP proces przebiega w następujących krokach:
1. Wyszukiwanie w bootstrapie: Klient wysyła zapytanie do rejestru IANA RDAP Bootstrap, aby znaleźć autorytatywny serwer RDAP dla TLD
2. Żądanie HTTP: Do adresu URL serwera RDAP wysyłane jest żądanie GET (np. https://rdap.verisign.com/com/v1/domain/example.com)
3. Odpowiedź JSON: Serwer zwraca uporządkowany obiekt JSON zawierający dane rejestracyjne, kody statusu i zdarzenia
Przykładowa struktura odpowiedzi RDAP
{
"objectClassName": "domain",
"handle": "example.com",
"ldhName": "example.com",
"status": ["client transfer prohibited"],
"events": [
{"eventAction": "registration", "eventDate": "1995-08-14T04:00:00Z"},
{"eventAction": "expiration", "eventDate": "2025-08-13T04:00:00Z"}
]
}
Porównanie RDAP i WHOIS
| Funkcja | RDAP | WHOIS |
|---|---|---|
| Format danych | Uporządkowany JSON | Nieuporządkowany tekst |
| Transport | HTTPS (szyfrowany) | Zwykły tekst (port 43) |
| Standaryzacja | RFC 9082 i RFC 9083 | Niespójna |
| Obsługa IDN | Natywna | Ograniczona |
| Typ zapytania | RESTful HTTP | Protokół niestandardowy |
Implementacja RDAP w aplikacjach
Dla deweloperów tworzących narzędzia domenowe RDAP jest zalecanym podejściem. Większość nowoczesnych narzędzi do sprawdzania dostępności domen, w tym DomScan, używa RDAP jako głównego źródła danych, ponieważ zapewnia on:
- Dowody dostępności: Odpowiedź 404 oznacza, że wyszukiwany serwer RDAP nie znalazł pasującego obiektu. Sama w sobie nie dowodzi, że domena jest dostępna do rejestracji
- Bogate metadane: Dostęp do dat rejestracji, dat wygaśnięcia i kodów statusu
- Spójne analizowanie: Jedna baza kodu obsługuje wszystkie TLD
Stan wdrożenia RDAP
W przypadku gTLD ICANN podaje, że 28 stycznia 2025 r. RDAP stał się źródłem rozstrzygającym dla informacji rejestracyjnych, a rejestry i rejestratorzy gTLD zasadniczo nie muszą już udostępniać usług WHOIS, z wyjątkami dla .com, .name i .post. Zasady dotyczące ccTLD i wdrożenie RDAP różnią się. Plik IANA Bootstrap pod adresem https://data.iana.org/rdap/dns.json zawiera aktualne mapowania serwerów RDAP dla wszystkich obsługiwanych TLD.
Najlepsze praktyki
Podczas implementowania zapytań RDAP należy odpowiednio buforować odpowiedzi, aby przestrzegać limitów szybkości, zaimplementować bootstrap IANA na potrzeby wyszukiwania serwerów oraz osobno traktować odpowiedzi o nieznalezieniu, przekierowaniu i błędach związanych z polityką. Odpowiedź o nieznalezieniu jest dowodem dotyczącym wyszukiwanej usługi, a nie dowodem możliwości rejestracji.