DNS

Domain Name System

La “rubrica” di Internet: nomi, record, caching e risoluzione.
Esempio pratico: configurare un server DNS in Cisco Packet Tracer
Cos’è il DNS e perché è indispensabile

DNS è un sistema distribuito che traduce un nome (es. www.example.com) in un indirizzo IP. Senza DNS potresti comunicare lo stesso a livello IP, ma dovresti ricordarti gli IP dei servizi, cosa impraticabile.

Cosa fa davvero il DNS
  • Traduce nomi → IP (A/AAAA)
  • Traduce IP → nomi (reverse, PTR)
  • Fornisce informazioni sui domini (NS, MX, ecc.)
  • Abilita caching per ridurre tempi e traffico
Idea chiave: DNS non “trasporta” la pagina web e non “fa Internet”. DNS risponde a una domanda: “Qual è l’IP per questo nome?” Poi il client apre la connessione verso quell’IP.
Errore frequente: “Non navigo, quindi Internet è giù”. Spesso la rete funziona ma è DNS che non risolve. Se pinghi un IP e va, ma i nomi no, il problema è DNS.
Come avviene la risoluzione: resolver, cache e autoritativi

Quando scrivi un dominio nel browser, il PC non “chiede a Internet in generale”. Chiede al DNS resolver configurato (spesso quello del router o dell’ISP, oppure un pubblico come 1.1.1.1 / 8.8.8.8).

Flusso tipico (semplificato ma corretto)
  1. Il client consulta prima cache locale (e file hosts se presente).
  2. Se non trova risposta, interroga il resolver configurato.
  3. Il resolver, se non ha cache, fa una ricerca “a catena”: rootTLDautoritativo.
  4. Il resolver restituisce l’IP al client e lo mette in cache per un tempo definito (TTL).
Schema risoluzione DNS (placeholder)
Immagine: inserisci uno schema semplice con root/TLD/autoritativo e il resolver in mezzo.
TTL (Time To Live): è il tempo per cui una risposta può restare in cache. TTL alto = meno traffico, ma aggiornamenti più lenti a propagarsi. TTL basso = aggiornamenti rapidi, ma più query.
Cache “ingannevole”: se cambi un record DNS e “a te funziona ma ad altri no”, spesso è un problema di cache e TTL, non di configurazione sbagliata.
Porte e trasporto: DNS usa tipicamente UDP/53 (query/risposte). In alcuni casi usa TCP/53 (risposte grandi, trasferimenti di zona, alcune operazioni specifiche).
Record DNS: quelli che devi conoscere davvero

DNS non è solo “nome → IP”. I record descrivono servizi e deleghe. Qui metto quelli essenziali, con significato operativo.

Record principali
  • A: nome → IPv4
  • AAAA: nome → IPv6
  • CNAME: alias → altro nome (non IP)
  • MX: server di posta del dominio
  • NS: nameserver autoritativi del dominio
  • PTR: reverse DNS (IP → nome)
  • TXT: testo (spesso usato per verifiche e policy, es. posta)
Distinzione che voglio sentire a voce:
  • A/AAAA danno un indirizzo IP.
  • CNAME non dà IP: rimanda a un altro nome che poi va risolto.
  • NS non è “il DNS che usi sul PC”: indica chi è autoritativo per quel dominio.
Reverse DNS (PTR): non lo “trovi” con il nome di dominio normale. Si usa un dominio speciale: in-addr.arpa per IPv4 (e ip6.arpa per IPv6). È tipico in contesti server e posta.
Esempi rapidi (solo per fissare il concetto)
www.example.com.     A       93.184.216.34
api.example.com.     CNAME   www.example.com.
example.com.         MX      10 mail.example.com.
example.com.         NS      ns1.example.net.
34.216.184.93.in-addr.arpa.  PTR   www.example.com.
Nota pratica: più record A/AAAA sullo stesso nome significa spesso bilanciamento o ridondanza. Non è “errore”: dipende dal servizio.
Troubleshooting essenziale e problemi reali

Quando “non va un sito”, prima separa i piani: connettività IP vs risoluzione DNS. Questa è la diagnostica minima che devi saper fare.

Test rapidi (Windows)
ipconfig /all
nslookup www.example.com
ping 8.8.8.8
ping www.example.com
Test rapidi (Linux)
cat /etc/resolv.conf
dig www.example.com
dig +trace www.example.com
ping 1.1.1.1
ping www.example.com
Interpretazione veloce:
  • Ping a IP ok ma ping a nome no → problema DNS.
  • NSLOOKUP/DIG fallisce → DNS server irraggiungibile o record assente.
  • Risposta lenta → resolver lento, cache fredda o problemi di rete.
Problemi comuni in rete scolastica:
  • DNS bloccati/filtrati o redirect verso DNS interni.
  • Captive portal: finché non accedi, la risoluzione può essere alterata.
  • Cache: dopo cambi record, non tutti vedono subito la modifica (TTL).
Mini-approfondimento sicurezza: il DNS “classico” non cifra le query. Esistono soluzioni come DoT (DNS over TLS) e DoH (DNS over HTTPS) per ridurre intercettazione/manomissione. A livello infrastrutturale esiste DNSSEC per autenticare le risposte, ma non è un tema da trattare a caso: va capito bene prima di usarlo.
Checklist (quando un client “non risolve”)
  • Il client ha un DNS configurato? (da DHCP o statico)
  • Il DNS è raggiungibile in rete? (ping/route/firewall)
  • Il nome esiste davvero? (nslookup/dig)
  • È un problema di cache/TTL? (prova un altro resolver o svuota cache)
  • La rete applica filtri o captive portal?
Riepilogo rapido (da ripetere a voce)
  • Il DNS associa nomi simbolici a indirizzi IP: è un servizio di risoluzione dei nomi e non trasporta dati applicativi.
  • Il client interroga un resolver DNS, che verifica prima la cache locale e, in assenza di risposta, avvia una risoluzione gerarchica (server rootTLD → server autoritativi).
  • Il valore di TTL (Time To Live) determina per quanto tempo una risposta può essere mantenuta in cache, influenzando sia le prestazioni sia i tempi di propagazione delle modifiche ai record.
  • I principali record DNS includono: A / AAAA (indirizzi IPv4/IPv6), CNAME (alias), MX (posta elettronica), NS (server autorevoli), PTR (risoluzione inversa) e TXT (informazioni testuali).
  • In fase di diagnostica è fondamentale distinguere tra problemi di connettività IP e problemi di risoluzione dei nomi, utilizzando strumenti come nslookup o dig.