我正在尝试ping远程主机,但出现错误。
# ping 192.168.80.1
PING 192.168.80.1 (192.168.80.1): 56 data bytes
ping: sendto: No buffer space available
ping: sendto: No buffer space available
^C
--- 192.168.80.1 ping statistics ---
2 packets transmitted, 0 packets received, 100% packet loss
它适用于其他主机:
# ping 192.168.16.1
PING 192.168.16.1 (192.168.16.1): 56 data bytes
64 bytes from 192.168.16.1: icmp_seq=0 ttl=254 time=0.442 ms
64 bytes from 192.168.16.1: icmp_seq=1 ttl=254 time=0.402 ms
^C
--- 192.168.16.1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.402/0.422/0.442/0.020 ms
#
消息“没有可用的缓冲区空间”似乎表明某种内存错误。确实,当我使用Netstat进行检查时,“ mbuf clusters”数字看起来非常错误:
# netstat -m
11780 mbufs in use
4294966716/32768 mbuf clusters in use (current/max)
0/3/6656 sfbufs in use (current/peak/max)
1785 KBytes allocated to network
0 requests for sfbufs denied
0 requests for sfbufs delayed
0 requests for I/O initiated by sendfile
0 calls to protocol drain routines
这里发生了什么?是否可以在不停机的情况下解决此问题,还是需要重启主机或重启网络接口?
1
您可以发布dmesg输出吗?
—
Mike H
我已经粘贴了自己的。在我的情况下,这是一个备份,在某个地方阻塞了队列,我不清楚为什么-但先挂起然后恢复备份(rsync --bwlimit = 40),为我们解决了这个问题。我也尝试过加倍,
—
anarcat 2013年
net.inet.tcp.sendbuf_max
并且net.inet.tcp.recvbuf_max
并没有改变任何东西。