L’enregistrement PTR : comment fonctionne cet enregistrement DNS ?

Le système de noms de domaines facilite la communication sur Internet. La fonction la plus connue est certainement la résolution de noms. Elle permet à l’internaute de taper une adresse URL dans son navigateur. Celle-ci est alors convertie en une adresse IP. Pour que ce fonctionnement soit possible, le DNS (ou les autres serveurs de noms impliqués) a recours aux fichiers de zones. Ce sont de simples fichiers texte dans lesquels sont enregistrées différentes lignes correspondant à des enregistrements DNS. La résolution de noms se fait grâce aux enregistrements A ou AAAA. Les connexions email sont possibles grâce aux enregistrements MX.

Note

Le DNS utilise plus de 100 types d’enregistrements différents. Notre article complet sur les différents records DNS vous présente un tableau avec tous les enregistrements possibles, suivis d’un court descriptif.

Les enregistrements de type PTR sont quasiment le contraire des enregistrements A. Au lieu d’assigner une adresse IP à un nom de domaine, ces enregistrements font le contraire. Les enregistrements PTR permettent ainsi un DNS inversé.

Un exemple pour expliquer les records PTR

PTR vient du mot « Pointeur ». Le nom vous donne déjà une idée du type d’enregistrement. Un record PTR renvoie donc à un objet, à savoir le nom du domaine. C’est ce qui permet d’effectuer un Reverse DNS (rDNS), appelé aussi Recherche inversée. Habituellement, on utilise cette fonction lorsqu’on connaît le nom d’un site et que l’on souhaite récupérer son adresse IP. Avec une recherche inversée, le processus est identique, mais dans le sens contraire. On connaît l’adresse IP, mais on voudrait savoir quel est le domaine qui s’y rapporte, et quelle est l’adresse URL correspondant à ce domaine.

La syntaxe des enregistrements

La syntaxe d’un record PTR est similaire à celle des autres types d’enregistrements. Les différentes données sont enregistrées à la suite dans ce qu’on appelle des « champs ».

  • <name> : le premier champ d’un record PTR renferme l’adresse IP.
  • <ttl> : le champ Time to Live (Durée de vie) indique en secondes la durée pendant laquelle les informations sont valables. Passé ce délai, elles doivent être requises à nouveau.
  • <class> : ce champ renferme l’abréviation de la classe du réseau qui est employé.
  • <type> : ici, ce sont les lettres PTR qui précisent le type d’enregistrement.
  • <rdata> : le dernier champ indique les données de ressources, c’est-à-dire le nom du domaine.

Tous les champs sont saisis les uns après les autres, sur une même ligne. Inutile de les séparer d’un caractère quelconque. Une simple espace suffit. Pour clore une ligne (un enregistrement), un retour-chariot suffit.

<name> <ttl> <class> <type> <rdata>

La syntaxe de l’enregistrement est identique à celle d’un record A. Seul le contenu des champs change. On commence par enregistrer l’adresse IP. On peut y inscrire des adresses IPv4 ou des adresses IPv6. Notez cependant une particularité, le recours au Reverse Mapping – l’adresse IP est enregistrée dans un ordre inversé.

Si vous utilisez une adresse IPv4, on retourne l’ordre des octets. L’ordre des chiffres reste cependant inchangé au sein de chaque groupe. Il en est autrement des adresses IPv6. Chaque chiffre ou lettre est inversé(e) et séparé(e) du caractère suivant par un point. Les zéros initiaux, que l’on a tendance à ignorer dans la notation hexadécimale, doivent être inclus dans les records PTR.

Vous devrez aussi indiquer la Zone. Il y deux options possibles, selon que vous utilisiez une adresse IP de type IPv4 ou de type IPv6. La première option est désignée par in-addr.arpa.; et la deuxième par ip6.arpa.

Remarque

Comme tous les enregistrements DNS, les records PTR utilisent des Fully Qualified Domain Names (FQDN). Cela signifie que les noms de domaines (le champ Name et le champ Ressource Data) se terminent toujours par un point. Celui-ci sépare le Top-Level-Domain (TLD) du répertoire-racine que l’on reconnaît à son champ vide.

