Der Zweck des IP-Masquerading besteht darin, Computern mit privaten, nicht routbaren IP-Adressen in Ihrem Netzwerk den Zugriff auf das Internet über den Computer zu ermöglichen, der das Maskieren vornimmt. Der für das Internet bestimmte Datenverkehr aus Ihrem privaten Netzwerk muss so manipuliert werden, dass die Antworten an den Computer weitergeleitet werden können, der die Anforderung gestellt hat. Dazu muss der Kernel das ändern Quelle Die IP-Adresse jedes Pakets, damit die Antworten zu ihm zurückgeleitet werden, und nicht zu der privaten IP-Adresse, die die Anforderung gestellt hat, was über das Internet nicht möglich ist. Linux verwendet Verbindungsverfolgung (conntrack), um zu verfolgen, welche Verbindungen zu welchen Maschinen gehören, und jedes zurückgeleitete Paket entsprechend umzuleiten. Der Verkehr, der Ihr privates Netzwerk verlässt, wird somit "maskiert", da er von Ihrem Ubuntu-Gateway-Computer stammt. Dieser Vorgang wird in der Microsoft-Dokumentation als gemeinsame Nutzung der Internetverbindung bezeichnet.
Anweisungen für das IP-Masquerading
Dies kann mit einer einzigen iptables-Regel erfolgen, die je nach Netzwerkkonfiguration leicht abweichen kann:
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE
Der obige Befehl setzt voraus, dass Ihr privater Adressraum 192.168.0.0/16 ist und dass Ihr mit dem Internet verbundenes Gerät ppp0 ist. Die Syntax setzt sich wie folgt zusammen:
- -t nat - Die Regel ist, in die Nat-Tabelle zu gehen
- -A POSTROUTING - Die Regel wird an die POSTROUTING-Kette angehängt (-A)
- -s 192.168.0.0/16 - Die Regel gilt für Datenverkehr, der aus dem angegebenen Adressraum stammt
- -o ppp0 - Die Regel gilt für Verkehr, der für das Routing durch das angegebene Netzwerkgerät geplant ist
- -j MASQUERADE - Verkehr, der mit dieser Regel übereinstimmt, heißt "-j" zum MASQUERADE-Ziel, um wie oben beschrieben manipuliert zu werden
Jede Kette in der Filtertabelle (der Standardtabelle, bei der die meisten oder alle Paketfilterungen auftreten) hat einen Standardwert Politik von ACCEPT, aber wenn Sie eine Firewall zusätzlich zu einem Gateway-Gerät erstellen, haben Sie möglicherweise die Richtlinien auf DROP oder REJECT gesetzt. In diesem Fall muss Ihr maskierter Datenverkehr über die FORWARD-Kette zugelassen werden, damit die obige Regel funktioniert:
sudo iptables -A VORWÄRTS -s 192.168.0.0/16 -o ppp0 -j AKZEPTIEREN sudo iptables -A VORWÄRTS -d 192.168.0.0/16 -m zustandstate ESTABLISHED, RELATED -i ppp0 -j ACCEPT
Mit den obigen Befehlen können alle Verbindungen von Ihrem lokalen Netzwerk zum Internet und der mit diesen Verbindungen verbundene Datenverkehr zu dem Computer zurückkehren, von dem sie initiiert wurden.
* Lizenz
* Ubuntu Server Guide Index