Norid er for tiden i ferd med å innføre en ny tjeneste for oppslag av domenedata basert på den nye protokollen RDAP. RDAP-protokollen er en internasjonal standard for oppslag av informasjon om domenenavn. Det er meningen at den etter hvert vil ta over for vår nåværende whois-tjeneste.

RDAP inneholder en rekke forbedringer i forhold til whois.

  • Overføringsformatet for oppslagsdataene er klarere spesifisert, og lettere å behandle maskinelt.
  • Tegnsett er entydig spesifisert.
  • Protokollen gir mulighet for såkalt 'layered access'. Det vil si at priviligerte brukere kan autentises og få bedre tilgang til data enn anonyme brukere får. Det kan for eksempel dreie seg om mer detaljerte data eller større oppslagsrate.

Vi har nå åpnet en RDAP-tjeneste mot vårt testsystem, rdap.test.norid.no. Tjenesten er i en tidlig utviklingsfase og endringer i formatet på både spørringer og svarmeldinger må kunne påregnes. Vi planlegger å åpne en tilsvarende tjeneste mot produksjonssystemet tirsdag 27. november.

Hvordan virker tjenesten

Tjenesten er tilgjengelig under følgende URL:

https://rdap.test.norid.no

Tjenesten støtter oppslag av domener, kontaktdata (entiteter) og navnetjenere. Noen eksempler:

Oppslag av domene:
https://rdap.test.norid.no/domain/norid-test.no

Oppslag av kontaktperson med personhandle som nøkkel:
https://rdap.test.norid.no/entity/XX35301R-NORID

Oppslag av registrar med registrar-id som nøkkel:
https://rdap.test.norid.no/entity/reg1-NORID

Oppslag av navnetjener med navnetjenerhandle som nøkkel:
https://rdap.test.norid.no/nameserver_handle/XX35301H-NORID

Søk etter navnetjener med et gitt hostnavn:
https://rdap.test.norid.no/nameservers?name=ns1.norid-test.no

RDAP er designet som en webtjeneste. Spørringer sendes inn som URLer som tjeneren besvarer med data i JSON-format. RDAP bruker HTTP-metoden GET for oppslag av data om et objekt. HTTP-metoden HEAD brukes for å spørre om et objekt finnes.

Oppslag av data

Oppslag av data for et objekt (domenenavn, kontakt eller en navnetjener) gjøres med HTTP-metoden GET. Dette tilsvarer et oppslag i whois-protokollen. Oppslaget besvares med returkode '200 OK' og et sett med JSON-data hvis objektet finnes, og '404 Not found' hvis det ikke finnes.

Spørring om et objekt finnes

En spørring om et objekt (domenenavn, kontakt eller en navnetjener) er registrert gjøres med HTTP-metoden HEAD. Dette tilsvarer et oppslag i DAS-protokollen. Oppslaget besvarers med returkode '200 OK' hvis objektet finnes, og '404 Not found' hvis det ikke finnes.

Lokale tilpasninger

RDAP-protokollen er som nevnt en internasjonal standard, men den gir rom for å legge til lokale utvidelser og tilpasninger. Norids RDAP-tjener har en lokal utvidelse som gjør det mulig å slå opp navnetjenere basert på nameserver handle. Merk at dette er en utvidelse som ikke forandrer på virkemåte eller returdata for de andre standardiserte spørringene. En generell RDAP-klient vil derfor kunne bruke de standardiserte spørringene uten at det oppstår kompatibilitetsproblemer.

Utvidelse for oppslag av navnetjenere

Standardoppslaget for navnetjenerobjekter bruker navnetjenerens hostnavn som oppslagsnøkkel. I Norids registrysystem vil et oppslag på navnetjener nøklet på hostnavn ikke være entydig siden systemet kan inneholde flere navnetjenerobjekter med samme hostnavn. Vi har derfor valgt å tilby et eget oppslag for navnetjenere basert på navnetjener handle:

https://rdap.test.norid.no/nameserver_handle/NSYO3H-NORID

Oppslaget returnerer et dataobjekt formattert på samme måte som standardoppslaget i RDAP for navnetjenere.

Ratebegrensning

RDAP-tjenesten har to ratebegrensninger, der begge begrenser antall oppslag fra en gitt IP-adresse. Den ene ratebegrensningen gir hver IP-adresse tilgang til maksimalt 300 GET-oppslag og 3000 HEAD-oppslag i døgnet i et glidende vindu. Den andre ratebegrensningen gir hver IP-adresse tilgang til maskimalt 10 oppslag (GET eller HEAD) i minuttet). Hvis en av disse grensene overskrides vil oppslag besvares med returkode '429 Too many requests'

Programvare for RDAP-klienter

RDAP er en webtjeneste, så en hvilken som helst webleser kan i prinsippet brukes som RDAP-klient så lenge den er i stand til å ta i mot og presentere JSON-data. Kommandolinje-klienter som wget og curl kan for eksempel brukes for å hente ut data til scripting:

GET:
% curl https://rdap.test.norid.no/domain/norid-test.no
% wget -O - https://rdap.test.norid.no/domain/norid-test.no

HEAD:
% curl --head https://rdap.test.norid.no/domain/norid-test.no
% wget --method=HEAD https://rdap.test.norid.no/domain/norid-test.no

Det finnes andre mer spesialiserte klienter som presenterer JSON-dataene på en bedre lesbar form. Følgende klienter er tilgjengelig i åpen kildekode:

https://www.openrdap.org
https://github.com/arineng/nicinfo

Referanser

En detaljert beskrivelse av virkemåten finnes i RFC-spesifikasjonene for RDAP-protokollen:

https://tools.ietf.org/html/rfc7480
https://tools.ietf.org/html/rfc7481
https://tools.ietf.org/html/rfc7482
https://tools.ietf.org/html/rfc7483

Publisert: 13. november 2018
Sist oppdatert: 26. august 2020