Il DNS inoltro è ciò a cui pensa la maggior parte delle persone quando sentono "DNS" durante la digitazione google.com e ritorna 142.250.80.46. Il DNS inverso è l'opposto: inizi con un indirizzo IP e chiedi quale nome di dominio è associato ad esso.
Il nome tecnico per il DNS inverso è ricerca di record PTR (Pointer Record). Si tratta di un elemento silenzioso ma essenziale dell'infrastruttura Internet che influisce sulla consegna delle e-mail, sulla verifica dell'identità del server e sulla leggibilità dei log in modi che non sono evidenti finché qualcosa non si rompe.
Come funziona il DNS inverso
Il DNS inoltrato risiede in zone organizzate per nome di dominio: google.com, mail.google.come così via.
Il DNS inverso risiede in una zona speciale chiamata in-addr.arpa per IPv4 (e ip6.arpa per IPv6). Per cercare il record PTR 203.0.113.42, il sistema DNS interroga:
42.113.0.203.in-addr.arpa
Notare che l'IP è invertito. Questa inversione è il modo in cui funziona la delega DNS: la gerarchia degli indirizzi IP va da generale (ottetto più a sinistra) a specifica (più a destra), mentre in-addr.arpa zone sono delegate in quest'ordine.
Se esiste un record PTR per quell'IP, restituisce un nome host. Se non esiste, la ricerca restituisce NXDOMAIN.
Chi controlla i record PTR?
Questo è il punto chiave che fa inciampare le persone: i record PTR sono controllati da chi possiede il blocco di indirizzi IP, no chiunque sia titolare del dominio.
Se il tuo server è ospitato su AWS, AWS controlla il record PTR per l'IP del tuo server: lo imposti tramite la console AWS (in EC2 → IP elastici → Azioni → Aggiorna DNS inverso), non tramite il registrar del tuo dominio.
Se utilizzi un provider VPS, ti danno un'impostazione del pannello per impostare il tuo record PTR. Se utilizzi un hosting condiviso, in genere non puoi controllare affatto il record PTR: è qualunque cosa abbia configurato l'host.
Questo è importante perché:
- L'impostazione di un record PTR richiede l'accesso in scrittura alla zona DNS inversa del proprietario dell'IP
- Il tuo provider di hosting deve effettivamente configurarlo in base a ciò che richiedi
- Nessuna quantità di modifiche DNS presso il tuo registrar influirà su un record PTR
Come eseguire una ricerca DNS inversa
Online: Usa il Strumento di ricerca DNS inversa. Inserisci un indirizzo IP qualsiasi e restituirà il record PTR (nome host) se ne esiste uno.
Riga di comando:
# Linux / macOS
dig -x 8.8.8.8
host 8.8.8.8
nslookup 8.8.8.8
# Windows
nslookup 8.8.8.8
Uscita da dig -x 8.8.8.8:
;; ANSWER SECTION:
8.8.8.8.in-addr.arpa. 21599 IN PTR dns.google.
Allora 8.8.8.8 risoluzione inversa a dns.google — il che ha senso, è il server DNS di Google.
Perché il DNS inverso è importante
Consegnabilità delle e-mail
Questa è la ragione pratica più immediata per preoccuparsi dei record PTR. Quando il tuo server di posta invia e-mail, i server di posta riceventi eseguono una ricerca DNS inversa sul tuo IP di invio. Controllano due cose:
- Esiste un record PTR per questo IP?
- Il nome host nel PTR registra la risoluzione in avanti sullo stesso IP? (DNS inverso confermato in avanti o FCrDNS)
Se uno dei controlli fallisce, è più probabile che l'e-mail venga contrassegnata come spam o rifiutata completamente. I principali fornitori, tra cui Gmail, Microsoft e Yahoo, tengono conto dei record PTR nel punteggio dello spam.
Un server di posta configurato correttamente ha:
- Record PTR:
203.0.113.42→mail.example.com - Un record:
mail.example.com→203.0.113.42
Questi due record si confermano a vicenda. Senza questo, stai inviando e-mail da un IP che non può identificarsi, il che assomiglia esattamente a un'infrastruttura spam.
Leggibilità del registro
I registri del server registrano gli indirizzi IP. Quando esamini i log di accesso, i log degli errori o i log di sicurezza, è difficile leggere un lungo elenco di indirizzi IP. Molti strumenti di analisi dei log possono essere configurati per risolvere gli IP in nomi host, trasformandoli 203.0.113.42 in mail.example.com rende i log molto più facili da analizzare.
Questo vale anche per strumenti come netstat, sse acquisizioni di pacchetti: vedere i nomi host anziché gli IP grezzi è molto più utile nella pratica.
Risoluzione dei problemi di rete
Quando stai tracciando un percorso di rete con traceroute, ogni hop mostra un indirizzo IP. Gli hop con record PTR si risolvono in nomi host, che spesso rivelano l'operatore di rete e talvolta la posizione fisica:
3 ae-10.r03.amstnl07.us.bb.gin.ntt.net (129.250.3.242) 8.123 ms
4 ae-5.r00.amstnl07.us.bb.gin.ntt.net (129.250.3.64) 8.456 ms
Senza record PTR, traceroute mostra solo IP grezzi, molto meno utile per identificare quale provider sta riscontrando latenza.
Investigazioni sulla sicurezza
Quando trovi un IP sconosciuto che si connette al tuo server o appare nei log del tuo firewall, una ricerca DNS inversa è uno dei primi passi per capire di cosa si tratta.
Un IP che si risolve in modo inverso mail.google.com è molto diverso da quello che risolve
Vale la pena conoscere dynamic-pool-72.isp-xyz.net o restituisce NXDOMAIN. Il nome host non dimostra l'identità (i record PTR possono essere impostati su qualsiasi cosa) ma fornisce il contesto che guida ulteriori indagini.
Combina una ricerca DNS inversa con a Ricerca WHOIS e un Ricerca ASN per un quadro più completo.
Quando il DNS inverso non restituisce nulla
Un record PTR mancante (NXDOMAIN) è comune e talvolta previsto:
- IP residenziali: la maggior parte degli ISP domestici non imposta record PTR per gli IP dei singoli abbonati
- IP dinamici: gli intervalli che vengono riassegnati frequentemente spesso non hanno record PTR
- Alcuni IP cloud: non tutti i fornitori di servizi cloud configurano i record PTR per impostazione predefinita
Un record PTR mancante è un problema per i server di posta (danneggerà il tuo punteggio di spam), ma è perfettamente normale per server web, VPN o qualsiasi servizio che non invia e-mail.
DNS inverso confermato in avanti (FCrDNS)
FCrDNS è la catena di verifica a cui i server di posta elettronica tengono di più:
- Il tuo IP (
203.0.113.42) ha un record PTR a cui puntamail.example.com mail.example.comha un record A che rimanda al passato203.0.113.42- I due corrispondono: questo è FCrDNS
Configurazione di FCrDNS per un server di posta:
- Imposta il record PTR tramite il tuo provider di hosting (cerca "Reverse DNS" o "record PTR" nel pannello del tuo server)
- Assicurati che il nome host nel tuo record PTR abbia un record A che punti all'IP del tuo server nel DNS del tuo dominio
- Verifica con:
dig -x YOUR_IPedig A YOUR_HOSTNAME
Entrambe le ricerche dovrebbero restituire risultati corrispondenti.
Verifica di più IP
Se stai controllando una serie di IP (controllando quali hanno record PTR o verificando FCrDNS per un elenco di server di posta), gli strumenti batch sono più efficienti. Il Strumento di ricerca DNS inversa gestisce le ricerche individuali. Per le ricerche collettive, for loop in bash funzionano bene:
for ip in 8.8.8.8 1.1.1.1 9.9.9.9; do
echo -n "$ip: "
dig -x $ip +short
done
Uscita:
8.8.8.8: dns.google.
1.1.1.1: one.one.one.one.
9.9.9.9: dns.quad9.net.
Il risultato finale
Il DNS inverso è il modo in cui un indirizzo IP rivendica un'identità. È il meccanismo alla base della verifica del server di posta elettronica, dei registri leggibili e dei traceroute significativi.
Per i server che inviano e-mail, FCrDNS è obbligatorio: configura il tuo record PTR tramite il tuo provider di hosting e verifica che corrisponda al record A del tuo nome host. A scopo di indagine, una ricerca DNS inversa su qualsiasi IP sconosciuto è un primo passo veloce.
Usa il Strumento di ricerca DNS inversa per controllare istantaneamente qualsiasi IP.