NO / EN

Norid AS

Abels gt. 5, Teknobyen

Telefon +47 73 55 73 55

RDAP er en oppslagstjeneste for domenedata. Forkortelsen står for Registration Data Access Protocol. Norids RDAP-tjeneste er basert på den internasjonale RDAP-protokollen. Tjenesten er designet som et REST-API og er derfor velegnet for automatiserte oppslag.

RDAP skal med tiden erstatte den nåværende whois-protokollen. Tjenesten er under utvikling hos mange registreringstjenester, også hos Norid.

Tilgang

Tjenesten er tilgjengelig på:

rdap.norid.no

Tjenesten er i produksjon.

Testing

Tjenesten er tilgjengelig på:

rdap.test.norid.no

Teknisk dokumentasjon

RDAP kan regnes som en etterfølger av den nåværende whois-protokollen og inneholder en rekke forbedringer i forhold til denne.

  • Overføringsformatet for oppslagsdataene er klart spesifisert i json-format, og enkelt å behandle maskinelt.
  • Tegnsett er entydig spesifisert.
  • Protokollen gir mulighet for såkalt 'layered access'. Det vil si at priviligerte brukere kan autentiseres 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.

Hvordan virker tjenesten

Tjenesten er tilgjengelig under følgende URL:

rdap.norid.no

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

Oppslag av domenenavn:
https://rdap.norid.no/domain/norid.no

Oppslag av kontaktperson med person-hendel som nøkkel:
https://rdap.norid.no/entity/NH55R-NORID

Oppslag av domeneforhandler med forhandler-ID som nøkkel:
https://rdap.norid.no/entity/reg1-NORID

Oppslag av navnetjener med navnetjener-hendel som nøkkel:
https://rdap.norid.no/nameserver_handle/X11H-NORID

Søk etter navnetjener med et gitt vertsnavn:
https://rdap.norid.no/nameservers?name=x.nic.no

RDAP er designet som en webtjeneste. Spørringer sendes inn som URL-er 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 hvorvidt et objekt finnes

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

Oppslag på domener som ikke kan registreres

Det finnes noen domener som ikke er tilgjengelig for registrering. Svarkoden fra HEAD-oppslag skiller ikke mellom slike domener og andre domener som ikke er registrert men er tilgjengelig for registrering. For å se om et domene er tilgjengelig må det gjøres et GET-oppslag. Returmeldingen vil da være 404 Not found med tilleggsinformasjon for domener som ikke er tilgjengelig.

Lokale tilpasninger

RDAP-protokollen er 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å navnetjenerhendel. Dette er en utvidelse som ikke endrer 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 vertsnavn som oppslagsnøkkel. I Norids registreringssystem vil et oppslag på navnetjener nøklet på vertsnavn ikke være entydig siden systemet kan inneholde flere navnetjenerobjekter med samme vertsnavn. Vi har derfor valgt å tilby et eget oppslag for navnetjenere basert på navnetjenerhendel:

https://rdap.norid.no/nameserver_handle/X11H-NORID

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

Autentisert oppslag

Med autentisering vil oppslagene gi utvidet svardata for registrarene og et utvidet sett med oppslagsfunksjoner. RDAP-klienten autentiserer seg ved hjelp av standard https 'basic authentication' slik som beskrevet i standarden RFC-2617.

Administrasjon av brukere for autentisert oppslag

Alle registrarer har tilgang til autentiserte oppslag. Som registrar må du da gjøre følgende:

  • Det må opprettes en bruker for RDAP. Dette gjøres i registrarweben, https://registrar.norid.no, på tilsvarende måte som med andre brukere der (for testsystemets RDAP-tjeneste, rdap.norid.no vil det være den tilhørende registrarweben i test, https://registrar.test.norid.no, som gjelder)
  • Brukeren må gis rettigheten 'rdap_access'.
  • Etter at brukeren er opprettet kan det ta noen minutter før den er klar til bruk i RDAP. Med en klient som støtter 'basic authentication' kan man nå aksessere tjenesten. Det fulle brukernavnet som klienten skal autentisere med i et oppslag er på formen <brukernavn>@<regNNN>. Hvordan autentisering settes opp på klientsiden vil avhenge av programvaren som brukes. I eksemplene under gjøres oppslag med curl og wget. Her autentiserer registrar 'reg9876' med bruker 'rdapuser' og passordet 'mysecret123'.

Eksempel på autentisert oppslag med curl:

% curl --user rdapuser@reg9876:mysecret123 https://rdap.norid.no/domain/norid.no

Eksempel på autentisert oppslag med wget:

% wget -O - --auth-no-challenge --http-user=rdapuser@reg9876 --http-password=mysecret123 https://rdap.norid.no/domain/norid.no

Tilgangsbegrensning for autentiserte oppslag

Tilgangen til autentiserte oppslag er begrenset med et IP-filter. Hver registrar må registrere adressene som de selv ønsker å bruke. Dette gjøres i registrarweben under 'registry access/registrarwhois ip-addresses'.

Utvidet tilgang til data

Anonyme (uautentiserte) oppslag returnerer svarmeldinger med begrenset datainnhold. Med autentisert oppslag blir mer data tilgjengelig.

Oppslag av domener

