Aller au contenu

Registration Data Access Protocol

Un article de Wikipédia, l'encyclopédie libre.

Le Registration Data Access Protocol (protocole d'accès aux données d'enregistrement) ou RDAP est un protocole standardisé en 2015, permettant de consulter des données d’enregistrement Internet via une API HTTP.

Successeur du protocole WHOIS, il permet d'obtenir des informations à partir de noms de domaine, d'adresses IP et de numéros de système autonome (ASN) de manière structurée au format JSON.

En décembre 2010, une réunion de l'ICANN s'est tenue pour discuter de l'évolution du protocole WHOIS, créé 28 ans plus tôt et ne répondant plus aux exigences de l'internet moderne[1].

En 2012, l'IETF crée le groupe de travail WEIRDS (pour Web Extensible Internet Registration Data Service), chargé de concevoir un nouveau protocole d'échange de données d'enregistrement[2].

En 2015, le protocole est officialisé à travers une série de cinq RFC, 7480 à 7485[3].

Le 28 janvier 2025, RDAP remplace WHOIS comme source officielle des données d’enregistrement des domaines de premier niveau générique[4].

Structure du protocole

[modifier | modifier le code]

Contrairement à WHOIS, le protocole RDAP utilise un mécanisme standardisé pour localiser le serveur à interroger : il télécharge depuis l’IANA un fichier JSON (dit bootstrap) listant les serveurs RDAP responsables de chaque TLD[5].

Par exemple, pour une requête sur le domaine exemple.fr, un client RDAP consultera cet index, y trouvera l’entrée "fr" et obtiendra ainsi l’URL du serveur de l'AFNIC qui dispose des informations : "https://rdap.nic.fr".

Types de requêtes

[modifier | modifier le code]

Les requêtes au protocole RDAP sont définies dans la RFC 7482[6]. Les requêtes sont envoyées via des URLs HTTP/HTTPS, et doivent contenir l'objet recherché ainsi que son type.

Six types de requêtes existent :

Requête Usage
ip/{adresse_ip} Identification d'une adresse IPv4 ou v6
autnum/{ASN} Identification d'un système autonome
domain/{nom_de_domaine} Identification d'un nom de domaine
nameserver/{serveur_de_nom} Identification d'un serveur de nom (DNS)
entity/{id} Identification d'une entité (courriel, nom...)
help Afficher l'aide sur les requêtes

Contenu de réponses

[modifier | modifier le code]

Les réponses de RDAP sont définies dans la RFC 7483, et sont structurées au format JSON[7]. Leur contenu dépend du type d'objet demandé, mais plusieurs champs sont présents dans toutes les requêtes :

  • objectClassName, contenant le type d'objet retourné,
  • events, contenant l'historique des évènements (création, mise à jour, suppression...),
  • entities, contenant les organisations liées à l'objet et des informations de contact,
  • status, contenant le statut de l'objet (actif, réservé...),
  • remarks et notices, contenant des informations complémentaires ou légales.

Déploiement

[modifier | modifier le code]

Les adresses IPv4, IPv6 et les systèmes autonomes sont couverts à 100% depuis 2019[8].

Au 29 mai 2025, 263 millions de noms de domaine sont accessibles via RDAP, soit une couverture d’environ 75 %[9]. Environ 9,2 % sont localisés sur des serveurs dits Stealth RDAP, ce qui signifie que le registre n’a pas officiellement déclaré ses serveurs RDAP à l’IANA[8]. Enfin, 15.8% des noms de domaines ne sont pas trouvables via RDAP (plus de 15 millions de domaines). Les extensions de la Chine (.cn), de la Russie (.ru) et de l'Australie (.au) sont les plus grandes extensions utilisées manquantes.

Exemple de requête

[modifier | modifier le code]

RDAP peut être utilisé de manière similaire au protocole WHOIS, à l'inverse que celui-ci n'est pas pré-installé sur la plupart des systèmes. Il est nécessaire d'installer un client RDAP afin d'obtenir une sortie de commande similaire :

