Cos’è il NAT, Network Address Translation, e come funziona

network-address
Cos’è, ed a cosa serve

Cos’è, ed a cosa serve

Quando si parla di NAT, Network Address Translation (letteralmente: traduzione di indirizzi di rete), ci si riferisce ad un meccanismo di rimappatura di uno spazio di un singolo indirizzo IP in un altro.

L’esigenza di questa rimappatura si ha quando un dispositivo di collegamento tra più computer connesso ad una rete informatica in area locale (LAN), deve connettersi con la rete esterna sia in uscita che in entrata.

Questa esigenza si è venuta a porre nel momento in cui hanno incominciato a scarseggiare gli indirizzi IP del protocollo IPv4 (Internet Protocol version 4m, cioè la quarta revisione dell’Internet Protocol).

Come funziona

Come funziona

Attraverso questo meccanismo (NAT), un dispositivo di rete assegna un indirizzo pubblico ad un computer (o gruppo di computer) all’interno di una rete privata.

La forma più comune di traduzione di indirizzi in rete prevede una grande rete privata che utilizza indirizzi in un intervallo privato (da 10.0.0.0 a 10.255.255.255, da 172.16.0.0 a 172.31.255.255 o da 192.168.0 da 0 a 192.168.255.255).

Uno schema di indirizzamento “privato”  funziona bene relativamente ai computer che devono accedere solo alle risorse all’interno della stessa rete “privata”, come è il caso di computer che richiedono l’accesso ai file server ed alle stampanti: all’interno della rete i router ed i modem router possono instradare il traffico tra gli indirizzi interni senza problemi.

Tuttavia, per accedere alle risorse esterne come Internet, questi computer devono avere un indirizzo pubblico affinché vengano restituite delle risposte alle loro richieste. Ed è qui che entra in gioco il NAT.

Le richieste Internet che necessitano della traduzione di indirizzi di rete (NAT) sono piuttosto complesse ma avvengono così rapidamente che l’utilizzatore finale raramente sa che si sono verificate. Il meccanismo è il seguente.

  1. Un dispositivo di rete all’interno di una rete privata, invia una richiesta a un computer su Internet.
  2. I router all’interno della rete riconoscono che questa richiesta non riguarda una risorsa all’interno della rete, quindi inviano la richiesta al firewall.
  3. Il firewall rileva la richiesta dal computer con l’IP interno.
  4. Invia quindi la stessa richiesta ad Internet utilizzando il proprio indirizzo pubblico e restituisce la risposta dalla risorsa Internet al computer all’interno della rete privata.
  5. Dal punto di vista della risorsa su Internet, il Network Address Translation, sta inviando informazioni all’indirizzo del firewall.
  6. Dal punto di vista del dispositivo di rete, sembra che la comunicazione avvenga direttamente con il sito su Internet.

Quando il NAT viene utilizzato in questo modo, tutti gli utilizzatori della rete interna privata che accedono ad Internet hanno lo stesso indirizzo IP pubblico.

Ciò significa che è sufficiente solo un indirizzo pubblico per connettere centinaia o addirittura migliaia di dispositivi.

La maggior parte dei firewall moderni è in grado d’impostare la connessione tra il dispositivo interno di rete e la risorsa Internet.

Questi possono tener traccia dei dettagli della connessione – porte, ordine dei pacchetti, ed indirizzi IP coinvolti. Tutto ciò viene definito tener traccia dello stato della connessione.

In questo modo il Network Address Translation è in grado di tenere traccia della sessione composta da comunicazioni tra i dispositivi di rete interni ed il firewall e di quelle del firewall con Internet.

Al termine della sessione, il firewall “dimentica” tutte le informazioni sulla connessione.

Le sue altre utilità

Le sue altre utilità

Oltre a consentire alle workstation con indirizzi IP interni di accedere a Internet, il Network Address Translation ha anche altre utilità.

Nelle reti di grandi dimensioni, alcuni dispositivi possono fungere da server Web e richiedere l’accesso da Internet. A questi server vengono assegnati degli indirizzi IP pubblici sul firewall, consentendo al pubblico di accedere ai server solo tramite quell’indirizzo IP.

Inoltre, il NAT può venire impiegato anche per consentire un accesso selettivo all’esterno della rete.

Tramite il NAT è infatti possibile assegnare specifici IP esterni alle workstation o ad altri computer che hanno bisogno di un accesso speciale al di fuori della rete, consentendo loro di comunicare coi computer e con le applicazioni che richiedono un indirizzo IP pubblico univoco.

Come dicevamo, l’utilità principale del Network Address Translation è quella di limitare il numero di indirizzi IP pubblici relativamente una rete privata aziendale o domestica.

Ma il NAT è utile anche per la sicurezza. Ha infatti un ruolo molto importante del firewall in quanto,

  1. conserva il numero di indirizzi pubblici utilizzati all’interno di un’organizzazione,
  2. consente un controllo più rigoroso dell’accesso alle risorse su entrambi i lati del firewall.