Nelle architetture di rete contemporanee, la comunicazione tra una rete locale e Internet è gestita da meccanismi di traslazione che permettono di superare la scarsità di indirizzi IPv4 pubblici. Il NAT (Network Address Translation) e la sua evoluzione, il PAT (Port Address Translation), sono tecniche attuate dal router per modificare le intestazioni dei pacchetti in transito.
Il NAT è una tecnica che sostituisce l’indirizzo IP (sorgente o destinazione) nell’intestazione di un pacchetto. Il suo impiego più diffuso è quello di permettere a una rete locale, configurata con indirizzi privati, di accedere a Internet utilizzando un unico indirizzo IP pubblico fornito dall’ISP.
Oltre alla connettività, il NAT introduce un primo livello di sicurezza: agisce nascondendo gli host interni alla rete e scartando tutto il traffico generico proveniente dall’esterno che non sia stato esplicitamente richiesto. Per gestire i flussi, il router utilizza una tabella di corrispondenza tra le socket interne ed esterne (composte da protocollo, indirizzo IP e porta). Tuttavia, il NAT tradizionale presenta un limite operativo: può traslare un solo indirizzo IP alla volta verso un determinato server di destinazione (rapporto 1:1) (detto meglio può mappare solo un indirizzo pubblico in un indirizzo privato). Se un secondo client tentasse di accedere allo stesso server, il router non sarebbe in grado di mappare la connessione contemporaneamente sulla stessa porta.
La tecnica PAT supera le limitazioni del NAT tradizionale introducendo la traslazione delle porte. Mentre il NAT gestisce rapporti 1:1, per il PAT vale la regola del rapporto 1:N tra l'indirizzo IP pubblico e gli indirizzi IP dei client interni.
Attraverso il PAT, il router può gestire contemporaneamente oltre 64.000 connessioni private (sfruttando le $2^{16}$ porte disponibili) utilizzando un singolo indirizzo IP pubblico. Questo è possibile perché il router non trasla solo l'indirizzo IP, ma assegna a ogni connessione una porta differente, permettendo a più client di accedere al medesimo server di destinazione nello stesso istante senza conflitti.
È importante considerare il PAT come una delle tre funzionalità principali del più ampio concetto di NAT. In ambito tecnico, si distinguono infatti:
Frequentemente, queste modalità vengono utilizzate in coppia per ottenere la massima flessibilità, garantendo che ogni pacchetto subisca la traslazione corretta sia dell'indirizzo IP che della porta, ottimizzando l'uso delle scarse risorse di indirizzamento pubblico e mantenendo l'isolamento della rete interna.
| Caratteristica | NAT (1:1) | PAT (1:N) |
|---|---|---|
| Traslazione | Solo indirizzo IP | Indirizzo IP e porta TCP/UDP |
| Capacità | Un client per ogni IP pubblico/sessione | Migliaia di client per un solo IP pubblico |
| Efficienza | Bassa (spreco di IP pubblici) | Altissima (ottimizzazione massima) |
| Uso comune | Server con IP pubblico dedicato | Reti aziendali e domestiche standard |