客户端配置NAT后仍无法访问ECS或RDS远端服务

作者阿里云代理 文章分类 分类:图文教程 阅读次数 已被围观 487
问题现象

客户端配置NAT后无法访问远端ECS、RDS,包括配置了SNAT的VPC中的ECS实例。同时无法访问其他ECS或RDS等云产品,抓包检测发现远端ECS和RDS对客户端发送的SYN包没有响应。

原因分析

若远端服务器的内核参数net.ipv4.tcp_tw_recyclenet.ipv4.tcp_timestamps的值都为1,则远端服务器会检查每一个报文中的时间戳(Timestamp),若Timestamp不是递增的关系,不会响应这个报文。配置NAT后,远端服务器看到来自不同客户端的源IP相同,但NAT前每一台客户端的时间可能会有偏差,报文中的Timestamp就不是递增的情况。

解决方法
  • 远端服务器为ECS时,修改net.ipv4.tcp_tw_recycle参数为0。
  • 远端服务器为RDS等PaaS服务时。RDS无法直接修改内核参数,需要在客户端上修改net.ipv4.tcp_tw_recycle参数和net.ipv4.tcp_timestamps参数为0。

     

    如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询欢迎咨询.gif

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: