Page 1 of 1

check_ping issue handling Redirect Host(New nexthop:)

Posted: Wed Aug 12, 2020 8:31 am
by josdemosselman
Hi All,
got a question about the check_ping plugin.
System running is a centos 7.8, fully patched, nagios and plugins installed from the epel repo. (core)

We are working in a front-back setup with nagios. This means, our backend servers are doing all the checks and our frontend servers are just showing the results.
Now, our backend servers also monitors our frontend servers together with all the IP's living on it.
Lets say 192.168.200.2 is our backend server and our Service IP is running on the frontend server 192.168.200.5

The service IP 192.168.219.5 is located on the frontend server but as you can see, not in the same subnet nor vlan.
So the router is saying when I do a normal ping:

Code: Select all

From Gateway (192.168.200.12) icmp_seq=2 Redirect Host(New nexthop: frontendserver(192.168.200.5)) 
-> which is perfectly normal. Just saying: stay in your subnet, I do not need to route...

That being said:
the check_ping plugin shows on a regular basis:

Code: Select all

PING CRITICAL - Packet loss = 100%|rta=2000.000000ms;100.000000;2000.000000;0.000000 pl=100%;50;100;0
TCPdump shows perfect req's and replies.

Is it possible check_ping cannot handle this? And does anyone encountered this issue before (and how did you fix it?)

thanks a million!

Josdemosselman

Re: check_ping issue handling Redirect Host(New nexthop:)

Posted: Thu Aug 13, 2020 2:45 pm
by cdienger
Does a normal ping return any information about the actual round trip then or does it just show you the ICMP redirects? The check_ping plugin relies on the system's ping binary so it is entirely possible that check_ping doesn't handle the ICMP redirects.

Re: check_ping issue handling Redirect Host(New nexthop:)

Posted: Mon Aug 17, 2020 7:50 am
by josdemosselman
Hi, we do receive timings.

ping serviceip
PING service-ip (192.168.219.5) 56(84) bytes of data.
64 bytes from service-ip (192.168.219.5): icmp_seq=1 ttl=64 time=0.189 ms
From Gateway icmp_seq=1 Redirect Host(New nexthop: frontendserver (192.168.200.5))
From Gateway icmp_seq=1 Redirect Host(New nexthop: frontendserver (192.168.200.5))

I also changed the command from check_ping to check_icmp. At this moment, I do not see any issue anymore.

So maybe check_ping cannot handle does responses correctly? Just a guess... Is it a bug, i do not know.

On the otherhand, I use check_icmp now for these cases. It returns a critical when Invalid command line arguments were supplied to the plugin. It should be an unknown instead of a critical since there is nothing wrong with the host you'd like to ping.

So in short, it works because I use a workaround but it seems I ran into some bugs... (if they classify as a bug)

thanks for the reply!