問題描述
無法通過SSH連接Linux實例,訪問該實例上的HTTP服務也出現異常。使用telent命令進行網絡測試,發現請求連接被重置。
問題原因
本地網絡通過NAT共享的方式上網,並且Linux系統相關內核參數配置異常。
解決方案
修改系統的內核參數以解決該問題。
- 依次執行如下命令,查看當前內核配置,確認該參數值爲“1”。
cat /proc/sys/net/ipv4/tcp_tw_recycle
cat /proc/sys/net/ipv4/tcp_timestamps - 在
/etc/sysctl.conf
配置文件添加如下內容。net.ipv4.tcp_tw_recycle=0
net.ipv4.tcp_timestamps=0 - 執行如下命令,使配置生效。
sysctl -p
net.ipv4.tcp_tw_recycle參數造成的連接不穩定
對net.ipv4.tcp_tw_recycle的說明是開啓 TCP 連接中 TIME-WAITsockets 的快速回收
NAT設備後面的用戶上網,發出的TPC/IP時間戳不連續,造成服務端丟棄連接。