如何找到真实的IP地址?
如果我这样做: -
$_SERVER['REMOTE_ADDR']
它给了我错误的IP地址(157.191.122.36),我已经检查了它,因为它给了我相同的值,即使我的网站是通过不同的地点和国家访问的。
这个地方不知怎的,在http://www.whatismyip.com/给了我正确的IP(64.74.66.230),但我无法通过上面的PHP代码获得相同的值。
我尝试了评论中提到的网址。这些解决方案都不适合我。现在很清楚,虽然使用$_SERVER["REMOTE_ADDR"]
,我得到服务器的IP地址而不是访问者的。
答案 0 :(得分:1)
$_SERVER['REMOTE_ADDR']
是唯一可靠的IP地址 - 它直接从TCP堆栈中提取,并且是建立当前连接的地方。这意味着如果用户通过代理连接,您将获得代理的地址,而不是用户的地址。
任何其他基于标头的标题都是不可靠的,因为HTTP标头很容易伪造。如果您愿意,可以使用他们提供的信息,只要您不信任它。