欢迎光临
我们一直在努力

ip_conntrack跟踪连接库满导致的大量丢包解决

kernel: ip_conntrack: table full, dropping packet. kernel: printk: 1 messages suppressed. kernel: ip_conntrack: table full, dropping packet. kernel: printk: 2 messages suppressed. kernel: ip_conntrack: table full, dropping packet. kernel: printk: 1 messages suppressed.

 

ip_conntrack 这个东西是连接跟踪数据库(conntrack database),代表NAT机器跟踪连接的数目(不过只要打开iptables就会开始跟踪)如果这个东西满了结果可想而知
赶紧查看当前的值发现很快就能到2万多
wc -l /proc/net/ip_conntrack
23722 /proc/net/ip_conntrack

看看最大值限制
cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max
65536
访问稍大一点就会突破这个值

保留时间是多久?
cat /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
432000
默认是5天,没必要这么久

先临时调大看看效果
echo 655350 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
echo 10800 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
改完后观察了一段时间,发现服务器连接正常,没有再发生类似情况

修改/etc/sysctl.conf
net.ipv4.netfilter.ip_conntrack_max = 655360
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 10800
sysctl -p 立即生效

 

转自http://storysky.blog.51cto.com/628458/243835/

赞(0) 打赏
未经允许不得转载:优惠吧 » ip_conntrack跟踪连接库满导致的大量丢包解决
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!