NAT Overload (PAT)

Traduzione di indirizzo e porta con un solo IP pubblico

Topologia con modem ADSL, cloud e server remoto
Scenario di rete

La LAN interna utilizza indirizzi privati 192.168.1.0/24 e contiene tre host: 192.168.1.101, 192.168.1.102 e 192.168.1.103. Il router R1 collega la rete locale a un modem ADSL, che a sua volta è connesso a un dispositivo Cloud che simula Internet e inoltra il traffico verso un server con indirizzo pubblico 1.0.1.10.

Il modem ADSL in Packet Tracer è un dispositivo elementare: converte il segnale sulla linea telefonica in Ethernet e viceversa, senza avere un proprio indirizzo IP. L’indirizzo pubblico è assegnato al router dell’ISP, mentre il modem lavora solo a livello fisico, come un adattatore di linea trasparente. Il dispositivo Cloud permette di collegare più linee (WAN, modem, altre reti) nello stesso ambiente di laboratorio.

Topologia NAT Overload con modem ADSL, cloud e server
Topologia NAT Overload (PAT): rete locale 192.168.1.0/24, router R1, modem ADSL e server 1.0.1.10.
Obiettivo
  • Permettere a tutti i PC della LAN privata di raggiungere il server pubblico 1.0.1.10.
  • Utilizzare un unico indirizzo IP pubblico sul lato WAN del router.
  • Osservare come il router traduce indirizzo e porta sorgente per distinguere le diverse comunicazioni.
Funzionamento del NAT Overload (PAT)

Nel NAT overload il router utilizza un solo indirizzo pubblico (ad esempio 1.0.0.1) per rappresentare verso l’esterno tutti gli host della LAN. La distinzione tra le varie sessioni avviene tramite la coppia indirizzo IP + numero di porta.

Quando più host interni aprono connessioni verso la stessa destinazione (1.0.1.10), il router assegna porte diverse sull’indirizzo pubblico 1.0.0.1 in modo che ogni voce della tabella NAT sia univoca. Se una combinazione IP/porta è già presente, il NAT modifica anche la porta, oltre all’indirizzo, per evitare collisioni.

Output show ip nat translations con PAT
Esempio di output show ip nat translations con NAT Overload.

Nella parte evidenziata si vede come i pacchetti provenienti da 192.168.1.102 e 192.168.1.103 vengono tradotti su 1.0.0.1 con porte sorgente diverse (1024, 1026, 1028, 1025, 1027, 1029, …), garantendo una ritraduzione corretta verso il PC interno originario quando arrivano le risposte dal server.

Configurazione IOS di R1
Indirizzamento delle interfacce
enable
configure terminal

interface fastethernet0/0
 ip address 192.168.1.1 255.255.255.0
 no shutdown
exit

interface fastethernet1/0
 ip address 1.0.0.1 255.0.0.0
 no shutdown
exit
Definizione delle zone NAT
interface fastethernet0/0
 ip nat inside
exit

interface fastethernet1/0
 ip nat outside
exit
Access-list e attivazione NAT overload
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 interface fastethernet1/0 overload

L’access-list 1 seleziona tutti gli host della rete 192.168.1.0/24 che saranno oggetto di traduzione. Il comando ip nat inside source list 1 interface fastethernet1/0 overload specifica che le richieste in uscita provenienti da quegli host dovranno essere tradotte sull’indirizzo IP dell’interfaccia FastEthernet1/0, usando la modalità overload: più IP interni vengono quindi rappresentati da un solo indirizzo globale, con ritraduzione basata sulle porte.

Verifica del funzionamento

Dopo aver configurato il router, i PC della LAN possono eseguire un ping 1.0.1.10. Il comando show ip nat translations mostra in tempo reale le voci della tabella NAT generate dai pacchetti ICMP in uscita.

show ip nat translations
show ip nat statistics

A fini di prova è possibile azzerare le traduzioni con:

clear ip nat translation *

In questo esercizio la tabella si popola rapidamente con traduzioni di tipo ICMP che evidenziano la trasformazione di inside local (192.168.1.x) in inside global (1.0.0.1:porta), tutte dirette verso lo stesso outside global (1.0.1.10).