The DNS is mainly used to find the address that corresponds to a given name. However, it is sometimes useful to obtain the name that corresponds to an IP address. This done by using the `PTR` (`pointer`) `RR`. The `RData` part of a `PTR` `RR` contains the name while the `Name` part of the `RR` contains the IP address encoded in the `in-addr.arpa` domain. IPv4 addresses are encoded in the `in-addr.arpa` by reversing the four digits that compose the dotted decimal representation of the address. For example, consider IPv4 address `192.0.2.11`. The hostname associated to this address can be found by requesting the `PTR``RR` that corresponds to `11.2.0.192.in-addr.arpa`. A similar solution is used to support IPv6 addresses :rfc:`3596`, but slightly more complex given the length of the IPv6 addresses. For example, consider IPv6 address `2001:1890:123a::1:1e`. To obtain the name that corresponds to this address, we need first to convert it in a reverse dotted decimal notation : `e.1.0.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.a.3.2.1.0.9.8.1.1.0.0.2`. In this notation, each character between dots corresponds to one nibble, i.e. four bits. The low-order byte (`e`) appears first and the high order (`2`) last. To obtain the name that corresponds to this address, one needs to append the `ip6.arpa` domain name and query for `e.1.0.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.a.3.2.1.0.9.8.1.1.0.0.2.ip6.arpa`. In practice, tools and libraries do the conversion automatically and the user does not need to worry about it.
Le DNS est principalement utilisé pour trouver l'adresse qui correspond à un nom donné. Cependant, il est parfois utile d'obtenir le nom qui correspond à une adresse IP. Pour ce faire, on utilise le `PTR` (`pointer`) `RR`. La partie `RData` d'un `PTR` `RR` contient le nom tandis que la partie `Name` du `RR` contient l'adresse IP encodée dans le domaine `in-addr.arpa`. Les adresses IPv4 sont codées dans le domaine `in-addr.arpa` en inversant les quatre chiffres qui composent la représentation décimale en pointillés de l'adresse. Par exemple, prenons l'adresse IPv4 `192.0.2.11`. Le nom d'hôte associé à cette adresse peut être trouvé en demandant le `PTR` `RR` qui correspond à `11.2.0.192.in-addr.arpa`. Une solution similaire est utilisée pour supporter les adresses IPv6 :rfc:`3596`, mais légèrement plus complexe étant donné la longueur des adresses IPv6. Par exemple, considérons l'adresse IPv6 `2001:1890:123a::1:1e`. Pour obtenir le nom qui correspond à cette adresse, il faut d'abord la convertir dans une notation décimale pointillée inverse : `e.1.0.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.a.3.2.1.0.9.8.1.1.0.0.2`. Dans cette notation, chaque caractère entre les points correspond à un nibble, c'est-à-dire à quatre bits. L'octet de poids faible (`e`) apparaît en premier et celui de poids fort (`2`) en dernier. Pour obtenir le nom correspondant à cette adresse, il faut ajouter le nom de domaine `ip6.arpa` et rechercher `e.1.0.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.a.3.2.1.0.9.8.1.1.1.0.0.2.ip6.arpa`. En pratique, les outils et les bibliothèques font la conversion automatiquement et l'utilisateur n'a pas à s'en soucier.