diff --git a/php/Snoopy.class.inc b/php/Snoopy.class.inc index 03a3cca47..1a1c922aa 100644 --- a/php/Snoopy.class.inc +++ b/php/Snoopy.class.inc @@ -80,6 +80,7 @@ class Snoopy // send Accept-encoding: gzip? var $use_gzip = true; var $IP = null; + var $useIpv4 = false; /**** Private variables ****/ @@ -524,6 +525,9 @@ class Snoopy if(!is_null($this->IP)) $cmdline_params .= " --interface ".$this->IP; + if($this->useIpv4) + $cmdline_params .= " --ipv4"; + if($this->_isproxy) $cmdline_params .= " --proxy-insecure --proxy ".(empty($this->proxy_proto) ? '' : $this->proxy_proto.'://').$this->proxy_host.":".$this->proxy_port; diff --git a/plugins/check_port/action.php b/plugins/check_port/action.php index e7e59469c..65e0dc55c 100644 --- a/plugins/check_port/action.php +++ b/plugins/check_port/action.php @@ -33,8 +33,11 @@ function get_ip($url,$ipMatch) { + global $useIpv4; + $client = new Snoopy(); $client->proxy_host = ""; + $client->useIpv4 = $useIpv4; @$client->fetch($url); @@ -48,9 +51,11 @@ function get_ip($url,$ipMatch) function check_port($ip,$port,$checker,$closed,$open) { global $useWebsite; + global $useIpv4; $client = new Snoopy(); $client->proxy_host = ""; + $client->useIpv4 = $useIpv4; if($useWebsite=="yougetsignal") $parse = "remoteAddress=".$ip."&portNumber=".$port; diff --git a/plugins/check_port/conf.php b/plugins/check_port/conf.php index 74729e957..cc11dc232 100644 --- a/plugins/check_port/conf.php +++ b/plugins/check_port/conf.php @@ -5,3 +5,5 @@ // false - disable check_port plugin // "yougetsignal" - use https://www.yougetsignal.com/tools/open-ports/ // "portchecker" - use https://portchecker.co/ + +$useIpv4 = true; // use ipv4 addresses when checking ports, unless website supports ipv6