Il DNS permette di usare nomi come terzapillola.it invece di ricordare indirizzi IP. È un sistema distribuito, gerarchico e fondamentale per il funzionamento del web.
Quando scrivi un indirizzo come terzapillola.it, il browser deve capire quale macchina contattare. Il nome è pensato per gli esseri umani; la rete ha bisogno di un indirizzo. Il DNS, Domain Name System, collega questi due livelli.
Definirlo “rubrica di internet” è utile, ma incompleto. Il DNS è un sistema gerarchico e distribuito che permette a miliardi di nomi di essere risolti senza un unico archivio centrale.
Il dispositivo chiede a un resolver DNS quale indirizzo corrisponde al nome. Se il resolver possiede già una risposta valida in cache, la restituisce immediatamente.
Se non la possiede, può interrogare la gerarchia DNS: server root, server del dominio di primo livello e infine server autoritativi responsabili di quel dominio.
I root server non conoscono l’indirizzo di ogni sito. Indicano invece dove trovare i server responsabili dei domini di primo livello, come .it o .com. Questi rimandano ai nameserver autoritativi del dominio richiesto.
Il sistema funziona quindi per deleghe. È uno dei motivi per cui internet può crescere senza dipendere da un singolo database globale.
I record A e AAAA collegano un nome a indirizzi IPv4 e IPv6. CNAME crea alias; MX indica i server che gestiscono la posta; TXT può contenere informazioni usate per verifiche e politiche di sicurezza.
Il DNS è quindi una infrastruttura di pubblicazione di informazioni sulla zona, non soltanto un traduttore nome-indirizzo.
Ogni risposta DNS può avere un TTL, cioè un tempo durante il quale può essere conservata. La cache riduce il numero di richieste e accelera la navigazione.
È anche il motivo per cui una modifica ai DNS non appare sempre nello stesso istante ovunque: resolver diversi possono conservare ancora la vecchia informazione fino alla scadenza.
DNSSEC usa firme crittografiche per permettere di verificare che una risposta DNS provenga dalla catena prevista e non sia stata alterata. Non cifra però la richiesta.
Per proteggere la riservatezza del traffico tra dispositivo e resolver vengono usati protocolli come DNS over HTTPS o DNS over TLS. Sono problemi diversi: autenticità della risposta da una parte, privacy della richiesta dall’altra.
Un sito può essere perfettamente online e risultare comunque irraggiungibile attraverso il suo nome. È uno degli aspetti strani dell’infrastruttura digitale: il server può funzionare, ma se il livello di risoluzione fallisce per l’utente il servizio “non esiste”.
Capire il DNS aiuta quindi a vedere internet per quello che è: una pila di sistemi dipendenti l’uno dall’altro. La pagina web è soltanto l’ultimo strato visibile.