Yes, I get the same error:
Code: Select all
$ /usr/lib/nagios/plugins/check_ping -H 10.0.1.7 -w 100.0,60% -c 200.0,90%
PING OK - Packet loss = 0%, RTA = 37.42 ms|rta=37.422001ms;100.000000;200.000000;0.000000 pl=0%;60;90;0
$ /usr/lib/nagios/plugins/check_ping -H jmc-VirtualBox.local. -w 100.0,60% -c 200.0,90%
CRITICAL - Plugin timed out after 10 seconds
$ /usr/lib/nagios/plugins/check_ping -H 10.0.1.98 -w 100.0,60% -c 200.0,90%
PING OK - Packet loss = 0%, RTA = 2.58 ms|rta=2.577000ms;100.000000;200.000000;0.000000 pl=0%;60;90;0
$ /usr/lib/nagios/plugins/check_ping -H EPSON154272.local. -w 100.0,60% -c 200.0,90%
CRITICAL - popen timeout received, but no child process
After looking over the code and playing around with parameters to check_ping I notice a few things. If I add a timeout value (-t 111) and make it verbose (-vvv) I get the ping command passed to spopen. So I see a little better what it's doing. If the mDNS address is a printer or router check_ping correctly uses ping4 even though it gives error: "popen timeout received, but no child process". If the mDNS address is another linux box, check_ping uses ping6 which fails with: "CRITICAL - Plugin timed out after 10 seconds".
I appears that a decent work around for me is to add -4 and -t to the ping command. Where is the right place to do this?
Thanks,
Mark