如果內部的 www ip 只有一個, 可能在 NAT 回去的封包會有問題吧.可以試著那台 www 設定兩個內部的 ip, 每一個外面的線路進來之後, 對應一個 ip, 這樣應該可以解決.
這倒是不錯的建議 : 詳細的做法如下 ( 以 RH 7.3 為例 ) : 如有不對請各位兄台指正 :
Web Server 定兩個內部 ip : 192.168.1.10 192.168.1.11
defautl gateway : 192.168.1.1
其他無相關的略
Linux 的 設定
eth0 : 對內 : 192.168.1.1
eth1 : 對外1: a.a.a.a gateway: $GATE1 netmask 255.255.255.248
eth2 : 對外2: b.b.b.b gateway: $GATE2 netmask 255.255.255.248
1. 定 if :
ifconfig eth0 down
ifconfig eth1 down
ifconfig eth2 down
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
ifconfig eth1 a.a.a.a netmask 255.255.255.248
ifconfig eth2 b.b.b.b netmask 255.255.255.248
2. 定 route table name
/etc/iproute2/rt_tables 檔內加入這兩行
200 aaa
210 bbb
3. 定 ip forward enable
echo "1" > /proc/sys/net/ipv4/ip_forward
4. 設 ip route table
ip route replace default via $GATE1 dev eth1 table aaa
ip route replace default via $GATE2 dev eth2 table bbb
ip route replace default nexthop via $GATE1 dev eth1 \
nexthop via $GATE2 dev eth2
5. 設 nat
/sbin/iptables -t nat -F
/sbin/iptables -t nat -X
#
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/16 \
-j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -o eth2 -s 192.168.1.0/16 \
-j MASQUERADE
/sbin/iptables -A PREROUTING -t nat -p tcp -d a.a.a.a --dport 80 \
-j DNAT --to 192.168.1.10:80
/sbin/iptables -A PREROUTING -t nat -p tcp -d b.b.b.b --dport 80 \
-j DNAT --to 192.168.1.11:80
6. 設 ip rule
ip rule add pref 200 from 192.168.1.11 table aaa
ip rule add pref 210 from 192.168.1.12 table bbb
好了,請試試看吧
其他我也沒有多加什麼東西在裡面