Sei in: Home : Competenze : Networking : NAT (Network Address Translation)

NAT (Network Address Translation)

E' il protocollo che mette in comunicazione una rete Lan con un'altra attraverso un apparato (router o server) che fa da gateway per la comunicazione. Grazie a questo protocollo i pacchetti appaiono all'esterno come se appartenessero al gateway, e all'interno vengono invece restituiti alla macchina che li aveva generati, in maniera del tutto trasparente.

Un utilizzo classico avviene con un Router/Modem ADSL a cui vengono attaccati più PC con una lan.

Linux/Mac

Ad esempio una configurazione in cui si vuole far uscire tutta la sottorete 10.1.1.0/24 sull'interfacca del modem ppp0 si userà:

iptables -P FORWARD DROP
iptables -t nat -I POSTROUTING -s 10.1.1.0/24 -o ppp0 -j MASQUERADE
iptables -A FORWARD -i eth0 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT