• 1
  • 2
  • 3
  • 4
  • 5
Linux操作系统运维问题 首 页  »  帮助中心  »  云服务器  »  Linux操作系统运维问题
VPC环境下的ECS配置Dnat,实现通过公网访问内网的服务的具体操作
发布日期:2015-12-16 23:12:19

  VPC网络环境下,可通过DNAT将后端无公网IP的ECS通过EIP的端口对外提供服务

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


  2、 开启这台ECS的ip转发功能

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

  让ip转发生效

  sysctl –p


  3、 iptables 添加DNAT转换规则

  添加转发规则,访问EIP的80端口的所有请求,都转给172.16.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,最终访问到了172.16.3.1服务器上的页面。


  请注意:DNAT不用单独添加路由,二者同时添加的话有冲突,需要更精细的路由控制