如何通过EIP实现VPC下的SNAT以及DNAT

    xiaoxiao2023-08-31  244

    场景一:有一个EIP,多台ECS,需要通过绑定EIP的机器让其他机器上网阿里云VPC配置SNAT

    1,将EIP绑定到某台ECS上,然后测试通过eip登陆ssh,测试成功

    2,开启ip转发功能,并使之生效

    sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g' /etc/sysctl.conf sysctl –p

    3,iptables添加SNAT转换172.16.3.0是内网网段,3.2是绑定了EIP的这台机器的内网IP

    iptables -t nat -I POSTROUTING -s 172.16.3.0/24 -j SNAT --to-source 172.16.3.2

    4,添加VPC路由5,测试是否可以访问了

    EIP绑定在3.2那台上

    关闭ip_forward再次测试

    没反应了

    测试成功!

    场景二:用户需要将后端的服务映射出去

    阿里云VPC配置DNAT

    1, 将EIP绑定到某台ECS上,然后测试通过eip登陆ssh,测试成功2,开启ip转发功能,并使之生效

    sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g' /etc/sysctl.conf sysctl –p

    3,iptables 添加DNAT转换添加转发规则 访问80端口的请求转给3.1

    iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to 172.16.3.1

    (另一台机器的ECS IP)使转发数据包实现“双向通路”,给数据包设置一个正确的返回通道:

    iptables -t nat -I POSTROUTING -p tcp --dport 80 -j MASQUERADE

    4,测试是否可以访问了

    访问自己访问EIP

    DNAT测试成功!

    PS:目前阿里云已经推出了NAT网关,控制台点点就能用,详见https://www.aliyun.com/product/nat

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)