最近一个web系统经常报出如下日志信息:
Apr 17 16:37:26 www kernel: printk: 135 messages suppressed.
Apr 17 16:37:26 www kernel: ip_conntrack: table full, dropping packet.
Apr 17 16:37:26 www kernel: ip_conntrack: table full, dropping packet.
Apr 17 16:37:33 www kernel: printk: 139 messages suppressed.
Apr 17 16:37:33 www kernel: ip_conntrack: table full, dropping packet.
Apr 17 16:37:37 www kernel: printk: 60 messages suppressed.
Apr 17 16:37:37 www kernel: ip_conntrack: table full, dropping packet.
Apr 17 16:37:52 www kernel: printk: 19 messages suppressed.
Apr 17 16:37:52 www kernel: ip_conntrack: table full, dropping packet.

有丢包现象,应该是系统内核屏蔽了网卡功能,此时系统对外表现为连接时通时断,接着执行如下操作:

[root@web ~]# cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max
65536

针对这个问题,可调整以下参数:

echo 180 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
echo 6553600 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time
echo 10240 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
echo 40960 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
echo 81920 > /proc/sys/net/ipv4/neigh/default/gc_thresh3

或vi /etc/sysctl.conf

net.ipv4.ip_conntrack_max=6553600
net.ipv4.netfilter.ip_conntrack_max=6553600
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait=120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait=60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait=120
net.ipv4.neigh.default.gc_thresh1=10240
net.ipv4.neigh.default.gc_thresh2=40960
net.ipv4.neigh.default.gc_thresh3=81920

net.core.rmem_default = 2097152
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.core.wmem_default = 2097152

再sysctl -p

相关参数说明:

