linux ip_conntrack_max,ip_conntrack_max满导致无法建立链接

一台访问量较高的服务器出现严重的丢包和无法建立链接的情况,已经确认数据中心网络没有问题,怀疑服务器自身出现问题。

进入服务器发现网卡并没有error,内部运行的web服务均正常,但是仍然会出现断流和丢包现象,初步怀疑是在系统方面。

一、执行demsg

发现大量“VE0: nf_conntrack: table full, dropping packet.”的错误提示,确定是ip_conntrack跟踪连接满导致网络丢包问题。

ac3a4d240448dc229b7e317d4fb57ef0.png

二、统计表的情况

cat /proc/net/nf_conntrack | wc -l

默认max=65536。可以先重启iptables 恢复正常连接,然后修改参数

三、修改syctl参数

vi /etc/sysctl.conf

net.nf_conntrack_max = 655360   #加十倍,根据自身服务器内存进行修改

net.netfilter.nf_conntrack_tcp_timeout_established = 1200   #设置timeout时间

sysctl -p /etc/sysctl.conf

四、另外参考

#加大 ip_conntrack_max 值 net.ipv4.ip_conntrack_max = 393216

net.ipv4.netfilter.ip_conntrack_max = 393216

#降低 ip_conntrack timeout时间

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 300

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

增加完以上内容后,通过sysctl -p 使配置生效 。不过该方法缺点:一是重启iptables后,ip_conntrack_max值又会变成65535默认值,需要重新sysctl -p

参考文献:

http://blog.51cto.com/ixdba/1737642

https://blog.csdn.net/yanggd1987/article/details/54924725

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值