解决nf_conntrack: table full, dropping packet

Nf_conntrack Table Full Dropping Packet

Posted by BlueFat on Monday, March 27, 2017

系统连接数高的时候,机子出现掉包,查看日志发现报错,nf_conntrack: table full, dropping packet,解决办法就是调整参数

稳妥的临时处理办法:

 vi /etc/sysctl.conf
 net.nf_conntrack_max = 2097152
 net.netfilter.nf_conntrack_tcp_timeout_established = 300
 net.netfilter.nf_conntrack_max = 1048576
 net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
 net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
 net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
 net.ipv4.conf.default.forwarding = 1
 sysctl -p

这里我们首先提高 net.netfilter.nf_conntrack_max , 当然,肯定不是越高越好,如果你的机器是一个64GB 64位的操作系统,那么最合适的值是 CONNTRACK_MAX = 6410241024*1024/16384/2 = 2097152

echo  50000 > /sys/module/nf_conntrack/parameters/hashsize
echo 524288  > /proc/sys/net/netfilter/nf_conntrack_max