private static $pattern_IPv4 = '/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(|\/[0-9]{1,2})$/';
private $ip6 = array();
private $addr_is_ipv6 = false;
+ private $is_server_addr = false;
public function __construct($initial_value) {
for($i = 0; $i < 8; $i++) {
return $this->addr_is_ipv6;
}
- public function isLocalAddress() {
+ public function setServerAddr($serverAddr) {
+ $this->is_server_addr = $serverAddr;
+ }
+
+ public function isServerAddr() {
+ return $this->is_server_addr;
+ }
+
+ public function isLocalAddress($serverAddr = false) {
/* checks if address is out of:
* 127.0.0.1/32
* 10.0.0.0/8
* 172.16.0.0/12
* ::1/128
* fc00::/7
+ *
+ * if $serverAddr is true also return true for server IP's
*/
if($this->addr_is_ipv6) {
if(
)
return true;
}
+ if($serverAddr && $this->is_server_addr)
+ return true;
return false;
}