使用“ping”恢复连接?

And*_*ker 1 networking gateway debian-squeeze

我的服务器运行正常。

有事情发生...

突然,我的服务器无法通过 ssh 和 http 访问。(防火墙中唯一开放的端口。)

所有 eth0 配置都是静态的,没有 DHCP。

一切都在 /etc/network/interfaces 中正确配置。

ethtool 配置为强制 100baseT 全双工,网关也是如此 - autoneg 已关闭。

ifconfig 显示零错误、零丢包、零溢出和零冲突。

我的服务器响应从其他网络发送的 ping。(哪个必须通过网关?)

路由显示正确配置的所有内容。

我的服务器没有收到发送到网关的 ping 的响应。

我的服务器从本地网络上的其他机器获得响应。

收到其他本地机器的ping响应后,就可以得到网关的响应,http正常,ssh也正常。我没有重新启动或重新配置以任何方式在网络,唯一使用的命令是ifconfigethtoolrouteping(在上面的顺序所示),使服务器的访问回来。

有关更多背景信息,请参阅此问题。(我实施了提供的建议解决方案,但无济于事。)

有任何想法吗?这个问题已经持续了数周,我完全不知所措......

小智 5

你没有说你的网关是什么,但我的投票是这是一个路由器/网关问题。

很可能 gw 上的 arp 条目超时并且没有刷新,或者网络上有另一台设备响应您服务器 IP 地址的 arp,或者正在无偿地发送您的服务器地址。

当您 ping 网关时,它会查看它的 arp 表并找到(不正确的条目)并回复错误的主机。当您 ping 其他主机时,它们会 arp 并且您的服务器响应,然后每个人的 arp 表都会更新为正确的信息,并且一切都会再次运行。就像魔术一样。