user@computer ~ % rdap example.com
Domain:
  Domain Name: EXAMPLE.COM
  Handle: 2336799_DOMAIN_COM-VRSN
  Status: client delete prohibited
  Status: client transfer prohibited
  Status: client update prohibited
  Conformance: rdap_level_0
  Conformance: icann_rdap_technical_implementation_guide_0
  Conformance: icann_rdap_response_profile_0
  [Notices]
  Link: https://rdap.verisign.com/com/v1/domain/EXAMPLE.COM
  Event:
    Action: registration
    Date: 1995-08-14T04:00:00Z
  Event:
    Action: expiration
    Date: 2025-08-13T04:00:00Z
  Event:
    Action: last changed
    Date: 2024-08-14T07:01:34Z
  Event:
    Action: last update of RDAP database
    Date: 2025-05-29T14:33:30Z
  Secure DNS:
    Delegation Signed: true
    DSData:
      Key Tag: 370
      Algorithm: 13
      Digest: BE74359954660069D5C63D200C39F5603827D7DD02B56F120EE9F3A86764247C
      DigestType: 2
  Entity:
    Handle: 376
    Public ID:
      Type: IANA Registrar ID
      Identifier: 376
    Role: registrar
    vCard version: 4.0
    vCard fn: RESERVED-Internet Assigned Numbers Authority
    Entity:
      Role: abuse
      vCard version: 4.0
  Nameserver:
    Nameserver: A.IANA-SERVERS.NET
  Nameserver:
    Nameserver: B.IANA-SERVERS.NET

Il est également possible d'utiliser une commande curl pour interroger un serveur RDAP directement via HTTPS :

user@computer ~ % curl https://rdap.verisign.com/com/v1/domain/example.com            
{
    "objectClassName": "domain",
    "handle": "2336799_DOMAIN_COM-VRSN",
    "ldhName": "EXAMPLE.COM",
    "links": [
        {
            "value": "https:\/\/rdap.verisign.com\/com\/v1\/domain\/EXAMPLE.COM",
            "rel": "self",
            "href": "https:\/\/rdap.verisign.com\/com\/v1\/domain\/EXAMPLE.COM",
            "type": "application\/rdap+json"
        }
    ],
    "status": [
        "client delete prohibited",
        "client transfer prohibited",
        "client update prohibited"
    ],
    "entities": [
        {
            "objectClassName": "entity",
            "handle": "376",
            "roles": [
                "registrar"
            ],
            "publicIds": [
                {
                    "type": "IANA Registrar ID",
                    "identifier": "376"
                }
            ],
            "vcardArray": [],
            "entities": []
        }
    ],
    "events": [],
    "secureDNS": {
        "delegationSigned": true,
        "dsData": []
    },
    "nameservers": [],
    "rdapConformance": [],
    "notices": []
}

Articles connexes

[modifier | modifier le code]

Liens externes

[modifier | modifier le code]

Références

[modifier | modifier le code]
  1. (en) « Technical Evolution of the Whois Service | Cartagena », sur archive.icann.org, (consulté le )
  2. Stéphane Bortzmeyer, « Le protocole RDAP, remplaçant de whois ? » Accès libre, sur www.bortzmeyer.org, (consulté le )
  3. (en) « Web Extensible Internet Registration Data Service (weirds) », sur datatracker.ietf.org (consulté le )
  4. ICANN, « Actualités de l’ICANN : lancement du RDAP en remplacement du WHOIS » Accès libre, (consulté le )
  5. « RDAP, obtenir des informations sur un nom de domaine », sur Afnic (consulté le )
  6. Andy Newton et Scott Hollenbeck, « Registration Data Access Protocol (RDAP) Query Format », IETF, Internet Engineering Task Force, no RFC 7482,‎ (lire en ligne, consulté le )
  7. Andy Newton et Scott Hollenbeck, « JSON Responses for the Registration Data Access Protocol (RDAP) », IETF, Internet Engineering Task Force, no RFC 7483,‎ (lire en ligne, consulté le )
  8. a et b (en) Gavin Brown, « Stealth RDAP » Accès libre [PDF], (consulté le )
  9. « Deployment Dashboard - RDAP.ORG », sur deployment.rdap.org (consulté le )