请选择 进入手机版 | 继续访问电脑版

网硕互联技术交流社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2500|回复: 0

Centos出现丢包问题解决办法

[复制链接]

主题

帖子

0

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
0
发表于 2016-3-4 10:48:55 | 显示全部楼层 |阅读模式

环境介绍:

         系统: CENTOS 6.4 64 bit

         软件:nginx+mysql+php

突然收到服务器check_icmp的报警,报警显示一台网站服务器的内网网络有问题。

赶紧登录服务器进行排查。首先使用ping 内网IP的方式查看内网的连通性,ping的过程中出现丢包现象,信息如下:

64 bytes from 10.1.1.1: icmp_seq=34 ttl=255 time=0.928 ms
64 bytes from 10.1.1.1: icmp_seq=35 ttl=255 time=1.01 ms
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted

显示ping不被允许,奇怪,防火墙上明明开通了icmp的协议。有问题先看日志,日志文件一般会有所记录,tail –f /var/log/messages,发现大量的如下内容:

Sep 13 09:11:21 dowload_server1 kernel: printk: 261 messages suppressed.
Sep 13 09:11:21 dowload_server1 kernel: ip_conntrack: table full, dropping packet

发现是当前会话数已经满了,因此出现丢包现象。这里对ip_conntrack做一下简单的介绍:IP_conntrack表示连接跟踪数据库(conntrack database),代表NAT机器跟踪连接的数目,连接跟踪表能容纳多少记录是被一个变量控制的,它可由内核中的ip-sysctl函数设置。每一个跟踪连接表会占用350字节的内核存储空间,时间一长就会把默认的空间填满,那么默认空间是多少?在内存为64MB的机器上是4096,内存为128MB是 8192,内存为256MB是16384

解决办法:

发现确实已经达到了最大会话数,通过google发现,可以直接调大用户的最大会话数,在/etc/sysctl.conf中加入:net.netfilter.nf_conntrack_max = 2097152,然后执行/sbin/sysctl –p时起生效


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|网硕互联技术交流社区

GMT+8, 2024-3-29 12:56 , Processed in 0.202801 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表