Article / 文章中心

Linux系统内核提示“TCP: time wait bucket table overflow”错误的解决方法

发布时间:2020-11-19 点击数:986

爆款产品   阿里云低至1折 http://buy.zhiy.com.cn

问题描述

Linux系统中内核异常,并提示如下错误。

TCP: time wait bucket table overflow

问题原因

net.ipv4.tcp_max_tw_buckets参数的值设置过小。

解决方案

tcp_max_tw_buckets表示系统同时保持TIME_WAIT状态的Sockets最大数量,如果超过这个数字,TIME_WAIT状态的Socket会被结束并且提示告警信息。之所以要设置net.ipv4.tcp_max_tw_buckets参数的限制,是为了抵御简单的DoS攻击。若无其他原因不要人为降低此限制,如果网络条件需要比默认值高,将net.ipv4.tcp_max_tw_buckets参数的值调高或者增加内存。

1.登录Linux实例,执行如下命令,编辑如下文件。

vim /etc/sysctl.conf

net.ipv4.tcp_max_tw_buckets参数的值调整为“20000”,如下所示。

net.ipv4.tcp_max_tw_buckets = 20000

2.执行如下命令,使配置生效。

sysctl -p

3.执行如下命令,可查看不同连接数的状态。

netstat -an | grep 80 | awk ‘{print $6}’ | sort | uniq -c | sort -rn

适用于

云服务器 ECS

如果您有其他问题,可以联系北京志远天辰阿里云代理商,为您提供一对一专业全面的技术服务,同时新/老阿里云会员,均可享受我公司代理商价格迎咨询