适用场景
本文适用于排查解决SSH连接Linux云主机或者访问云主机应用偶发性连接断开的问题。
重要说明
修改系统内核参数可能导致内核不稳定,请充分评估风险后进行操作。
为了确保系统稳定运行,修改内核参数后建议选择合理的时间重启系统。
根因分析
内核如果开启了快速回收和重利用策略,则会在远程登录会话空闲时,回收该会话,导致连接断开。
解决方案
1. 执行以下命令,查看系统内核是否开启了快速回收和重利用策略。示例中,参数net.ipv4.tcp_tw_recycle与net.ipv4.tcp_tw_reuse的值均为1,表明策略已开启。
sysctl -a | grep tcp_tw
2. 编辑/etc/sysctl.conf文件,添加或修改下列内容,关闭上述两个内核参数。
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 0
3. 执行以下命令,使更新后的配置生效。
sysctl -p