使用check_icmp增加ping间距

我们对Nagios check_icmp监视器有一些挑战…我们的networking遭受微check_icmp ,可能会在我们的防火墙上check_icmp 1或2毫秒的stream量。 我们正在通过防火墙处理微爆问题,但微爆实际上是触发了来自纳吉欧斯的虚假主机下传报警。

 Sun Jul 14 00:00:37 CDT 2013 [1373778037] HOST ALERT: host1;DOWN;SOFT;1;CRITICAL - 105.195.240.6: rta nan, lost 100% Sun Jul 14 00:00:37 CDT 2013 [1373778037] HOST ALERT: host2;DOWN;SOFT;1;CRITICAL - 105.195.115.33: rta nan, lost 100% Sun Jul 14 00:00:37 CDT 2013 [1373778037] HOST ALERT: host3;DOWN;SOFT;1;CRITICAL - 105.193.26.8: rta nan, lost 100% Sun Jul 14 00:00:37 CDT 2013 [1373778037] HOST ALERT: host4;DOWN;SOFT;1;CRITICAL - 105.193.221.73: rta nan, lost 100% Sun Jul 14 00:00:37 CDT 2013 [1373778037] HOST ALERT: host5;DOWN;SOFT;1;CRITICAL - 105.194.18.91: rta nan, lost 100% 

原因是check_icmp使用了荒谬的数据包间隔默认值……默认的数据包间隔很小,整个ping周期可以通过防火墙进入一个微爆发的空间……这就是我们使用check_icmp -n 5 -t 3 -v 10.19.26.29

 [mpenning@target1 ~]$ sudo tshark -i eth0 icmp and host nagios.domain.local [sudo] password for mpenning: Running as user "root" and group "root". This could be dangerous. Capturing on eth0 0.000000 10.19.20.16 -> 10.19.26.29 ICMP Echo (ping) request 0.000028 10.19.26.29 -> 10.19.20.16 ICMP Echo (ping) reply 0.000348 10.19.20.16 -> 10.19.26.29 ICMP Echo (ping) request 0.000358 10.19.26.29 -> 10.19.20.16 ICMP Echo (ping) reply 0.000572 10.19.20.16 -> 10.19.26.29 ICMP Echo (ping) request 0.000581 10.19.26.29 -> 10.19.20.16 ICMP Echo (ping) reply 0.000792 10.19.20.16 -> 10.19.26.29 ICMP Echo (ping) request 0.000801 10.19.26.29 -> 10.19.20.16 ICMP Echo (ping) reply 0.001017 10.19.20.16 -> 10.19.26.29 ICMP Echo (ping) request 0.001025 10.19.26.29 -> 10.19.20.16 ICMP Echo (ping) reply 

虽然check_icmp有一个涉嫌控制信息包间隔的-i开关,但由于某种原因,它不允许500ms的信息包间隔……即使当我将它运行为check_icmp -n 5 -t 3 -i 2000 -v 10.19.26.29 ,时间不会大幅改变…

 [mpenning@target1 ~]$ sudo tshark -i eth0 icmp and host nagios.domain.local Running as user "root" and group "root". This could be dangerous. Capturing on eth0 0.000000 10.19.20.16 -> 105.19.26.29 ICMP Echo (ping) request 0.000018 10.19.26.29 -> 105.19.20.16 ICMP Echo (ping) reply 0.000327 10.19.20.16 -> 105.19.26.29 ICMP Echo (ping) request 0.000338 10.19.26.29 -> 105.19.20.16 ICMP Echo (ping) reply 0.000540 10.19.20.16 -> 105.19.26.29 ICMP Echo (ping) request 0.000552 10.19.26.29 -> 105.19.20.16 ICMP Echo (ping) reply 0.000813 10.19.20.16 -> 105.19.26.29 ICMP Echo (ping) request 0.000824 10.19.26.29 -> 105.19.20.16 ICMP Echo (ping) reply 0.001075 10.19.20.16 -> 105.19.26.29 ICMP Echo (ping) request 0.001087 10.19.26.29 -> 105.19.20.16 ICMP Echo (ping) reply 

有没有办法强制nagios的check_icmpcheck_ping方法增加他们之间的数据包间隔为500毫秒之间? 我意识到我可以要求nagios每个主机发送5000个ping,但这似乎是为了解决这个问题而浪费系统和networking资源。

check_icmp提供了几个可能有帮助的命令行调整。 从命令行运行check_icmp -h以获取更多信息。

  -i max packet interval (currently 80.000ms) -I max target interval (currently 0.000ms) -m number of alive hosts required for success -l TTL on outgoing packets (currently 0) -t timeout value (seconds, currently 10) 

从我的理解

-i最大数据包间隔(当前80.000ms)

-i 2000(2.000ms)

-i 80000(80.000ms)

-i 500000(500.000ms)