In questa lezione impari a
- spiegare perché serve il NAT e le sue tre tipologie
- configurare il NAT overload (PAT) da CLI
- pubblicare un server interno con il port forwarding
- verificare le traduzioni con show ip nat translations
Perché serve il NAT
Gli indirizzi IPv4 pubblici sono finiti da tempo: non ce n'è uno per ogni dispositivo. Le reti interne usano quindi indirizzi privati (192.168.x.x, 10.x.x.x, 172.16–31.x.x), che però non possono viaggiare su Internet.
Il NAT (Network Address Translation) risolve il problema: il router, quando un pacchetto esce, sostituisce l'indirizzo privato del mittente con il proprio indirizzo pubblico, e fa l'operazione inversa sulle risposte. È quello che fa il router di casa: tutti i dispositivi della famiglia escono su Internet con un unico indirizzo pubblico.
Il NAT ha anche un effetto di protezione: dall'esterno non si possono raggiungere i dispositivi interni, perché non hanno un indirizzo pubblico.

Le tre tipologie di NAT
| Tipo | Traduzione | Uso tipico |
|---|---|---|
| Statico | 1 privato ↔ 1 pubblico, fisso | un server interno raggiungibile da fuori |
| Dinamico | privati ↔ un gruppo (pool) di pubblici | aziende con più indirizzi pubblici |
| Overload (PAT) | tanti privati → 1 pubblico, distinti dalla porta | la quasi totalità delle reti, compresa quella di casa |
Nel PAT il router tiene una tabella che associa a ogni connessione interna (IP privato e porta) una porta diversa sull'indirizzo pubblico: così sa a chi restituire ogni risposta.
Inside e outside
Il router deve sapere quale interfaccia guarda dentro (la LAN privata) e quale fuori (verso il provider). È l'errore più frequente: se le interfacce non sono marcate, il NAT non traduce nulla.
Configurazione del NAT overload in CLI
Router> enable
Router# configure terminal
! Passo 1: un'access-list indica QUALI indirizzi interni tradurre
Router(config)# ip access-list standard test-nat
Router(config-std-nacl)# permit 192.168.1.0 0.0.0.255
Router(config-std-nacl)# exit
! Passo 2: NAT overload sull'indirizzo dell'interfaccia esterna
Router(config)# ip nat inside source list test-nat interface Serial2/0 overload
! Passo 3: l'interfaccia ESTERNA è outside
Router(config)# interface Serial2/0
Router(config-if)# ip nat outside
Router(config-if)# exit
! Passo 4: l'interfaccia INTERNA è inside
Router(config)# interface FastEthernet0/0
Router(config-if)# ip nat inside
Router(config-if)# exit
Nell'access-list si usa la wildcard, cioè la maschera rovesciata: per una /24 è 0.0.0.255, per una /26 è 0.0.0.63, per una /25 è 0.0.0.127.
Verifica
Router# show ip nat translations
Router# show ip nat statistics
Router# clear ip nat translation *
Fate partire un ping o una pagina web da un PC interno, poi guardate show ip nat translations: vedrete l'indirizzo privato (inside local) e quello pubblico con cui è uscito (inside global).
Il port forwarding
Il NAT blocca le connessioni che arrivano da fuori. Ma se l'azienda ha un server web interno che deve essere visibile su Internet? Si apre una "porta" precisa: il port forwarding dice al router "le richieste che arrivano sulla porta 80 del mio indirizzo pubblico, girale a quel server interno".
Router(config)# ip nat inside source static tcp 192.168.1.10 80 interface GigabitEthernet0/0 80
Si legge: "il server interno 192.168.1.10, porta 80, è raggiungibile sulla porta 80 dell'interfaccia esterna". Se la vostra versione di Packet Tracer non accetta la forma con interface, scrivete al suo posto l'indirizzo pubblico: ... static tcp 192.168.1.10 80 200.10.0.1 80.
Il port forwarding sul router di casa
Sui router domestici si fa dall'interfaccia grafica. In Packet Tracer, sull'Home Router: GUI → Applications & Gaming → Single Port Forwarding, indicando porta esterna, porta interna, protocollo e IP del server.

