需求:
把访问本机8060端口的流量,转发到另一个IP地址和端口 xxx.xxx.xxx.xxx:9060
/etc/sysctl.conf 添加:
net.ipv4.ip_forward = 1
保存退出后运行:
sysctl -p
命令:
/usr/sbin/iptables -t nat -I PREROUTING -p tcp --dport 8060 -j DNAT --to-destination xxx.xxx.xxx.xxx:9060
/usr/sbin/iptables -t nat -I POSTROUTING -j MASQUERADE
第二条用以下命令同样效果:
/usr/sbin/iptables -t nat -I POSTROUTING -p tcp -d xxx.xxx.xxx.xxx --dport 9060 -j MASQUERADE
/usr/sbin/iptables -t nat -I POSTROUTING -p tcp -d xxx.xxx.xxx.xxx --dport 9060 -j SNAT --to-source 10.71.10.15 阿里云ECS有内网IP,source不能用公网IP
注意:iptables服务要先安装和开启,INPUT链和FORWARD链也需要开放相应端口或者ACCEPT。如果流量转发失败,可用tcpdump排查
/usr/sbin/iptables -I FORWARD -s ip段1/掩码1 -d ip段2/掩码1 -j ACCEPT
/usr/sbin/iptables -I FORWARD -j ACCEPT
No comments:
Post a Comment