阿里云有1台机器有公网ip,其余是内网,需求是内网机器也需要上网。
登录阿里云后台管理 - 专有网络vpc - 路由表
添加路由条目
目标网段:0.0.0.0/0
下一条类型:ECS实例 选择有公网ip的实例
在公网服务器执行下面操作
# centos7开启iptables
systemctl stop firewalld
systemctl disable firewalld
yum install iptables-services
systemctl start iptables
systemctl enable iptables
iptables -F
service iptables save
# 开启ipv4转发
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
# 查看是否开启 如果值是1,表示已开启转发
cat /proc/sys/net/ipv4/ip_forward
# 新增路由转发规则 172.17.125.242 是有网络的机器 172.17.249.239是没网络的机器
iptables -t nat -I POSTROUTING -s 172.17.249.239/32 -j SNAT --to-source 172.17.125.242
iptables -t nat -I POSTROUTING -s 172.17.249.235/32 -j SNAT --to-source 172.17.125.242
# 查看 iptables
iptables -t nat -L -n --line-numbers -v
# 删除规则
iptables -t nat -D POSTROUTING -s 172.17.249.239/32 -j SNAT --to-source 172.17.125.242
iptables -t nat -D POSTROUTING -s 172.17.249.235/32 -j SNAT --to-source 172.17.125.242