kernel: nf_conntrack: table full, dropping packet解决办法

http://blog.sina.com.cn/s/blog_541a3cf10101b3bj.html



昨天上线cache后,防火墙高峰报道2W5有些不对劲,检查系统日志发现

Sep  6 18:05:07 localhost kernel: nf_conntrack:table full, dropping packet.
Sep  6 18:19:13 localhost kernel: nf_conntrack:table full, dropping packet.
Sep  6 18:35:03 localhost kernel: nf_conntrack:table full, dropping packet.
Sep  6 19:02:56 localhost kernel: nf_conntrack:table full, dropping packet.
之前用ab测试10W请求每次200测试就出现过apr_socket_recv: Connection timed out(110)终止

没在意,所以就PASS了;不料留下了隐患。

那么先参考http://blog.johntechinfo.com/technology/275这篇文章来优化下测试环境:

解决办法如其所述,对ip_conntrack的两个参数进行设置即可:

 vi /etc/sysctl.conf
net.nf_conntrack_max = 655360
net.netfilter.nf_conntrack_tcp_timeout_established = 1200

但是http://blog.yorkgu.me/2012/02/09/kernel-nf_conntrack-table-full-dropping-packet/这位仁兄文中说在centos上,需要这样设置

net.ipv4.netfilter.ip_conntrack_max =655350
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established= 1200
#默认超时时间为5天,作为一个主要提供HTTP服务的服务器来讲,完全可以设置得比较短
sysctl -p /etc/sysctl.conf

那么我们再试下10W请求每次2000来测试下是否有效:(用的是第一种net.nf_conntrack_max)

kernel: <wbr>nf_conntrack: <wbr>table <wbr>full, <wbr>dropping <wbr>packet解决办法
果然有效。

ip_conntrack就是linuxNAT的一个跟踪连接条目的模块,ip_conntrack模块会使用一个哈希表记录 tcp 通讯协议的established connection记录,当这个哈希表满了的时候,便会导致nf_conntrack: table full,dropping packet错误。

关于如何优化conntrack模块,有一篇文章对此进行了解释,http://wiki.khnet.info/index.php/Conntrack_tuning,或http://blog.yorkgu.me/wp-content/uploads/2012/02/netfilter_conntrack_perf-0.8.txt

 

 查看目前 ip_conntrack buffer 的使用状况
cat /proc/slabinfo |grep conntrack
nf_conntrack_expect           208  39    2 :tunables        0 :slabdata             0
nf_conntrack      55606 73836   288  28    2 :tunables        0 :slabdata  2637  2637     0

55606 the number of currently active objects
73836 the total number of availableobjects  
288 the size of each object inbytes   
28 the number of pages with at least one active object

 

查出目前 ip_conntrack 记录最多的前十名 IP

cat /proc/net/ip_conntrack | cut -d ' ' -f 10 | cut -d '=' -f 2| sort | uniq -c | sort -nr | head -n 10

  45772 127.0.0.1

    72 203.81.70.29
    64 211.139.190.202
    62 203.81.72.85
    58 211.139.151.42
    58 211.139.146.167
    57 203.81.72.81
    56 221.179.8.36
    56 203.81.72.82
    54 203.81.70.21

 

现网加上了,看看明天高峰访问效果。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值