这是位于数据中心的一台塔式服务器。我拥有该机器的完全访问权限。
我遇到了短暂的断线,通常一周几次,每次不到 10 分钟。不幸的是,上周六,它断线了 5 分钟,开机 3 分钟,关机 10 分钟,等等,持续了大约半个小时。我不得不重新启动插座,因为我现在根本没法调试,有些网站我不能让它们长时间无法访问。大约 40 分钟后,当系统在检查硬盘后启动时,网络又恢复正常了。从那以后,一天都很稳定,然后昨晚,又一次断线,持续了 1-10 分钟(我每 10 分钟从另一台机器 ping 一次以获取状态)。
如果我找对了地方,我从未在日志中找到任何有用的东西。也没有负载峰值。在掉线期间,我尝试过几次连接 KVM,但它总是在支持人员设置 KVM 之前关闭。只有一次我在掉线时设法通过 KVM 获得访问权限。我可以确认我无法连接到网络,但机器运行良好。不幸的是,时间太短,无法发现其他任何东西。
每次,我的房屋提供商都不知道他有任何掉线的情况。我在那里还有几台机器,它们都运行良好。但仍然可能是路由器出现故障或以太网电缆有问题。
我需要找到这些中断的原因,因为我再也无法承受更多类似的网站中断。
有没有什么好用的工具(网络监视器)可以用?我需要一些足够简单的工具,这样我才能真正理解日志并指出具体原因。
另外,您认为这是软件问题、机器硬件问题还是机器外部(网络内部)的问题?如果网络就这样断线了,有办法分辨出是哪一个吗?例如,如果某处的电缆坏了,我猜不会有任何先前的错误。
答案1
首先要检查的是内核日志中是否记录了任何链接状态更改。您可以使用该命令查看最新的内核日志消息dmesg
。查找类似于此的消息
eth2: link down
eth2: link up, 100Mbps, full-duplex, lpa 0xC5E1
eth2: link down
eth2: link up, 100Mbps, full-duplex, lpa 0x45E1
如果看到这样的消息,则需要检查计算机和交换机之间的电缆。如果没有看到这样的消息,则应检查堆栈的稍高一层。
另一个问题可能是 MAC 地址或 IP 地址重复。如果这是导致问题的原因,则tcpdump
在服务器上运行时可能会显示传出的数据包,但不显示传入的数据包。尽管可能是这种情况,但第一个传出的数据包可以解决问题。