我有这个schenario
----------------- ---------------- ---------- | SERVER A | ---(port:2128)> | PROXY | ---> | INTERNET | | (10.30.1.1) | | (10.30.2.2) | ----------- ----------------- ----------------
现在我有一个SERVER B(10.31.1.1)谁不能访问PROXY,BU可以访问SERVER A.
我需要的是configurationSERVER A接受来自SERVER A的请求,并将它们转发给PROXY,以便它可以访问Internet。
我以这种方式通过iptables尝试:
echo "1" > /proc/sys/net/ipv4/ip_forward iptables -A FORWARD -p tcp -i 10.30.1.1 --dport 3128 -d 10.30.2.2 -j ACCEPT iptables -t nat -I PREROUTING -p tcp -i 10.30.1.1 --dport 3128 -j DNAT --to 10.30.2.2:3128
但在服务器B我得到了
Unable to connect to 10.30.1.1
我不确定是否已经很好地理解了一切。 代理10.30.2.2是否过滤了input请求并知道如何路由数据包?
在这种情况下,我想你将不得不使用MASQUERADE的选项来replace发件人的地址:
iptables -t nat -I PREROUTING -p tcp -i 10.30.1.1 -s 10.31.1.1 -J MASQUERADE