# Reverse DNS

Reverse DNS Lookup (rDNS) bezeichnet eine DNS-Anfrage, bei der zu einer IP-Adresse der Name ermittelt werden soll. Zu diesem Zweck werden die IP-Adressen in der Top-Level-Domain .arpa (arpa steht für Address and Routing Parameter Area) abgebildet.
Das Pendant beim Telefon ist die so genannte Inverssuche, also die Suche nach dem Namen zu einer gegebenen Telefonnummer.

## Hintergrund

In den meisten Fällen wird das Domain Name System (DNS) verwendet, um zu einem Domain-Namen die zugehörige IP-Adresse zu ermitteln. Es gibt aber auch die umgekehrte Situation, bei der zu einer vorgegebenen IP-Adresse der Name benötigt wird. Diese umgekehrte Auflösung erfolgt durch die Abfrage von PTR Resource Records unterhalb einer eigens dafür eingerichteten Domänenstruktur unterhalb der Top-Level-Domain .arpa.
Die DNS-Spezifikation sah ursprünglich noch eine andere Methode namens inverser Anfrage (IQUERY) vor, die jedoch unüblich war und wieder abgeschafft wurde.

## Technik

Da es extrem zeitaufwändig wäre, bei einer Rückwärtssuche den gesamten Domänen-Baum nach der gewünschten IPv4-Adresse zu durchsuchen – es ist ja nicht bekannt, in welchem Ast sich der gesuchte Eintrag befindet – wurde eine eigenständige Domäne für Reverse-DNS-Anfragen gebildet, die in-addr.arpa-Domäne. Unterhalb dieser Domäne werden PTR Resource Records abgelegt, wobei als Domännenname die IPv4-Adressen in umgekehrter Reihenfolge ihrer Oktette verwendet wird. Aus der IPv4-Adresse 192.0.2.69 wird beispielsweise 69.2.0.192.in-addr.arpa.
Die unmittelbaren Subdomänen von in-addr.arpa haben als Label eine Zahl zwischen 0 und 255 und repräsentieren die erste Komponente einer IPv4-Adresse. (Beispiele: 10.in-addr.arpa oder 192.in-addr.arpa).
Die nächste Ebene im Baum repräsentiert die zweite Komponente einer IPv4-Adresse (Beispiel: 16.172.in-addr.arpa. enthält die IPv4-Adressen 172.16.x.y) und die unterste Ebene schließlich die dritte Komponente (Beispiel: 2.0.192.in-addr.arpa enthält alle bekannten IPv4-Adressen des Netzes 192.0.2.0/24 – also z. B. 192.0.2.69).
Wie aus den Beispielen ersichtlich ist, enthält ein reverser Name die IP-Adresskomponenten in umgekehrter Reihenfolge. Diese Struktur ermöglicht ein Verfeinern des reversen Adressraums in mehreren Schritten. So kann beispielsweise für das Subnetz 198.51.0.0/16 eine DNS-Zone namens 51.198.in-addr.arpa. angelegt werden, in der alle IPv4-Adressen aus dem Subnetz eingetragen werden. Für einzelne Subnetze wie beispielsweise 198.51.100.0/24 können separate Zonen (100.51.198.in-addr.arpa) angelegt werden, die an andere Nameserver delegiert werden.
Die DNS-Namensauflösung erfolgt bei reversen Domänen genauso wie bei normalen Domänen. Dementsprechend haben auch die DNS-Zonen denselben Grundaufbau. Am Anfang der einer reversen Domäne zugeordneten Zonendatei steht ein SOA Resource Record gefolgt von einem oder mehreren NS Resource Records. Als weitere Resource-Record-Typen sind aber lediglich PTR Resource Records zulässig. Bei einem PTR Resource Record steht links eine IP-Adresse und rechts ein Name – im Gegensatz zum A Resource Record, wo links ein Name und rechts eine IP-Adresse steht.
Auch bei IPv6-Adressen wird dieses Prinzip verwendet. Zusätzlich zur bisherigen Domäne wurde ip6.arpa eingeführt. Die hexadezimalen Ziffern der IPv6-Adressen werden reverse nicht in Viererblöcken, sondern einzeln notiert.
Beispiel:
Der korrespondierende Eintrag der Domäne example.com sieht dann folgendermaßen aus:
Um den entsprechenden Hostnamen zu ermitteln kann man analog zur Ermittlung einer IP zu einem Hostnamen den Befehl nslookup benutzen. Die Abfrage für das oben genannte Beispiel würde dann wie folgt aussehen.