获取公共IP非私有

时间:2018-07-12 05:55:18

标签: php geolocation ip

我正在使用REMOTE_ADDR来获取ip以供使用,它返回给我的公司IP:192.168.30.124,与我的maxmind位置数据库和ipstack之类的站点不匹配

但是,当我访问类似站点时,他们可以检索我的公共IP,即103.52.62.220和正确的国家/地区。我想念什么。

2 个答案:

答案 0 :(得分:1)

presented here的一种简单解决方案phihag是要执行以下操作:

$externalContent = file_get_contents('http://checkip.dyndns.com/');
preg_match('/Current IP Address: \[?([:.0-9a-fA-F]+)\]?/', $externalContent, $m);
$externalIp = $m[1];

简而言之,您需要从必须通过该IP地址路由回来的服务器(网络外部的服务器)获取公用IP。

在我提供的链接中有关于此的更多信息。

答案 1 :(得分:0)

如果服务器位于同一网络中,那么您将仅获得本地ip,因为没有理由离开Intranet回来。路由器使用本地IP将其直接路由到服务器。

这是与TCP相关的