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时间戳不连续,造成服务端丢弃连接。

作者:欢醉
公众号【一个码农的日常】 技术群:319931204 1号群: 437802986 2号群: 340250479
出处:http://zhangs1986.cnblogs.com/
码云:https://gitee.com/huanzui
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Top
原文地址:https://www.cnblogs.com/zhangs1986/p/11362530.html