2012-04-05 7 views
0

jemand weiß, wie können wir conection zwischen mit 2 Computern, wenn ein Computer im Zentrum dieses 2 Computersiptables vorwärts und nat ruls

in besserem Fall i verbinden will Linux-PC zusammen, aber der 2 PC kann nicht sehen, machen einander so gibt es eine Lösung Ich habe einen anderen Linux-PC das kann ein anderes 2 pc sehen! so dass es möglich ist, irgendwelche iptables für Vorwärts-Paket Regel mit diesem PC

i vom PC 1 bis PC verbinden mögen 3 auf Port 5050 dann kann pc1 zu pc2 und pc2 verbinden kann anschließen an Port 5050 dann in Wiederholung Schritt PC3 PC3 muss wiederholen die pc2 PC2 muss empfangene Paket weiterleiten

für ein besseres Verständnis PC1 sehen:

1 --> 2 --> 3 
1 <-- 2 <-- 3 

alle PC-Betriebssystem ist Centos 5.7

ich denke, iptables kann es tun , aber ich konnte keine Referenz oder Hilfe in Google finden, um das zu tun, so können mir alle Kerle helfen?

Antwort

1

, wenn Sie einen Port benötigen:

1 (addr 1.1.1.1) 
2 (addr 1.1.1.2,3.3.3.2) 
3 (addr 3.3.3.3) 

auf 2:

iptables -t nat -A PREROUTING -s 1.1.1.1 -p tcp --dport 5050 -j DNAT --to-destination 3.3.3.3 
iptables -t nat -A PREROUTING -s 3.3.3.3 -p tcp --dport 5050 -j DNAT --to-destination 1.1.1.1 
iptables -t nat -A POSTROUTING -d 3.3.3.3 -p tcp --dport 5050 -j SNAT --to 3.3.3.2 
iptables -t nat -A POSTROUTING -d 1.1.1.1 -p tcp --dport 5050 -j SNAT --to 1.1.1.2 
0

allererst aktivieren IP Forwarding. Dann folgenden Befehle eingeben:

iptables -t nat -A POSTROUTING- -o ​​eth1 -j MASQUERADE

iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED etablierte -j ACCEPT

iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT