Package: smokeping
Version: 2.6.11-5
Severity: important

Hi - 

It appears that as of 3.16, FPing is no longer a multi-call binary and
/usr/bin/fping and /usr/bin/fping6 act the same.  This ultimately
prevents the FPing probe from working properly because if a target with
both A & AAAA records is used, FPing prefers the AAAA record and
initiates a ping using IPv6 and not IPv4, which is not the intention.
The FPing probe does not support an address-family option to pass -4 or
-6 to the FPing binary so there is no way to force IPv4 name resolution.
As a result, there is no way of adding dual-stack targets to be probed
over IPv4.

A standard Probes file looks like this:

*** Probes ***

+ FPing

binary = /usr/bin/fping

+ FPing6

binary = /usr/bin/fping6

FPing installs like this:

-rwxr-xr-x 1 root root 43904 Jan  2  2018 /usr/bin/fping
lrwxrwxrwx 1 root root     5 Jan  2  2018 /usr/bin/fping6 -> fping

However, the behavior of both fping and fping6 calls to the fping binary
result in the same type of address family support:

(atlantis:17:42:PDT)% fping 1.1.1.1 
1.1.1.1 is alive
(atlantis:17:42:PDT)% fping6 1.1.1.1
1.1.1.1 is alive
(atlantis:17:42:PDT)% fping ipv6.google.com.
ipv6.google.com. is alive
(atlantis:17:42:PDT)% fping6 ipv6.google.com. 
ipv6.google.com. is alive
atlantis:17:42:PDT)% fping 2600::     
2600:: is alive

SmokePing expects that fping6 should reject the 1.1.1.1 IPv4 address and
fping should reject the 2600:: address.  When resolving DNS, SmokePing
expects fping to look up an A record only and fping6 should look up an
AAAA record only.

This is probably not a FPing bug because the project has correctly
decided to support IPv4 and IPv6 transparently and provide the -4 and -6
options if forcing an address family is required:

https://github.com/schweikert/fping/issues/80

However, SmokePing needs to be updated to use -4 and -6 switches for
FPing and FPing6 probes, respectively, hence this bug report.

- Mark

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.17.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Init: systemd (via /run/systemd/system)

Versions of packages smokeping depends on:
ii  adduser                                    3.117
ii  debianutils                                4.8.6
ii  exim4-daemon-light [mail-transport-agent]  4.91-6
ii  fping                                      4.0-6
ii  libcgi-fast-perl                           1:2.13-1
ii  libconfig-grammar-perl                     1.12-2
ii  libdigest-hmac-perl                        1.03+dfsg-2
ii  libjs-cropper                              1.2.2-1
ii  libjs-prototype                            1.7.1-3
ii  libjs-scriptaculous                        1.9.0-2
ii  librrds-perl                               1.7.0-1+b2
ii  libsnmp-session-perl                       1.14~git20130523.186a005-3
ii  liburi-perl                                1.74-1
ii  libwww-perl                                6.35-2
ii  lsb-base                                   9.20170808
ii  perl                                       5.26.2-6
ii  ucf                                        3.0038

Versions of packages smokeping recommends:
ii  apache2 [httpd-cgi]  2.4.34-1
ii  dnsutils             1:9.11.4+dfsg-4
pn  echoping             <none>
ii  libsocket6-perl      0.28-1

Versions of packages smokeping suggests:
pn  curl                                       <none>
ii  exim4                                      4.91-6
ii  exim4-daemon-light [mail-transport-agent]  4.91-6
pn  libauthen-radius-perl                      <none>
ii  libio-socket-ssl-perl                      2.058-1
pn  libnet-dns-perl                            <none>
pn  libnet-ldap-perl                           <none>
pn  libnet-telnet-perl                         <none>
ii  openssh-client                             1:7.7p1-3

-- Configuration Files:
/etc/apache2/conf-available/smokeping.conf changed [not included]
/etc/smokeping/config.d/General changed [not included]
/etc/smokeping/config.d/Probes changed [not included]
/etc/smokeping/config.d/Targets changed [not included]
/etc/smokeping/smokeping_secrets [Errno 13] Permission denied: 
'/etc/smokeping/smokeping_secrets'

-- no debconf information

Reply via email to