0

指定的网络为私网 除外都为公网 如何区分 做过类似需求有经验的大神 麻烦知道一下

3个回答

1

首先要了解RFC1918中规定的专用地址有哪些,然后这里有比较好的回答https://segmentfault.com/q/10...

0

判断 ip 不行么 ?
为啥要区分。

0

首先可以确定的是内网ip是以127.,10.,192.168.,172.开头的,所以很容易区分内外网的ip。

/*
    区分是否是内网ip
    @param $ip string IP
    @return bool true/false
*/
function isLocal($ip){        
    return preg_match('%^127\.|10\.|192\.168|172\.(1[6-9]|2|3[01])%',$ip);
}

撰写答案