Thursday, February 3, 2011

Check_ping Vs Check_Icmp over VPNs

Sometimes happens that your host is down and check_ping doesn't generate an alert notification, but why?

Many of you may know that check_ping is just a nagios wrapper to the ping command while check_icmp makes the control itself, but this is not the only difference.
This kind of issue usually happens when involves host monitoring over vpn's.

If an host is down over a vpn the result for a missing icmp echo will be "ping timeout" instead of the usual "host unreachable" if that host was in the same network.
For this reason, Nagios will interpret the timeout as a soft error and will not generate the notification.

Instead, using the check_icmp will generate a hard error and so the notification will occur.

I strongly advertise to use check_ping on local networks monitoring only, while check_icmp if you monitor hosts over vpns.

To replace the command, just open command.cfg and at the section check-host-alive, just replace check_ping with check_icmp.