首页 > 系统 > linux

Linux系统报错:kernel:ip_conntrack:table full,dropping
时间:2014-10-27 16:52:54  点击: 来源:  作者:



报错原因:netstat -nat|grep -i “80″|wc -l命令#netstat -nat|grep -i “80″|wc -lnetstat -an会打印系统当前网络链接状态,而grep -i “80″是用来提取与80端口有关的连接 ...



报错原因:
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文件里面 保证开机启动后自动生效
”您可通过以下微信二维码,赞赏作者“
 
 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
linux服务器同步互联网时间
linux服务器同步互联
亚马逊云lightsail服务器使用教程 | 亚马逊云lightsail使用指南
亚马逊云lightsail服
hostdare 4折优惠,直接降价60% 美国洛杉矶低至 $10.4/年 768M内存/1核/10gNVMe/500g流量
hostdare 4折优惠,直接
六类网线cat6a和cat6e的区别
六类网线cat6a和cat6e
相关文章
栏目更新
栏目热门

关于我们 | 广告服务 | 联系我们 | 网站地图 | 免责声明 | WAP | RSS


Copyright © 运维之家 2013-2023