Le Time to live correspond à la durée pendant laquelle l’enregistrement reste valide. Une fois ce laps de temps dépassé, les données devront être à nouveau recherchées sur le serveur. On évite ainsi au DNS de rencontrer le problème d’avoir des informations périmées dans le cache avec les problèmes de connexion que cela peut engendrer. Ce champ n’apparaît généralement pas au niveau de l’enregistrement. On va préférer l’inscription $TTL au début du fichier de zone, pour définir la durée de validité pour toute la zone. Le TTL est enregistré en secondes.

Le champ Classe n’a aujourd’hui plus qu’une signification historique. Lorsque le DNS a été développé, il existait deux autres projets de réseaux : Hesiod (abrégé en HS) et Chaosnet (représenté par les lettres CH). Ces deux réseaux ne sont plus utilisés depuis longtemps, et seule la classe Internet reste valable. C’est la raison pour laquelle on trouve généralement dans ce champ l’abréviation IN. Il arrive aussi que ce champ soit tout simplement ignoré. Si vous laissez ce champ vide, le système y inscrira la valeur par défaut qui correspond au réseau internet. Le type de cet enregistrement est bien entendu PTR. Vient ensuite le champ Data avec le nom du domaine qui respecte encore une fois le format FQDN.

Un exemple d’enregistrement PTR

Prenons un exemple : pour une raison quelconque, un internaute connaît les adresses IP de example.org, mais il n’a aucune idée du domaine correspondant à ces adresses. Les adresses sont 2606:2800:220:1:248:1893:25c8:1946 et 93.184.216.34. Pour que l’internaute puisse utiliser le DNS inversé, il doit disposer des enregistrements PTR. Ceux-ci se présentent sous la forme suivante :

$TTL 2100
34.216.184.93.in-addr.arpa. IN PTR example.org.
6.4.9.1.8.c.5.2.3.9.8.1.8.4.2.0.1.0.0.0.0.2.2.0.0.0.8.2.6.0.6.2.ip6.arpa. IN PTR example.org.

Dans cet exemple, nous avions défini la valeur du Time to live au début du fichier pour qu’elle s’applique à tous les enregistrements. Viennent ensuite les deux enregistrements PTR qui renferment les renvois des adresses IP vers les noms de domaines, ce qui permet la recherche inversée.

Comment vérifier un enregistrement PTR ?

Pour connaître le record PTR d’un site Internet, on peut recourir à des services disponibles sur le Net. Google vous propose son service Public DNS, avec lequel vous pourrez connaître tous les enregistrements DNS d’un domaine. Pour consulter un enregistrement PTR, allez sur la page d’accueil du service et entrez une adresse IP valide. Il n’est pas nécessaire d’inverser l’adresse pour la conformer au format de l’enregistrement PTR. L’application de Google se charge de le faire.

Le service Public DNS devrait normalement comprendre automatiquement que vous souhaitez faire une recherche PTR inversée. Les deux options EDNS client subnet et DNSSEC peuvent rester inchangées. La première option rend la requête DNS plus efficace, tandis que la deuxième option garantit qu’aucun tiers n’ait pu intercepter la communication et n’ait pu modifier les données.

Les résultats sont affichés en dessous de l’intitulé « Answer ». Le service vous annonce immédiatement deux serveurs différents, dont vous trouverez les noms dans la partie « Data ». Comme vous pouvez le voir, les deux serveurs ont la même valeur dans le champ TTL, ce qui signifie que cette donnée a été enregistrée au niveau de toute la zone.

Au lieu d’une abréviation, le type est désigné par un nombre. L’Internet Assigned Numbers Authority (IANA) assigne à chaque type d’enregistrement DNS une valeur spécifique, ce qui permet à chaque type d’enregistrement d’avoir son propre numéro. Le numéro 12 correspond à un record PTR.

L’adresse IP ayant fait l’objet de cette recherche relève du domaine google.com. Les réponses données renvoient cependant directement aux appellations internes des serveurs, des noms que vous ne pouvez pas utiliser de manière officielle, et qui ne fonctionnent pas comme des URL.

Conseil

Si vous ne souhaitez pas recourir au service de Google et préférez une interface française, vous pouvez tester la page de Nslookup Tool.