For domeneoppslag blir informasjon om abonnent tilgjengelig. Innholdet som vises om abonnenten blir tilsvarende som for direkteoppslag av kontaktobjektet (se neste avsnitt).

Oppslag av kontaktobjekter (entiteter)

Anonymt oppslag kan bare gjøres mot kontaktobjekter som er roller. Autentiserte oppslag kan gjøres mot alle typer kontaktobjekter, dvs. roller, personer og organisasjoner. Eksempler:

https://rdap.norid.no/entity/NT1O
https://rdap.norid.no/entity/AA253P

Hvilke kontaktdata som blir vist kan avhenge av kontakttype (rolle, person, organisasjon) og om registraren som gjør oppslaget er sponsor for objektet.

Søkefunksjoner

Søkefunksjoner i RDAP gjør det mulig å hente ut lister av domener, kontakter og navnetjenere, basert på ulike søkenøkler. Anonyme oppslag gir bare tilgang til søk på navnetjenere med hostnavn som nøkkel. Andre søkefunksjoner er tilgjengelige for autentiserte oppslag. Disse er vist i eksemplene under. Søket vil kun vise dataobjekter som er sponset av registraren som gjør oppslaget. For noen av søkenøklene kan wildcardtegnet '*' brukes. Svarmeldingen for et søk inneholder begrenset data om hvert objekt i trefflisten. Komplette data kan deretter hentes ved hjelp av direkteoppslag mot det aktuelle objektet. Se for øvrig avsnittet 'datamengde i svarmelding fra søk' for å returnere komplette datasett i søkesvaret.

Eksempler på søk etter domenenavn:

https://rdap.norid.no/domains?name=nord*.no

https://rdap.norid.no/domains?registrant=NT1O

https://rdap.norid.no/domains?identity=985821585

https://rdap.norid.no/domains?nsIp=128.39.8.40

https://rdap.norid.no/domains?nsLdhName=*.labnic.no

Eksempler på søk etter navnetjenere:

https://rdap.norid.no/nameservers?name=*.labnic.no

https://rdap.norid.no/nameservers?ip=128.39.8.40

Eksempler på søk etter kontaktobjekter:

https://rdap.norid.no/entities?fn=norid*

https://rdap.norid.no/entities?identity=985821585

Paginering og opptelling

For søk som gir mange treff vil bare de første treffene være med i svarmeldingen. Meldingen vil i tillegg inneholde en peker til et søk som returnerer de neste svarene. På den måten kan man bla gjennom hele resultatsettet. Ved å legge til parameteren 'count=true' vil svarmeldingen i tillegg vise totalt antall svarmeldinger.

Eksempel: https://rdap.norid.no/domains?name=nord*.no&count=true

Svarmeldingen vil inneholde en lenke som kan følges til neste side:

    "paging_metadata": {
        "links": [
            {
                "href": "https://rdap.norid.no/domains?name=nord*.no&cursor=O1GW1xKrewPkUHzQwIrTTQ%3D%3D&count=1",
                "rel": "next",
                ...

Sortering

Det er mulig å velge sorteringsrekkefølge på svarene i returnmeldingen.

  • For domener kan følgende sorteringsnøkler brukes: registrationDate, lastChangedDate, expirationDate, name
  • For navnetjenere kan følgende sorteringsnøkler brukes: registrationDate, lastChangedDate, name
  • For kontaktobjekter kan følgende sorteringsnøkler brukes: registrationDate, lastChangedDate, handle, fn, org, country, cc, city

Sortering på utløpsdato:

https://rdap.norid.no/domains?name=nord*.no&sort=expirationDate

Revers sortering på utløpsdato:

https://rdap.norid.no/domains?name=nord*.no&sort=expirationDate:d

Sortering på landkode, deretter poststed:

https://rdap.norid.no/entities?fn=norid*&sort=cc,city

Datamenge i svarmelding fra søk

Svarmeldingen for et søk inneholder i utgangapunktet mindre data for hver av objektene enn et enkeltoppslag gjør. Det mulig å endre dette ved å bruke parameteren 'fieldSet'. Ved å sette parameteren til henholdsvis 'fieldSet=full' og 'fieldSet=id' kan man velge om svarmeldingen skal inneholde komplette datasett eller bare identiteten til objektene og en lenke til et oppslag for hele objektet.

Eksempler:

https://rdap.norid.no/domains?name=nord*.no&fieldSet=full
https://rdap.norid.no/domains?name=nord*.no&fieldSet=id

Ratebegrensning

RDAP-tjenesten har to ratebegrensninger, 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 nettleser kan i prinsippet brukes som RDAP-klient så lenge den er i stand til å ta imot og presentere JSON-data. Kommandolinjeklienter som wget og curl kan for eksempel brukes for å hente ut data til scripting:

GET:

% curl https://rdap.norid.no/domain/norid.no

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

HEAD:

% curl --head https://rdap.norid.no/domain/norid.no

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

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

OpenRDAP - kommandolinjeklient skrevet i Go.

NicInfo - kommandolinjeklient skrevet i Ruby.

Referanser

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

RDAP-utvidelser og andre relaterte RFC-dokumenter:

Publisert: 8. juli 2020
Sist oppdatert: 1. februar 2023