您的位置:首页 > 其它

使用iptables进行端口重定向(转发)

2012-12-17 18:06 591 查看

使用iptables进行端口重定向(转发)

(2010-05-06 11:49:38)


转载▼

标签:

端口

重定向

转发

service

ip地址

web服务

start

it

分类:linux
今天接到这样一个需求,机器A:192.168.203.173,机器B:192.168.203.235;在机器B上开放web服务,但是这台机器没有公网ip地址,而机器A有公网ip地址,需要将机器A的访问重定向到机器B上,其实有很多方法可以使用,但是机器A上已经部署了很多服务,所以就没有使用nginx或者squid的代理功能,使用iptables进行端口重定向,方法如下:

在机器A上操作:

#iptables -t nat -A PREROUTING -d 192.168.203.173 -p tcp -m tcp--dport 80 -j DNAT --to-destination 192.168.203.235

#iptables -t nat -A POSTROUTING -d 192.168.203.235 -p tcp -m tcp--dport 80 -j SNAT --to-source 192.168.203.173

这两台策略会将目的地址为机器B,目的端口为80的请求重定向到机器B上

#service iptables save

#service iptables start

这样有一个问题,就是在机器B上看到的请求都来自机器A,不过可以使用透明模式,使机器B上看到真实的源地址:

#iptables -t nat -A PREROUTING -d 192.168.203.173 -p tcp -m tcp--dport 80 -j DNAT --to-destination 192.168.203.235

#iptables -t nat -A POSTROUTING -d 192.168.203.235 -p tcp--dport 80 -j MASQUERADE

上面两行策略就可以实现透明模式的端口转发了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: