On Wed, Dec 10, 2008 at 3:16 PM, Thomas Guyot-Sionnest <span dir="ltr"><<a href="mailto:dermoth@aei.ca">dermoth@aei.ca</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Yes. we enable IPv6 whenever possible and your host advertise an IPv6<br>
address (AAAA record). It looks like check_ping is trying to use ipv6...<br>
you should be able to reproduce it with this hostname as well (both IPv4<br>
and IPv6 connectivity): <a href="http://ipv6.he.net" target="_blank">ipv6.he.net</a><br>
<br>
Now I need to figure out in which cases check_ping try to use IPv6... it<br>
does not happen on my production servers but kernel support for IPv6 is<br>
disabled on them. In an ideal world it should probably use IPv6 only if<br>
there's at least one global address, however it might be hard to make<br>
that portable... So It might never get fixed.<br>
<br>
You can disable IPv6 at compile time with this configure argument:<br>
<br>
- --without-ipv6 </blockquote><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<div class="Ih2E3d"><br>
 > I've checked another domain and it checks it with /bin/ping. So<br>
> apparently the problem is that it thinks it should check it with<br>
> /bin/ping6. Question is, why? I haven't checked the sources. I'm gonna<br>
> look into them meanwhile.<br>
<br>
</div>Simply because there's an IPv6 address record on your domain. Compare<br>
the DNS queries below for <a href="http://ipv6.he.net" target="_blank">ipv6.he.net</a> and <a href="http://slackware.com" target="_blank">slackware.com</a>:<br></blockquote><div><br>Yep, seems like that's the reason. It's probably missing kernel support to actually ping the IPv6 address, so it recognizes that it has an IPv6 address but it cannot ping it so it thinks it's down. Interesting.<br>
<br>I think I'm just going to change the check-host-alive function to be `check_ping -4`, so it would forcefully check IPv4 only.<br><br>Thank you all so much for the help! :)<br>Yaron.<br></div></div><br>