系统是CentOs
sudo netstat -ntp | grep 103.235.244.98
tcp 0 0 ::ffff:61.184.232.47:35650 ::ffff:103.235.244.98:80 ESTABLISHED 41792/java
tcp 0 268800 ::ffff:61.184.232.47:35651 ::ffff:103.235.244.98:80 ESTABLISHED 41792/java
61.184.232.47
是通过pppoe获取的ip地址,并且这个连接配置为重拨,每5分钟更换一次ip,问题是这个ip上的TCP连接保持ESTABLISHED
超过20分钟,应用程序就会卡住。
如何配置系统以便ESTABLISHED
在合理的时间之后发现该连接是虚假的?
已经尝试调整tcp_keepalive_intvl
, sysctl -w net.ipv4.tcp_keepalive_intvl=2
但似乎没有运气。
答案1
sysctl -w net.ipv4.tcp_keepalive_intvl=2
意味着您想要每两秒探测一次,但据我所知,这不会改变保活时间本身。
要将保持连接时间设置为例如 5 分钟,您还必须设置以下参数:net.ipv4.tcp_keepalive_time = 300
还要注意,procfs 需要加载到内核中并挂载到文件系统中。