ARP支持一个sysctl接口,可以用以配置全局参数或逐个网络接口地进行配制。该sysctl可以通过/proc/sys/net/ipv4/neigh/*/*文件或者使用sysctl(2)接口来访问。系统中每个接口都在/proc/sys/net/ipv4/neigh/.中有自己的目录。`default'目录中的设置用于所有新建的设备。sysctl相关的时间是以秒为单位,除非特别声明过.

anycast_delay

对IPv6相邻请求信息的回复的最大延迟时间;目前还不支持anycast。缺省值为1秒。

app_solicit

这是在使用多路广播探测(multicast probe)前,经过网络连接送到用户间隙ARP端口监控程序的探测(probe)最大数目(见mcast_solicit)。缺省值为0。

base_reachable_time

一旦发现相邻记录,至少在一段介于base_reachable_time/2和3*base_reachable_time/2之间的随机时间内,该记录是有效的。如果收到上层协议的肯定反馈,那么记录的有效期将延长。缺省值是30秒。

delay_first_probe_time

发现某个相邻层记录无效(stale)后,发出第一个探测要等待的时间。缺省值是5秒。

gc_interval

收集相邻层记录的无用记录的垃圾收集程序的运行周期,缺省为30秒。

gc_stale_time

决定检查一次相邻层记录的有效性的周期。当相邻层记录失效时,将在给它发送数据前,再解析一次。缺省值是60秒。

gc_thresh1

存在于ARP高速缓存中的最少层数,如果少于这个数,垃圾收集器将不会运行。缺省值是128。

gc_thresh2

保存在ARP高速缓存中的最多的记录软限制。垃圾收集器在开始收集前,允许记录数超过这个数字5秒。缺省值是512。

gc_thresh3

保存在ARP高速缓存中的最多记录的硬限制,一旦高速缓存中的数目高于此,垃圾收集器将马上运行。缺省值是1024。

locktime

ARP记录保存在高速缓存内的最短时间(jiffy数),以防止存在多个可能的映射(potential mapping)时,ARP高速缓存系统的颠簸(经常是由于网络的错误配置而引起)。缺省值是1秒。

mcast_solicit

在把记录标记为不可抵达的之前,用多路广播/广播(multicast/broadcast)方式解析地址的最大次数。

缺省值是3。

proxy_delay

当接收到有一个请求已知的代理ARP地址的ARP请求时,在回应前可以延迟的jiffy(时间单位,见BUG)数目。这样,以防止网络风暴。缺省值是0.8秒。

proxy_qlen

能放入代理ARP地址队列(proxy-ARP addresses)的数据包最大数目。缺省值是64。

retrans_time

重发一个请求前的等待jiffy(时间单位,见BUG)的数目。缺省值是1秒。

ucast_solicit

询问ARP端口监控程序前,试图发送单探测(unicast probe)的次数。(见app_solicit).缺省值是3秒。

unres_qlen

每个没有被其它网络层解析的地址,在队列中可存放包的最大数目。缺省值是3.
转载:http://blog.ixpub.net/html/18/9727518-402981.html

转载于:https://blog.51cto.com/chenwenming/713222

ip_conntrack: table full, dropping packet的问题相关推荐

  1. linux 路由跟踪表满错误 nf_conntrack: table full, dropping packet 原理解决方法

    netfilter/conntrack 相关内核参数往往是用 Linux 服务器的互联网小公司业务量上去之后遇到的第 3 个"新手怪".(第 1 位:进程可用的 FD 不足,第 2 ...

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

    kernel nf_conntrack: table full, dropping packet 解决办法 Posted on 2012-02-09 by york_gu 最近很长一段时间,千寻影视的 ...

  3. nf_conntrack: table full, dropping packet 解决方案

    "连接跟踪表已满,开始丢包"!相信不少用iptables的同学都会见过这个错误信息吧,这个问题曾经也困扰过我好长一段时间.此问题的解决办法有四种(nf_conntrack 在Cen ...

  4. linux 网络错误 nf_conntrack: table full, dropping packet. 路由跟踪表满

    "连接跟踪表已满,开始丢包"!相信不少用iptables的同学都会见过这个错误信息吧,这个问题曾经也困扰过我好长一段时间.此问题的解决办法有四种(nf_conntrack 在Cen ...

  5. linux ip_conntrack_max,解?Linux NAT ip_conntrack: table full的方法

    解?Linux NAT ip_conntrack: table full的方法 发布时间:2007-09-07 00:28:48来源:红联作者:DominSer 原本Linux NAT用得好好的,没想 ...

  6. 启用nf_conntrack模块,避免table full dropping

    最近收到Iptables服务器报警"nf_conntrack: table full, dropping packet.".经过对日志分析,最终将问题解决了.给大家分享一下. 问题 ...

  7. linux ip_conntrack 连接满导致网络丢包

    我们的线上web服务器在访问量很大时,就会出现网络连接丢包的问题,通过dmesg命令查看日志,发现如下信息: kernel: ip_conntrack: table full, dropping pa ...

  8. iptables连接跟踪ip_conntrack

    一.ip_conntrack模块介绍: ip_conntrack 是Linux NAT一个跟踪连接条目的模块记录着允许的跟踪连接条目ip_conntrack 模块会记录 tcp 通讯协议的 estab ...

  9. linux ip转发 丢包,关于ip_conntrack跟踪连接满导致网络丢包问题的分析

    我们的线上web服务器在访问量很大时,就会出现网络连接丢包的问题,通过dmesg命令查看日志,发现如下信息: kernel: ip_conntrack: table full, dropping pa ...

最新文章

  1. 科普大V河森堡:用科学的方法回答哲学问题
  2. go/golang init()方法的调用
  3. 等待Ajax结果 再提交表单(ajax同步)
  4. vue-route+webpack部署单页路由项目,访问刷新出现404问题
  5. .NET Core SignalR Redis底板详解(前言)
  6. 我们相信加密! 教程
  7. python数据类型所占字节数_python标准数据类型 Bytes
  8. 基于图查询系统的图计算引擎
  9. oracle查询哪些数据未压缩,求助大佬:向压缩表插入数据,压缩未生效
  10. JAVA并发编程的挑战
  11. 电商促销海报PSD分层模板,轻松搞定
  12. Eclipse汉化插件
  13. Tomcat和JBoss都是服务器,有什么区别呢
  14. MacOS Big Sur 11.2.1 (20D75) 纯净恢复版黑苹果镜像下载
  15. 计算机组成原理试题以及答案
  16. (附源码)小程序 记账微信小程序 毕业设计 180815
  17. 使用JavaScript进行iframe的DOM操作
  18. vscode配置和快捷键
  19. 计算机教学楼起名,给教学楼起名字(富有诗意教学楼名字)
  20. 微信第三方登陆实现-微信浏览器实现弹出提示授权非微信浏览器提供二维码

热门文章

  1. Micro Average vs Macro average Performance in a Multiclass classification setting
  2. 20155117王震宇 2006-2007-2 《Java程序设计》第5周学习总结
  3. window-运行perl脚本(搭建health-check环境)
  4. SSIS Dataflow使用存储过程不能检索列名
  5. [转]如何完美应对面试
  6. Java 8“失宠”
  7. 一文领略 HTTP 的前世今生
  8. Java的transient关键字
  9. 【JEECG技术文档】online自定义模板的使用
  10. Groovy的基础语法