当前任何版本的 Linux;内置 R8169 网络的 Intel NUC,以及尝试过的外部 USB 网络适配器;
接口将随机停止发送/接收,且任何日志中都没有错误。
ifconfig 将显示接口仍处于活动状态且已连接。RJ45 上的灯仍然闪烁。
我发现从另一台机器运行 ping 会掉线,这时我就知道它已经挂了。我发现我可以通过从受影响的机器发送 ping 来恢复它。它会暂停几秒钟,然后开始成功 ping。但几分钟后它又会再次挂掉。
日志中没有什么明显的内容。事实上,随着它上下移动,没有日志...
我刚刚在机器上运行了 tcpdump,我可以看到网络流量???我甚至可以看到 dns 查询和 ARP 回复???
我可以肯定的是,只有从受影响的机器启动通信,通信才会恢复。没有路由,只有平面网络和 1GB netgear 非托管交换机。
当我输入路由并且网络正在运行时,我会立即得到响应。当问题发生时,命令路由需要 10-15 秒才能响应,但它是相同的列表。
如果我拔掉网线并重新连接,问题就会解决,但几分钟后又会再次出现。
这一年多来这件事已经让我抓狂不已了。
*编辑
我已经发现了问题开始时会发生什么。机器发送了一个 ARP 请求,询问谁有 _gateway,即互联网路由器的 IP 地址。我现在将删除默认路由,看看是否是路由器没有回复导致网络挂起,仅在 NUC 上的 Linux 上?
*编辑
删除默认路由并不能解决问题。
答案1
看来我找到问题了。我的网络上有亚马逊设备、Alexa、Kindle 和 Fire Stick。其中一个肯定使用与这台机器相同的地址,因为从另一台机器观看 tcpdump 显示了这一点。
22:53:37.332273 ARP,回复 192.168.1.100 is-at b8:ae:ed:7d:e4:78,长度 46
22:53:37.669633 ARP,回复 192.168.1.100 is-at fc:a6:67:c3:03:8d,长度 46
2 个设备都回复同一个地址