pc1 ip:192.168.23.252
pc2 ip:192.168.23.253
目的:通路pc1 的web服務跳轉到pc2的web服務上
實作步驟:
開啟linux 自帶的轉發功能
<code>echo</code> <code>1 > </code><code>/proc/sys/net/ipv4/ip_forward</code>
我這裡使用沒有任何規則的iptables
<code>service iptables stop</code>
<code>iptables -F</code>
<code>iptables -X</code>
<code>iptables -Z</code>
<code>service iptables save</code>
轉發指令
<code>iptables -t nat -A PREROUTING -d 192.168.23.252 -p tcp --dport 80 -j DNAT --to-destination 192.168.23.253:80</code>
<code>#如果進來的route的通路目的位址是192.168.23.252并且通路的目的端口是80,就進行dnat轉換,把目的位址改為192.168.23.253 ,端口還是80</code>
<code> </code>
<code>iptables -t nat -A POSTROUTING -d 192.168.23.253 -p tcp --dport 80 -j SNAT --to 192.168.23.252</code>
<code>#當FORWARD 出來後,通路的目的位址是192.168.23.253,端口是80的。進行snat位址轉換,把原位址改為192.168.23.252</code>
<code>iptables -A FORWARD -o eth0 -d 192.168.23.253 -p tcp --dport 80 -j ACCEPT</code>
<code>#當從eth0出去的通路目的位址是 192.168.23.253且目的端口是80的route,允許通過</code>
<code>iptables -A FORWARD -i eth0 -s 192.168.23.253 -p tcp --dport 80 -j ACCEPT</code>
<code>#當從eth0進來的原位址是 192.168.23.253且目的端口是80的route,允許通過</code>
<code>儲存規則啟動iptables</code>
<code>service iptables start</code>
通路測試:
沒轉發之前通路pc1 如下圖:

沒轉發之前通路pc2 如下圖:
實作端口轉發後通路pc1 如下圖:
本文轉自無形于有形 51CTO部落格,原文連結:http://blog.51cto.com/jinchuang/1947052,如需轉載請自行聯系原作者