我正在尝试利用流探针argus来确定“节点活跃度”/可达性。
我目前正在处理 ICMP 状态,但想推导出一种方法来确定 ping 是否“预期”超时。
这个问题argus不一定与:
什么情况下一个节点pings另一个节点会收不到数据?是否仅在预计会发生客户端“超时”时?
我知道如果到达节点有各种问题,ICMP 消息将在没有 ICMP 消息进入节点的情况下发送。
[更新]
“无数据返回”是指返回 0 个字节,而不仅仅是 ICMP 字节。根本没有字节。并且请忽略节流或防火墙策略更改的想法,因为这会导致超时,并且是我试图检测的良好“不良响应”。
考虑以下:
ra -S 127.0.0.1:561 -s ltime saddr daddr dport sport sbytes dbytes flgs state - icmp(手册页)
LastTime SrcAddr DstAddr Dport Sport SrcBytes DstBytes Flgs State
2014-01-02 16:56:17.563848 192.168.1.31 192.168.2.22.0x21f9 0x0008 98 0 e ECO
2014-01-02 16:56:18.624553 192.168.1.31 192.168.2.252.0x21e6 0x0008 98 98 e ECO
2014-01-02 16:56:18.724784 192.168.1.31 192.168.2.1.0x21eb 0x0008 98 98 e ECO
2014-01-02 16:56:18.482095 192.168.1.31 192.168.2.10.0x21ef 0x0008 98 0 e ECO
192.168.1.31使用 nagios 插件check_ping.c发送 ping 。 check-ping用于发送单个 ICMP ECHO 数据包。
192.168.2.22并192.168.2.10用0字节回复。这不应该发生,通常不会发生。
check-ping 用于发送单个 ICMP ECHO 数据包。
为了检查节点的超时/不可达性,我正在验证检查dbytes0 长度是我的最佳条件。