Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ping6 is now deprecated, make fails #126

Closed
SanskritFritz opened this issue Mar 19, 2016 · 11 comments
Closed

ping6 is now deprecated, make fails #126

SanskritFritz opened this issue Mar 19, 2016 · 11 comments

Comments

@SanskritFritz
Copy link

checking for ping6... no
configure: error: cannot find required executable, bailing out`

The reason why this happens is that the latest iputils package has removed the ping6 executable since the ping executable now supports both ipv4 and ipv6 (ping accepts -4 or -6 flag).
I was able to work around this by symlinking ping6 to ping:

ln -s /usr/bin/ping /usr/bin/ping6

I'm not sure if this has any negative consequences, but it seems to be working fine at the moment.

@ktsaou
Copy link
Member

ktsaou commented Mar 19, 2016

Hm... interestingly the old ping versions do not support the parameters -4 and -6.

@philwhineray any ideas how to fix this?

ping6 is only used by link-balancer and an example config of vnetbuild.

@ktsaou
Copy link
Member

ktsaou commented Mar 19, 2016

@SanskritFritz can you check if the newly linked ping6 behaves like ping -6?

@SanskritFritz
Copy link
Author

I can't, sorry, I have IPv6 disabled here.

@davidscholberg
Copy link

I've setup this workaround and can test the behavior of the ping6 symlink:

# which ping6
/usr/bin/ping6
# ls -l /usr/bin/ping6 
lrwxrwxrwx 1 root root 13 Mar 12 00:40 /usr/bin/ping6 -> /usr/bin/ping
# ping6 -c 4 ::1
PING ::1(::1) 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.050 ms
64 bytes from ::1: icmp_seq=2 ttl=64 time=0.031 ms
64 bytes from ::1: icmp_seq=3 ttl=64 time=0.034 ms
64 bytes from ::1: icmp_seq=4 ttl=64 time=0.038 ms

--- ::1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
rtt min/avg/max/mdev = 0.031/0.038/0.050/0.008 ms

Seems to be working fine, although I'm not sure if there's some edge case that wouldn't work. Let me know if I should test something else.

@philwhineray
Copy link
Member

Thanks @davidscholberg that looks fine for a workaround. Could you possibly confirm the exit status of a ping -6 -c 1 ::1 is 0 for me? That will be the most obvious test in a solution but I don't have a suitable version of ping.

@ktsaou this should not be too hard to handle in the configure script - that is what it is there for and we have the notion of commands which do/don't take parameters already. What makes it a bit trickier is the need to provide a variable to skip the checks which some distros need to enable cross-compilation.

@SanskritFritz your workaround looks fine. Although if you are not using IPv6 and building just for you, you can run configure with --disable-ipv6 to remove the dependency. Or, as Costa says, really only link-balancer uses it, so --disable-link-balancer. If you are packaging you need an update to the configure script.

I will try to find some time for this in today if I can, it will only affect more users in future.

@davidscholberg
Copy link

@philwhineray

# ping -6 -c 1 ::1
PING ::1(::1) 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.071 ms

--- ::1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.071/0.071/0.071/0.000 ms
# echo $?
0

philwhineray added a commit that referenced this issue Mar 20, 2016
Newer versions of iputils have removed the ping6 tool but older
versions do not support the -6 flag, per #126.

The unconfigured program will always try to fall back to ping if
it can't find ping6 but this behaviour will generally only be
visible to developers.
@philwhineray
Copy link
Member

Great. With any luck the change I just pushed will work for everyone and not need a symlink workaround. @SanskritFritz if it tests out OK for you, could you close the ticket and it will be part of the next release.

@SanskritFritz
Copy link
Author

Thanks guys, git head builds fine here, I close the ticket. Waiting for a new release.

@SanskritFritz
Copy link
Author

SanskritFritz commented Jan 1, 2021

Hello, the new release reintroduced this problem for me. I can't push out a new package due to this:

checking for ping6... no
configure: error: cannot find required executable, bailing out

Tried to build git master head too, same problem. Please look into this.

UPDATE: Hold on, I tried to build 3.1.6 just to check, and it fails too with the same error. I'm on a new archlinux, it is possible that previously I still had a ping6 symlink.

@philwhineray
Copy link
Member

If you have IPv6 disabled, you probably want the --disable-ipv6 when configuring?

Or, if you are building a separate package, you might want to treat it as if you are cross-compiling. Specifying:

PING6="/bin/ping -6" ./configure should do what you want then, I think.

@SanskritFritz
Copy link
Author

Thank you, this way it works perfectly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants