资讯动态

系统的连接跟踪表打满引发的接口502

发布时间:2026/9/10 1:52:18 来源:尧图企业网站定制
某天中午系统支撑部门突然发现我们的业务系统频繁的出现超时看了业务日志发现相关的请求并没有打到我们的业务服务器上再看反向代理的nginx日志频繁出现502报错。排查了网络和业务服务器后都没发现问题。因为我们有IPV4和IPV6两台nginx只有IPV4的nginx有报错所以怀疑那台机器有问题查看了/var/log/messages后发现频繁出现如下报错kernel: nf_conntrack: nf_conntrack: table full, dropping packet该报错是因为服务器访问量大内核 netfilter 模块 conntrack 相关参数配置不合理导致 IP 包被丢掉连接无法建立。通过以下命令查看相关配置sysctl -a | grep conntrack我们机器是32G内存net.nf_conntrack_max和net.netfilter.nf_conntrack_max的配置是262144。这个值相对来说算比较小一般8G是26214432G推荐配置1048576。状态跟踪表的最大行数的设定理论最大值 CONNTRACK_MAX RAMSIZE (in bytes) / 16384 / (ARCH / 32)通过以下命令修改配置sysctl -w net.netfilter.nf_conntrack_max1048576 sysctl -w net.nf_conntrack_max1048576 sysctl -p修改后502报错恢复。一般出现这个问题要么是被DDos攻击了要么就是业务请求激增导致跟踪表被打满丢弃新建连接的数据包。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价