我正在使用check_host_alive命令每分钟发送5个数据包到远程位置的所有路由器。 我注意到,今天我收到了AT&T全球客户支持中心发来的一个通知,说路由器已经closures(可能需要5到30分钟才能发送这些通知),从未收到过Nagios的通知。 我去了Nagios,这是显示主机活着的延迟0毫秒。 这告诉我在数据中心看到我的路由器的自动响应,即“TTL过期”,作为来自远程路由器的回复。 有没有我告诉nagios检查答复来自哪里? 我感觉像其他人必须有这个问题…我用check_ping命令testing它,并产生相同的结果。 我有命令定义了%主机名%和主机定义中的正确的IP,它可以很好地告诉我的延迟很高。 任何想法都欢迎,我已经行使了我的Google技能,没有任何结果。
编辑:
root@IM-UBTU:/# /usr/local/nagios/libexec/check_ping -H 192.168.250.1 -w 100.0,10% -c 200.0,20% -vvv CMD: /bin/ping -n -U -w 10 -c 5 192.168.250.1 Output: PING 192.168.250.1 (192.168.250.1) 56(84) bytes of data. Output: From 10.69.10.2 icmp_seq=1 Time to live exceeded
它知道什么是错的,为什么不给我一个警告?
我想尝试提供一个解决scheme,因为没有任何答案。
你最好的select是使用不同的服务检查你想要的,不幸的是我不知道有足够的编程来提供修改的check_ping插件。
另一种方法是将支票更改为类似telnet或ssh的东西,这并不理想,但会为您提供比ping更好的响应。
有关如何更改此信息,请参阅我的post: 更改Nagios如何确定服务器是否处于脱机状态?
您可以在指定目标主机之前,在所有交换机之后,在您的ping语法中指定跳数。 我在我的networking上做了一个小testing,看起来好像你将不能得到回应,如果跳是无法访问的。
这似乎是check_ping中的一个主要缺陷,您应该将其报告为一个错误。