Linux系统内核配置问题导致NAT环境访问实例出现异常

问题描述

无法通过SSH连接Linux实例,访问该实例上的HTTP服务也出现异常。使用telent命令进行网络测试,发现请求连接被重置。

 

问题原因

本地网络通过NAT共享的方式上网,并且Linux系统相关内核参数配置异常。

 

解决方案

修改系统的内核参数以解决该问题。

  1. 依次执行如下命令,查看当前内核配置,确认该参数值为“1”。
    cat /proc/sys/net/ipv4/tcp_tw_recycle
    cat /proc/sys/net/ipv4/tcp_timestamps
  2. /etc/sysctl.conf配置文件添加如下内容。
    net.ipv4.tcp_tw_recycle=0
    net.ipv4.tcp_timestamps=0
  3. 执行如下命令,使配置生效。
    sysctl -p

net.ipv4.tcp_tw_recycle参数造成的连接不稳定

对net.ipv4.tcp_tw_recycle的说明是开启 TCP 连接中 TIME-WAITsockets 的快速回收

NAT设备后面的用户上网,发出的TPC/IP时间戳不连续,造成服务端丢弃连接。

 

posted @ 2021-10-15 09:27  欢醉  阅读(322)  评论(0编辑  收藏  举报