ifconfig eth0 RX 丢弃的数据包

Fox*_*Fox 17 ifconfig packets

问题

使用ifconfig命令显示越来越多的丢弃数据包的接收部分。因此,从 Internet 到达我的服务器的某些数据包似乎存在问题。

问题

  1. 这个丢弃计数器考虑了什么样的数据包?在到达 iptables 防火墙之前,还是在 iptables 接受数据包之后,是否需要所有到达的数据包?

  2. 如何解决ipconfig drop包计数器停止增加的情况?

有用的故障排除信息

由于我不知道我的问题究竟是什么,如果您认为需要一些其他信息,请随时让我完成此部分。

如果配置

eth0      Link encap:Ethernet  HWaddr 00:cc:cc:cc:cc:cc  
          inet adr:90.0.0.2  Bcast:90.0.0.255  Masque:255.255.255.0
          adr inet6: fe80::21c:c0ff:feb9:829c/64 Scope:Lien
          adr inet6: 2001:a100:1:bbbb::1/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:113264620 errors:0 dropped:2523 overruns:0 frame:0
          TX packets:168526529 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:59171827564 (55.1 GiB)  TX bytes:223993117711 (208.6 GiB)
Run Code Online (Sandbox Code Playgroud)

请注意RX 部分中的“ dropped:2523 ”。这是最重要的。这个数字还在不断增加。

ip -4 路由显示

default via 90.0.0.254 dev eth0 
90.0.0.0/24 dev eth0  proto kernel  scope link  src 90.0.0.2
Run Code Online (Sandbox Code Playgroud)

ip -6 路由显示

2001:a100:1:bbbb::1/64 dev eth0  proto kernel  metric 256 
fe80::/64 dev eth0  proto kernel  metric 256 
default via 2001:a100:1:bbff:ff:ff:ff:ff dev eth0  metric 1024
Run Code Online (Sandbox Code Playgroud)

插件 if_err_eth0_day 的 munin 图

在此处输入图片说明

小智 10

http://www.novell.com/support/kb/doc.php?id=7007165

从内核 2.6.37 开始,已更改丢弃数据包计数的含义。以前,丢包最有可能是由于错误造成的。现在, rx_dropped 计数器显示丢失帧的统计信息,因为:

  • Softnet 积压已满
  • 错误/意外的 VLAN 标记
  • 未知/未注册的协议
  • 服务器未配置为 IPv6 时的 IPv6 帧

[...]

如果 rx_dropped 计数器在 tcpdump 运行时停止递增;那么很可能由于前面列出的原因而出现下降。

  • """使用 ethtool -S 确认接口上没有实际错误。""" 来源 https://access.redhat.com/solutions/657483 (2认同)

小智 2

我也一直试图追查这个问题,但没有成功。我还注意到我的 Ubuntu 12 机器上的 RX 数据包丢失速度约为每秒 1 个。通过搜索,我发现有人在其他各种 Linux 平台(SUSE、Rpi 等)上遇到类似问题。看起来像是linux内核的东西。我注意到的一些更有趣的线索使问题暂时消失,但不完全是解释。

  1. 如果我在 /etc/network/interfaces 中将配置从静态更改为 DHCP,则 RX 数据包丢弃会停止。也许无法识别的数据包与 DHCP 有关,并且当它开箱时不知道如何处理它们?

  2. 如果我运行 tcpdump,则数据包丢失会在转储运行时停止,并在我停止时返回。

或许这些线索能帮助我们查清真相?

总的来说,我的网络性能似乎很好,只是好奇为什么会发生这种情况。