请知悉:本文最近一次更新为 5年 前,文中内容可能已经过时。

协助运维同学诊断慢查询,发现php的慢查询九千多个数据了连接超时的记录。想不通,后来运维同学从系统日志发现输出:

ip_conntrack: table full, dropping packet.

搜了下,对比其他负载的portal:

cat /proc/sys/net/ipv4/ip_conntrack_max

这台异常的确实比另外的设备少了个0。

按照文档调:

# vim /etc/sysctl.conf 
net.ipv4.netfilter.ip_conntrack_max = 6553600
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 300
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 12
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120
# sysctl -p 使其生效

或者,不加载ip_conntrack模块(推荐
修改 /etc/sysconfig/iptables-config配置文件(就不需要上面方法调整的那些参数了,因为不加载了模块了,加了反而会在sysctl -p时提示报错)

# vim /etc/sysconfig/iptables-config 
IPTABLES_MODULES=""

以上方法整理自:https://www.ttlsa.com/linux/ip_conntrack-table-full-dropping-packet-solution/

经验:系统诊断应该连系统日志也要看一下才更专业。


如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。

尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。


与《ip_conntrack: table full, dropping packet. 解决方案》相关的博文:


留言

avatar
😀
😀😁😂😅😭🤭😋😘🤔😰😱🤪💪👍👎🤝🌹👌