Tre livelli condividono il nome «server DNS»
Stub resolver
il tuo dispositivo
Resolver ricorsivo
ISP, router o 1.1.1.1
Autorevole
il DNS del dominio stesso
Resolver DNS ricorsivi e autorevoli: le differenze
L'espressione «server DNS» viene usata in modo impreciso per indicare due ruoli davvero diversi. Tenerli separati rende l'intero sistema molto più facile da capire.
Il resolver ricorsivo: fa tutto il lavoro
Il resolver ricorsivo è quello con cui il tuo dispositivo parla davvero, spesso impostato dal tuo ISP, dal tuo router o configurato a mano su un'opzione pubblica come 1.1.1.1 o 8.8.8.8. Il suo compito è prendere la tua query e fare tutto il necessario per rispondere: controlla prima la propria cache e, se non trova nulla, percorre la catena dai server root ai server TLD fino ai server autorevoli del dominio, poi ti restituisce la risposta finale.
Il server autorevole: ha la risposta vera
Un nameserver autorevole è la fonte di verità per i record di un dominio specifico: l'unico posto in cui risiedono i record A, AAAA, MX e gli altri di quel dominio. Non cerca nulla per tuo conto: risponde direttamente per i domini di cui è responsabile e rifiuta (o inoltra altrove) tutto il resto.
- Il tuo resolver ricorsivo è un'infrastruttura condivisa, che di solito risponde per milioni di domini diversi con cui non ha alcun rapporto particolare.
- I server autorevoli di un dominio sono di solito pochi e specifici per quel dominio (o per un piccolo gruppo di domini collegati).
- Uno strumento che esegue un lookup diretto, per esempio risolvendo un dominio attraverso il resolver DNS di Node.js verso un resolver ricorsivo pubblico, usa la stessa catena da ricorsivo ad autorevole del tuo browser, solo senza un browser intorno.
In realtà esiste un terzo ruolo: lo stub resolver
Il tuo dispositivo raramente percorre da solo l'intera catena. Esegue invece uno stub resolver leggero, un piccolo software a livello di sistema operativo senza una vera logica propria, il cui unico compito è inoltrare le domande DNS della tua applicazione al resolver ricorsivo configurato (quello del tuo ISP, del tuo router o un'opzione impostata a mano come 1.1.1.1) e restituire la risposta. Ecco perché cambiare le «impostazioni DNS» di un portatile o di un telefono non cambia affatto il funzionamento del DNS: cambia soltanto il resolver ricorsivo a cui il tuo stub resolver inoltra le richieste. Sempre più spesso, anche questo passaggio di inoltro avviene su un canale cifrato (DNS-over-HTTPS o DNS-over-TLS), così chi osserva la rete locale non può più leggere in chiaro quali domini vengono cercati.
Questa distinzione spiega anche perché «il mio provider DNS» e «i nameserver autorevoli del mio dominio» di solito coincidono, mentre «il server DNS che sto usando» (come 1.1.1.1) è un resolver ricorsivo generico completamente diverso, senza alcuna conoscenza particolare del tuo dominio: è solo il messaggero.
| Ruolo | Dove gira | Cosa conosce |
|---|---|---|
| Stub resolver | Il sistema operativo del tuo dispositivo | Niente: inoltra soltanto la domanda |
| Resolver ricorsivo | Il tuo ISP, il router o un servizio pubblico come 1.1.1.1 | Ogni dominio, nessuno in modo speciale: fa il lavoro per tutti |
| Nameserver autorevole | Il provider DNS del titolare del dominio | Un dominio (o un piccolo gruppo) in modo completo e definitivo |
Perché questa distinzione chiarisce tanta confusione
Una quantità notevole di troubleshooting DNS si riduce a capire quale di questi tre livelli sia davvero responsabile di un certo comportamento poco chiaro, e spesso si sbaglia perché tutti e tre vengono chiamati nel linguaggio comune «il server DNS». Un dominio che si risolve correttamente se interrogato direttamente sui propri nameserver autorevoli, ma in modo errato attraverso il resolver ricorsivo di uno specifico ISP, punta dritto alla cache o alla configurazione di quel resolver, non a qualcosa che il titolare del dominio controlla. Al contrario, un dominio che si risolve in modo errato qualunque resolver ricorsivo si interroghi punta invece al lato autorevole. Saper fare questa separazione in modo netto, in pochi secondi, è ciò che distingue in gran parte un debug DNS efficiente dall'andare a tentativi.
Devi controllare gli indirizzi DNS pubblici di un dominio? Usa lo strumento Domain IP Lookup.
Per approfondire
Scegliere un TTL nella pratica
Capire il TTL DNS: perché le modifiche richiedono tempo
Il TTL stabilisce per quanto una risposta DNS resta in cache: ecco perché le modifiche DNS non compaiono ovunque all'istante.
Due schemi di indirizzamento, in parallelo
IPv4
192.0.2.10
32 bit, ~4,3 miliardi di indirizzi, esauriti
IPv6
2606:4700::6810:84e5
128 bit, 340 sestilioni di indirizzi
Record A e record AAAA: IPv4 e IPv6 spiegati
I record A restituiscono indirizzi IPv4, i record AAAA indirizzi IPv6: due famiglie di indirizzi indipendenti per lo stesso dominio, e perché conviene controllarle entrambe.
Un lookup DNS ricorsivo, un passaggio alla volta
Browser
vuole example.com
Resolver
il tuo ISP / 1.1.1.1
Root + TLD
chi gestisce .com?
Autorevole
la risposta vera
Ogni passaggio della catena è a sua volta un lookup DNS, poi messo in cache
Cos'è il DNS e come funziona davvero?
Una spiegazione semplice del Domain Name System: cosa succede tra il momento in cui digiti un dominio e quello in cui il browser si connette a un server.