2013-02-14 7 views
5

ich einen Versuchsaufbau haben, von 4 Linux (CentOS) Maschinen:Linux nat/iptables-Konfiguration für diese Einstellung

enter image description here

Alle vier Maschinen intern verbunden sind verschiedene Netzwerke mit und können miteinander direkt verbunden Schnittstellen ping . Allerdings hat nur PC4 Zugang zum Internet.

Ich versuche, iptable Regeln einzurichten, die PC1 in der Lage sein können, über PC4 auf das Internet zuzugreifen, aber ich habe keine Ahnung, wie das geht.

Ich versuchte NAT an ausgehende Schnittstelle auf PC2, PC3 und PC4 hinzuzufügen:

iptables -t nat -F POSTROUTING 
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 

jedoch dies nicht funktioniert, können Sie mir eine Idee geben, wie in einem solchen Setup i PC1 Zugang zu machen 10,0 .0.1 Netzwerk?

Antwort

14

Aktivieren Sie die IP-Weiterleitung.

echo 1 > /proc/sys/net/ipv4/ip_forward 

Permanent Einstellung bearbeiten /etc/sysctl.conf und setzen 0 zu 1

net.ipv4.ip_forward = 1 

die Änderungen in sysctl.conf gemacht zu aktivieren, müssen Sie den Befehl

sysctl -p /etc/sysctl.conf 

iptables-Regeln für NAT laufen

# /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
# /sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT 
# /sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT 
+0

danke, aber jedes Mal, wenn ich Destination Host Prohibited Error, was könnte der Grund sein ?? –

+0

Ich überprüfte, z. B. ich ping von PC1 (1.1.1.1) zu PC3 (2.1.1.2), aber es gibt kein Paket weiter direkt von PC2 außerhalb der Schnittstelle, es scheint ein Problem zu sein oder es ist nur mit Ping ?? –

+3

OK ich habe es, überraschend ich brauche nur NAT auf dem letzten PC, während für den Rest ich nur IP-Weiterleitung aktiviert und musste die Standard-Reject-Regel in der Weiterleitung chaing, mit iptables -D FORWARD 1 und es funktioniert –