linux ping 报错 sendmsg: Operation not permitted
故障排查:
早上突然收到nagios服务器check_icmp的报警,报警显示一台网站服务器的内网网络有问题。因为那台服务器挂载了内网的NFS,因此内网的网络就采用nagios的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 messagessuppressed.
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
通过如下命令查看当前的会话数:
cat /proc/net/ip_conntrack | wc –l
或者使用:
cat /proc/sys/net/ipv4/netfilter/ip_conntrack_count
使用如下命令查看设置的最大会话数
cat /proc/sys/net/ipv4/ip_conntrack_max
解决办法:
发现确实已经达到了最大会话数,通过google发现,可以直接调大用户的最大会话数,命令为:
echo "102400" > /proc/sys/net/ipv4/ip_conntrack_max
执行此命令后,不在丢包了,ping也正常了。但是这样设置不会永久保存,当系统重启后设置会丢失,因此需要保存到/etc/sysctl.conf,在/etc/sysctl.conf中加入:net.ipv4.ip_conntract_max =102400,然后执行/sbin/sysctl –p刷新内核参数即可,如果出现error:"net.ipv4.ip_conntract_max" is an unknown key报错的话,需要加载ip_conntract模块,使用modprobe ip_conntrack加载,使用lsmod | grepip_conntrack查看模块是否加载。
终极解决:
为了使彻底解决此问题,还需要再设置一个东西,那就是会话连接超时变量,这个参数设置太长的话就会导致会话连接数不断增加,默认是设置为432000秒,很显然这个值太大了,通过如下命令设置小一点:
echo 21600>/proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
设置成21600也就是6小时,这样会自动清除6小时候后的无效链接。记得将这句话加到自动启动文件/etc/rc.local文件中去。
linux ping 报错 sendmsg: Operation not permitted相关推荐
- vite打包报错EPERM: operation not permitted
在网上找了很久都是说权限问题,其实这个问题跟权限没有任何关系,我在尝试各种加权限后终于自己找到了问题,在使用vite打包的时候,在vite.config文件里面有个publicDir: resolve ...
- nfs参数介绍与写法示例及报错( Operation not permitted)
一. NFS各版本通用参数 soft/hard [参数说明]软挂载方式挂载系统,若NFS请求超时,则客户端向调用程序返回错误:如果使用硬连接方式则客户端一直重新请求直至成功.默认为hard. [使用建 ...
- linux wifi 报错 siocsifflags: operation not possible due to rf-kill
问题描述:SIOCSIFFLAGS: Operation not possible due to RF-kill 计算机系统:ubuntu12.04-LTS ...
- keepalived启动后无法ping通VIP,提示ping: sendmsg: Operation not permitted
主备服务器的keepalived服务启动后,主机上的VIP已经绑定了VIP: 但是ping VIP 提示ping: sendmsg: Operation not permitted错误,如下: 解决方 ...
- ping: icmp open socket: Operation not permitted 的解决办法
简介:ping: icmp open socket: Operation not permitted 的解决办法 为 ping 加上 suid 即可. Author:yangyingchao, 201 ...
- 安装linux 系统报错:No DEFAULT or UI configuration directive found 解决方法
安装linux 系统报错:No DEFAULT or UI configuration directive found 解决方法 参考文章: (1)安装linux 系统报错:No DEFAULT or ...
- Postman请求linux服务器报错:503Forwarding failure,由于服务器端口未开放;服务器端口开放与关闭
Postman请求linux服务器报错:503Forwarding failure,由于服务器端口未开放:服务器端口开放与关闭 文章目录: 1 问题分析 2 在Centos上开启和关闭端口 2.1 C ...
- linux启动报错+centos关闭和开启ipv6
LINUX启动报错,dmesg | grep -i erro 当前位置:洪哥笔记 >Linux >centos 6关闭或开启ipv6 centos 6关闭或开启ipv6 关键词 ipv6 ...
- linux ssh 报错failed - POSSIBLE BREAK-IN ATTEMPT
linux ssh 报错failed - POSSIBLE BREAK-IN ATTEMPT 问题故障: 今天在新租的虚拟机上,发现ssh登陆机器的时候报错,如下: [root@pictures_ne ...
最新文章
- 不是微型计算机主板上的部件,微型计算机主板上安装的主要部件
- mysql 四舍五入
- DownloadProvider 源码详细分析
- python的特殊类_python - 类的特殊成员方法
- php中MySQL数据库导入与导出_Mysql数据库导出和导入
- 第七十期:IT技术人员的自我修养
- 企业到底需要什么样的飞鸽传书
- C语言程序设计基础讲座之指针的慨念
- 第1章 Ext JS快速入门示例[4/4]
- iOS h264硬编码
- Hibernate框架简单应用
- PASCAL VOC 2012数据集
- c++ primer plus第六版复习题及答案
- 读《PROSOSPEECH: ENHANCING PROSODY WITH QUANTIZED VECTOR PRE-TRAINING IN TEXT-TO-SPEECH》
- Boost电路的驱动电路
- 融云助力中国企业打造海外云平台
- VR和AR的联系和区别
- QtXlsx第三方库在Mac OS和Windows下的配置及简单使用
- Android 仿微信语音识别
- 北京市工作居住证官方网站js报错不能使用解决办法