报错原因: netstat -nat|grep -i “80″|wc -l命令 #netstat -nat|grep -i “80″|wc -l netstat -an会打印系统当前网络链接状态,而grep -i “80″是用来提取与80端口有关的连接的, wc -l进行连接数统计。 less /proc/net/ip_conntrack |wc -l 统计行数得到已传输包的数量, 下面的方法更简便 cat /proc/sys/net/ipv4/netfilter/ip_conntrack_count 直接查看统计数量,不需要计算/proc/net/ip_conntrack的行数 对于做处于网关地位的机器,其开启了nat功能,那么/proc/net/ip_conntrack是保存的是内网地址和外部地址连接的情况,记录每个连接的详细情况,其内容一般会保持5天,期间重新启动网络并不会有效减少其内容,唯一的办法就是重新启动和增大内存的数量,给监控带来不便,内容很容易满,核心便会报警 处理方法: 1、修改:echo 655360 > /proc/sys/net/ipv4/ip_conntrack_max echo 180 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established 或修改 /etc/sysctl.conf: net.ipv4.ip_conntrack_max = 655360 net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180 再 sysctl -p 使之生效 2、隔一段时间重新启动系统或防火墙,清空ip_conntrack, 如 service iptables restart; 3、ulimit -n 81920该命令必须以root 运行,仅仅运行在bash shell, 不必重启机器, 重启就失效了。 网速慢与最大连接数是没有直接关系的,可以证明的很多P2P程序大量使用UDP IP_conntrack 表示连接跟踪数据库(conntrack database),每一个跟踪连接表会占用350字节的内核存储空间,时间一长就会把默认的空间填满,那么默认空间时多少?一般redhat内存为 64MB的机器上时4096,内存为128MB是 8192,内存为256MB是16376 上面是从网上找的资料,下面我要根据我遇到的情况分析了 我们自己的服务器内核已经升级到2.6.30.1了所以解决的情况就不一样了,文件的路径也有变化了 自己报错信息如下: kernel: nf_conntrack: table full, dropping packet.一直报这样的错误 解决方法: #echo 1048576 >/proc/sys/net/netfilter/nf_conntrack_max #echo 1048576 >/proc/sys/net/nf_conntrack_max 然后写入/etc/rc.local文件里面 保证开机启动后自动生效 (责任编辑:IT) |