linux TIME_WAIT过多的解决方法

linux TIME_WAIT过多的解决方法

查看TCP状态:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

查看SOCKET状态:cat /proc/net/sockstat

TIME_WAIT状态的socket一般需要等到2msl时间后,socket才会被回收。

修改(添加)系统内核参数:/etc/sysctl.conf

#改系統默认的TIMEOUT时间

net.ipv4.tcp_fin_timeout=2

#启重用,允许将TIME-WAIT sockets重新用于新的TCP连接 默认为0表示关闭

net.ipv4.tcp_tw_reuse=1

#开启TCP连接中TIME-WAIT sockets的快速回收 默认为0 表示关闭

net.ipv4.tcp_tw_recycle=1

使新增参数生效:sysctl -p

net.ipv4.tcp_fin_timeout=2

net.ipv4.tcp_tw_reuse=1

net.ipv4.tcp_tw_recycle=1

运维QQ交流群:171586999

你可能感兴趣的:(linux TIME_WAIT过多的解决方法)