Larisoluzione DNS inversa, meglio nota nella notazione ingleseReverse DNS lookup (rDNS), permette di risalire al nome dell'host connesso ad internet conoscendone l'indirizzo IP.
IlDomain Name System (DNS) è utilizzato per determinare quale indirizzo IP è associato ad un certonome di dominio. Allo stesso modo, con la risoluzione DNS inversa, si può risalire al nome di dominio facendo una ricerca in base all'indirizzo IP. La risoluzione DNS inversa – spesso chiamata semplicementerisoluzione inversa – si ottiene inserendo un record "reverse IN-ADDR" nella cosiddetta zona DNS di reverse. Tale record è di tipoPTR.
La sezione "INSTRUCTIONS" dellaRFC 1033[1] e la sezione 2.1 della successivaRFC 1912[2] specificano che "ciascunhost raggiungibile su internet deve avere un nome" e che "ciascuno deve verificare che i propri record PTR erecord A siano coerenti".
La risoluzione DNS inversa, ove si utilizzi un indirizzamentoIPv4, utilizza un particolare dominio DNS:in-addr.arpa. Un indirizzo IPv4 è rappresentato, nel dominio in-addr.arpa, da una sequenza di byte in ordine inverso, in rappresentazione decimale con la separazione di un punto fra ciascun numero e terminante con il suffisso .in-addr.arpa.
Ad esempio, il nome di dominio per la risoluzione DNS inversa dell'indirizzo 10.12.13.140 è 140.13.12.10.in-addr.arpa. Il nome dell'host conindirizzo IP 1.2.3.4 può essere ottenuto effettuando una richiesta DNS per un record PTR corrispondente a 4.3.2.1.in-addr.arpa.
Per gli indirizzimulticast è stato creato un apposito dominio utilizzabile in alternativa a in-addr.arpa:mcast.net.
Storicamente un indirizzo IP di 32 bit viene diviso in 4 byte così l'indirizzo si scrive in 4 numeri da 0 a 255. In questo modo gli indirizzi vengono raggruppati in gruppi di 256 ed è stato semplice scrivere i record PTR in quanto i punti separano ciascun blocco; applicare i meccanismi di delega a ciascun gruppo è stato, quindi, altrettanto semplice.
La mancanza di indirizzi IP su internet ha però portato a una suddivisione più piccola dato che, normalmente, alle aziende vengono assegnati 8, 16 o 32 indirizzi IP. Per superare questo problema è stata pubblicata l'RFC 2317[3] che, mediante l'uso direcord CNAME, permette di suddividere ulteriormente i gruppi di indirizzi in modo che ciascun utente possa ricevere la delega per gestire i propri indirizzi, anche se ne ha meno di 256.
La risoluzione DNS inversa inIPv6 utilizza analogamente lo speciale nome di dominioip6.arpa ed è formato da una sequenza dinibble (gruppi di 4 bit) in ordine inverso, rappresentati da una cifra esadecimale, ciascuna delle quali separata da un punto. Ad esempio, il nome per la risoluzione DNS inversa dell'indirizzo IPv64321:0:1:2:3:4:567:89ab èb.a.9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.ip6.arpa.
Sebbene la maggior parte delle voci rDNS hanno un solo record PTR, è perfettamente legittimo avere più record PTR diversi[4].
In ogni modo, utilizzare più record PTR per lo stesso indirizzo IP generalmente non è consigliato, tranne in caso di specifiche necessità.Per esempio, se unwebserver supporta moltivirtual host, può esserci un record PTR per ciascun virtual host.Esistono sistemi operativi e dei software di gestione che automaticamente aggiungono un record PTR per ciascun host e, quindi, anche per ciascun virtual host.
L'utilizzo di record PTR multipli può causare due problemi:
Anche se non sono molto frequenti se paragonati con i record PTR, esistono altri tipi di record che è possibile inserire nell'albero del dominio della risoluzione DNS inversa.Ad esempio si possono inserire delle chiavi di criptazione perIPsec (RFC 4025[5]),SSH (RFC 4255[6]) eIKE (RFC 4322[7]).Vi sono poi anche record meno standardizzati, come ilTXT per inserire commenti e ilLOC per identificare la localizzazione di un indirizzo IP.
Gli usi più frequenti della risoluzione DNS inversa sono: