Mittels NAT (Network Address Translation) können durch eine
Maskierung der internen IP-Adressen private Netze
(z.B. 192.168.1.0/24) mit öffentlichen gekoppelt werden.
Es gibt zwei Arten von NAT:
Source-NAT (SNAT):
Hier wird die Quell-Adresse eines Paketes
manipuliert. SNAT findet nach dem Routing statt.
Masquerading ist ein spezieller Fall von SNAT.
Destination-NAT (DNAT):
Hier wird die Zieladresse eines Paketes
manipuliert. Es findet vor dem Routing statt.
Ein Beispiel fuer DNAT ist Port-Forwarding.
NAT wird nicht in der Filtertabelle sondern in einer eigenen
Tabelle verwaltet. In dieser NAT-Tabelle sind standardmäßig
die Ketten POSTROUTING, PREROUTING und OUTPUT aufgeführt.
Der Zugriff auf die NAT-Tabelle erfolgt mit der Option -t nat,
die Auswahl der Filtertabelle wie gewoht mit -A. Eine Auflistung
der iptables-Optionen wurde bereits an
dieser Stelle
gegeben.
Beispiel:
ankommende Verbindungen an der ppp0-Schnittstelle verwerfen:
Maskiere ppp0
root@linux #
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
|
Verbiete Verbindungen von außen
root@linux #
iptables -A INPUT -i ppp0 -m state --state NEW,INVALID -j DROP
root@linux #
iptables -A FORWARD -i ppp0 0 -m state --state NEW,INVALID -j DROP
|
IP-Forwarding aktivieren
root@linux #
echo 1 > /proc/sys/net/ipv4/ip_forward
|
|