通过 ping 来检查服务器是否可用是否足够?

通过 ping 来检查服务器是否可用是否足够?

我的公司在 WAN 上运营。我们的每个分支机构都在特定范围的 IP 上运行(例如 192.168.0.100、192.168.1.100、192.168.2.100)。

我想监控连接。我用 C# 编写了一个快速控制台应用程序,每 5 秒 ping 一次每个地址,并将结果记录在 CSV 文件中。这样够了吗?我收到了很多 TimedOut 错误,尽管该地址可能在下一次测试时可用(因此不是关闭,而是超时)——为什么会发生这种情况?我 ping 得太频繁了吗?我设置了一个宽松的超时期限。

谢谢。

编辑:我应该说,每个分支机构都没有“服务器”,只有一个配置为 WAN 一部分的路由器 - 所以除了测试连接之外我还能做什么吗?

答案1

关于检查 WAN 上各点之间的基本网络连接。在正常情况下,常规 Ping 跟踪应显示稳定的连接。
但是,就您而言(通过 WAN 链接),您的连接似乎较弱。
我的意思是,您的 WAN 路径上可能会出现间歇性数据包丢失。

关于检查服务器应用程序可用性。现在,这是另一回事了。
您需要使用涉及服务器协议(如果是 Web 服务器,则为 TCP 和 HTTP/HTTPS)的测试。
因为,您的“服务器”可能可以访问,但服务可能已损坏或关闭。

从您的评论更新:
如果除了路由器之外没有其他方法可以确认一个地址来检查该网络是否可达,您应该考虑使用经典方法:设置网络管理在路由器上,并努力实现基于网络的跟踪框架。

答案2

我认为,您确实需要更丰富的测试来确保某些服务(www、文件共享等)可用。Ping 只会告诉您基本操作系统正在运行。已经有免费工具(如 Nagios、ZenOSS 和 monit)可以做到这一点。

答案3

您可能需要研究某种类型的 SNMP 软件 - 它就是为您想要做的事情而设计的。网络简单网络管理协议是开源的并且非常流行。

答案4

取决于您所说的“可用”是什么意思:ping 确实验证了与物理服务器的连接,但无法验证服务器软件及其响应传入请求的能力。超时可能来自源和服务器之间任何位置的 ping 丢失。跟踪路由(在 Windows 中为 tracert)将显示 ping 丢失的位置。两者都不会告诉您服务器(软件)的响应能力。

相关内容