DNS e NAT: come funzionano
Scopri come il DNS trasforma i nomi dei siti in indirizzi IP e come il NAT permette a tutti i dispositivi della rete domestica di comunicare con Internet attraverso il router.
💡 In poche parole
Il DNS ci permette di utilizzare nomi facili da ricordare al posto degli indirizzi IP. Il NAT, invece, permette al router di tradurre gli indirizzi utilizzati nella rete locale quando i dispositivi comunicano con Internet.
🌐 Cosa succede quando scrivi il nome di un sito?
Quando apri il browser e digiti il nome di un sito, per esempio progettiarduino.com, il computer non può utilizzare semplicemente quel nome per inviare i pacchetti attraverso Internet.
La comunicazione IP ha bisogno di conoscere un indirizzo IP di destinazione.
Serve quindi un sistema capace di associare il nome del sito al relativo indirizzo IP.
Questo sistema è il DNS.
📖 Che cos’è il DNS?
DNS significa Domain Name System.
È un sistema distribuito che permette di associare i nomi di dominio alle informazioni necessarie per raggiungere i servizi associati, tra cui gli indirizzi IP.
In questo modo non dobbiamo ricordare una lunga serie di numeri ogni volta che vogliamo visitare un sito.
🔍 Un esempio semplice
Noi possiamo ricordare facilmente:
Il computer, invece, deve ottenere l’indirizzo IP necessario per raggiungere il server.
🔄 Una richiesta DNS passo dopo passo
In maniera semplificata, quando vuoi raggiungere un sito accade questo:
- digiti il nome del sito nel browser;
- il dispositivo deve conoscere il relativo indirizzo IP;
- viene effettuata una richiesta DNS;
- il resolver DNS cerca o recupera la risposta;
- il dispositivo ottiene l’indirizzo necessario;
- può quindi iniziare la comunicazione con il server.
🧠 Concetto chiave
Il DNS non trasporta la pagina web. Il suo compito, in questo esempio, è aiutare il dispositivo a trovare l’indirizzo necessario per raggiungere il servizio.
📡 Quale server DNS utilizziamo?
Nella lezione precedente abbiamo visto che il DHCP può fornire al dispositivo anche l’indirizzo di uno o più server DNS.
Una configurazione domestica potrebbe apparire così:
In alcuni router l’indirizzo DNS configurato sul dispositivo coincide con quello del router.
Il router può quindi inoltrare le richieste verso resolver DNS esterni oppure gestirle secondo la propria configurazione.
🗃️ La cache DNS
Sarebbe inefficiente ripetere continuamente le stesse ricerche.
Per questo motivo le risposte DNS possono essere memorizzate temporaneamente in una cache.
Se la stessa informazione viene richiesta nuovamente e la voce è ancora valida, può essere riutilizzata senza ripetere l’intero processo.
⚡ Perché la cache è utile?
Riduce il numero di richieste DNS necessarie e può rendere più rapido il recupero di informazioni già conosciute.
⏳ Il TTL
Le informazioni DNS non vengono normalmente conservate nella cache per sempre.
I record DNS possiedono un valore chiamato TTL, cioè Time To Live.
Il TTL indica per quanto tempo una determinata risposta può essere mantenuta in cache prima che sia necessario considerarla scaduta e recuperarla nuovamente.
💡 Perché a volte una modifica DNS non appare subito?
Una delle ragioni è proprio la presenza delle cache. Informazioni precedenti possono continuare a essere utilizzate fino alla loro scadenza.
📋 Alcuni record DNS
Il DNS non contiene soltanto una semplice associazione tra un nome e un indirizzo IPv4.
Esistono diversi tipi di record, ognuno con uno scopo preciso.
| Record | Funzione principale |
|---|---|
| A | Associa un nome a un indirizzo IPv4 |
| AAAA | Associa un nome a un indirizzo IPv6 |
| CNAME | Indica un nome canonico per un alias |
| MX | Indica i server utilizzati per la posta elettronica del dominio |
| TXT | Contiene informazioni testuali utilizzate per diversi scopi |
🏠 Dagli indirizzi privati a Internet
Ora passiamo al secondo protagonista della lezione: il NAT.
Ricordi gli indirizzi privati che abbiamo incontrato nelle lezioni precedenti?
Questi indirizzi possono essere utilizzati nella rete locale, ma gli indirizzi IPv4 privati non vengono instradati sulla rete Internet pubblica.
Il router deve quindi gestire la comunicazione tra la rete privata e la rete esterna.
🔄 Che cos’è il NAT?
NAT significa Network Address Translation.
È un meccanismo che modifica le informazioni relative agli indirizzi IP mentre il traffico attraversa un dispositivo che effettua la traduzione, tipicamente il router.
In una rete domestica IPv4 permette, tra le altre cose, a numerosi dispositivi con indirizzi privati di comunicare con Internet attraverso l’indirizzo pubblico della connessione.
💡 In pratica
Il computer può continuare a utilizzare il suo indirizzo privato nella LAN, mentre il router gestisce la traduzione necessaria quando il traffico attraversa il confine tra rete privata e rete pubblica.
👥 Ma come fanno più dispositivi a condividere un solo IPv4 pubblico?
In casa potremmo avere contemporaneamente:
Tutti questi dispositivi possono navigare contemporaneamente anche quando la connessione dispone di un solo indirizzo IPv4 pubblico.
Nelle reti domestiche viene comunemente utilizzata una forma di traduzione che sfrutta anche i numeri di porta per distinguere le diverse comunicazioni.
Questa tecnica viene spesso chiamata PAT — Port Address Translation oppure NAT overload.
📝 Un esempio semplificato di PAT
Immaginiamo due dispositivi che aprono contemporaneamente delle connessioni verso Internet.
Il router mantiene le informazioni necessarie per sapere a quale comunicazione interna appartengono i pacchetti di risposta.
Quando arrivano le risposte da Internet, può quindi consegnarle al dispositivo corretto.
🧠 Concetto chiave
Non è sufficiente pensare che il router sostituisca semplicemente un IP privato con quello pubblico. Nella situazione domestica più comune, deve anche distinguere contemporaneamente molte comunicazioni provenienti da dispositivi differenti.
🚪 E le connessioni iniziate da Internet?
Se un dispositivo della rete locale avvia una comunicazione verso Internet, il router può mantenere lo stato necessario per gestire il traffico di risposta.
Una nuova connessione proveniente dall’esterno, invece, non corrisponde automaticamente a uno specifico dispositivo della LAN.
Se vogliamo rendere raggiungibile dall’esterno un determinato servizio interno, possiamo avere bisogno di configurare una regola di port forwarding.
⚠️ NAT e firewall non sono la stessa cosa
NAT e firewall sono due funzioni differenti. Il NAT esegue la traduzione degli indirizzi, mentre il firewall applica regole per consentire o bloccare il traffico.
Molti router domestici svolgono entrambe le funzioni, ed è per questo che i due concetti vengono talvolta confusi.
🛡️ Il NAT è una tecnologia di sicurezza?
Non propriamente.
Il fatto che una tipica configurazione NAT domestica non permetta automaticamente di associare una nuova connessione proveniente da Internet a un host interno può avere effetti utili dal punto di vista dell’esposizione, ma il NAT non deve essere considerato un sostituto del firewall.
Sono tecnologie con funzioni diverse.
🌐 NAT e IPv6
Il NAT è diventato estremamente comune con IPv4 anche a causa della disponibilità limitata degli indirizzi IPv4 pubblici.
IPv6 dispone invece di uno spazio di indirizzamento enormemente più grande ed è stato progettato affinché ogni interfaccia possa disporre di indirizzi globalmente instradabili quando appropriato.
Questo significa che nel normale modello IPv6 non è necessario utilizzare NAT per risparmiare indirizzi come avviene comunemente con IPv4.
🔒 Questo non significa eliminare il firewall
Avere indirizzi IPv6 globali non significa che qualsiasi dispositivo debba essere liberamente raggiungibile da Internet. Il firewall continua ad avere un ruolo fondamentale nel controllo delle connessioni.
🔗 DNS e NAT lavorano insieme?
DNS e NAT svolgono compiti completamente differenti, ma possiamo incontrarli entrambi durante una normale navigazione web.
Immaginiamo di aprire un sito dal nostro notebook.
🎯 Cosa devi ricordare
- DNS significa Domain Name System.
- Il DNS permette di ottenere informazioni associate ai nomi di dominio, tra cui gli indirizzi IP dei servizi.
- I record A sono utilizzati per IPv4, mentre i record AAAA sono utilizzati per IPv6.
- Le risposte DNS possono essere memorizzate temporaneamente in cache.
- Il TTL contribuisce a stabilire per quanto tempo un record può essere conservato in cache.
- NAT significa Network Address Translation.
- Il NAT permette di tradurre gli indirizzi quando il traffico attraversa il dispositivo che effettua la traduzione.
- Nelle reti domestiche IPv4, NAT/PAT permette a più dispositivi privati di condividere un indirizzo pubblico.
- Il port forwarding può essere utilizzato per indirizzare determinate connessioni in ingresso verso uno specifico servizio interno.
- NAT e firewall non sono la stessa cosa.
- IPv6 non necessita normalmente del NAT come soluzione alla scarsità degli indirizzi IPv4.
🎓 Quiz finale
Controlla se hai assimilato i concetti principali della lezione.
Mostra la risposta
Domain Name System.
Mostra la risposta
Per ottenere le informazioni necessarie ad associare i nomi di dominio agli indirizzi IP dei servizi che vogliamo raggiungere.
Mostra la risposta
Un record A associa un nome a un indirizzo IPv4, mentre un record AAAA lo associa a un indirizzo IPv6.
Mostra la risposta
Permette di riutilizzare temporaneamente informazioni DNS già ottenute, evitando di ripetere inutilmente le stesse ricerche finché i dati sono ancora validi.
Mostra la risposta
Network Address Translation.
Mostra la risposta
Il router può utilizzare NAT/PAT, distinguendo le diverse comunicazioni anche attraverso i numeri di porta.
Mostra la risposta
No. Il NAT traduce gli indirizzi, mentre il firewall applica regole per controllare il traffico consentito o bloccato.
Mostra la risposta
Permette di indirizzare determinate connessioni provenienti dall’esterno verso uno specifico servizio o dispositivo della rete interna.