Esercizi
⭐ Facile
Esercizio 1 – NAT overload base.
- Rete interna
192.168.1.0/24: router Gig0/1192.168.1.1(inside), switch e 3 PC con IP statici.10,.11,.12, gateway192.168.1.1. - Rete esterna "Internet"
100.0.0.0/30: router Gig0/0100.0.0.1(outside), server web100.0.0.2.
Costruite la topologia, configurate il NAT overload (access-list per la rete 192.168.1.0, overload su Gig0/0, interfacce inside e outside), attivate una pagina web sul server esterno e apritela dal browser dei PC digitando 100.0.0.2.
Verifiche: ✅ i PC pingano il server esterno ✅ il browser mostra la pagina ✅ show ip nat translations mostra le traduzioni ❌ il server esterno non raggiunge i PC interni (è corretto così!)
⭐⭐ Medio
Esercizio 2 – Rete ISP con NAT, Wi-Fi, RADIUS e routing pubblico.
Partite dal file Esercitazione_NAT.pkt. La topologia: PC e notebook dell'alunno → Home Router → ISP Iliad → ISP Wind → Router Azienda e Router IIS (già configurato). Ci sono 4 reti pubbliche e le reti private Alunno, Azienda e IIS: ogni studente ha i propri indirizzi nella sua tabella personale.
- Reti private (Alunno e Azienda). All'interfaccia LAN del router assegnate il primo host della rete privata. Configurate il DHCP sull'Home Router (GUI: Config → DHCP) e sul Router Azienda (CLI), escludendo il gateway più il 20% degli host disponibili, arrotondato per eccesso. Aggiungete un access point con SSID e sicurezza, collegate notebook e laptop in Wi-Fi e verificate la connettività.
- Wi-Fi dell'alunno con RADIUS. Server RADIUS nella rete privata Alunno: attivate AAA, aggiungete un utente (es.
alunno01), impostate il segreto condiviso; sull'access point WPA2-Enterprise con IP del RADIUS e segreto; sui client la connessione Enterprise con le credenziali. - NAT sul Router Azienda.
Router(config)# ip access-list standard NAT_PRIV
Router(config-std-nacl)# permit [rete_privata] [wildcard]
Router(config-std-nacl)# exit
Router(config)# ip nat inside source list NAT_PRIV interface [interfaccia_WAN] overload
Router(config)# interface [interfaccia_LAN]
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface [interfaccia_WAN_verso_Wind]
Router(config-if)# ip nat outside
- Routing statico, solo verso le reti pubbliche. Ogni router conosce le reti pubbliche non collegate direttamente. Ad esempio su ISP Iliad:
Router(config)# ip route [rete_pubblica_3] [maschera] [next-hop_ISP_Wind]
Router(config)# ip route [rete_pubblica_4] [maschera] [next-hop_ISP_Wind]
- Test finale: da un PC privato aprite il browser su
http://175.168.0.2(il server dell'IIS, già configurato).
Video della soluzione
⭐⭐ Medio
Esercizio 3 – NAT, DHCP e DNS locale.
- Rete interna
192.168.10.0/25(maschera255.255.255.128): router Gig0/1192.168.10.1(inside), server DNS192.168.10.2(statico), switch e 3 PC con DHCP (intervallo.10–.126). - Rete esterna
50.0.0.0/30: router Gig0/050.0.0.1(outside), server web50.0.0.2.
Configurate la subnet /25 (wildcard per l'access-list: 0.0.0.127), il DHCP sul router escludendo .1 e .2 e con DNS 192.168.10.2, il DNS locale con www.miosito.ext → 50.0.0.2 e il NAT overload. Dal browser dei PC navigate su www.miosito.ext.
Verifiche: ✅ i PC ricevono IP, gateway e DNS dal DHCP ✅ nslookup www.miosito.ext restituisce 50.0.0.2 ✅ il browser mostra la pagina ✅ show ip nat translations
⭐⭐ Medio
Esercizio 4 – NAT e port forwarding: il server web interno.
- Rete interna
192.168.1.0/26(maschera255.255.255.192, 62 host): router Gig0/1192.168.1.1(inside), server web192.168.1.10(statico, pagina "Intranet Aziendale"), switch e 2 PC (.20,.21statici). - Rete esterna
200.10.0.0/30: router Gig0/0200.10.0.1(outside), PC "Utente Remoto"200.10.0.2.
Configurate la subnet /26 (wildcard 0.0.0.63), il NAT overload perché i PC interni escano, e il port forwarding:
Router(config)# ip nat inside source static tcp 192.168.1.10 80 interface GigabitEthernet0/0 80
L'utente remoto apre il browser, digita 200.10.0.1 e deve vedere la pagina interna.
Verifiche: ✅ i PC interni raggiungono l'esterno ✅ l'utente remoto vede "Intranet Aziendale" ✅ show ip nat translations mostra il PAT e la regola statica ❌ l'utente remoto non può pingare i PC interni
⭐⭐⭐ Avanzato
Esercizio 5 – Rete aziendale completa: subnetting, DHCP, DNS e NAT.
- Reparto Uffici
192.168.1.0/26: switch e 3 PC con DHCP. - Reparto Server
192.168.1.64/26: switch, server web192.168.1.66e server DNS192.168.1.67(statici). - Router aziendale: Gig0/1
192.168.1.1(gateway Uffici, inside), Gig0/2192.168.1.65(gateway Server, inside), Gig0/0150.20.0.1(verso Internet, outside). - Rete esterna
150.20.0.0/30: router ISP150.20.0.2e PC "Cliente Remoto"150.20.1.10.
Richieste:
- verificate che le due subnet
/26non si sovrappongano; - DHCP per gli Uffici escludendo
.1–.5, con DNS192.168.1.67; - DNS locale:
www.azienda.local→192.168.1.66; - sul server web una pagina "Sito Aziendale";
- NAT overload per entrambe le subnet interne;
- port forwarding della porta 80 verso
192.168.1.66; - routing statico tra router aziendale e router ISP;
- test: i PC aprono
www.azienda.local(DNS + HTTP) e raggiungono l'esterno (NAT); il cliente remoto digita150.20.0.1nel browser.
Verifiche: ✅ i PC degli uffici ricevono DHCP e DNS ✅ aprono www.azienda.local ✅ raggiungono il PC esterno ✅ il cliente remoto vede "Sito Aziendale" ✅ show ip nat translations ❌ il cliente remoto raggiunge l'interno solo sulla porta 80