PHP如何透过高匿代理IP获取到客户端真实IP?

发布于 2022-09-05 03:16:43 字数 471 浏览 16 评论 0

我用了www.xicidaili.com上的代理IP试了下,用了代理IP以后,纯真、IP138显示的都是代理IP而非我本机真实IP。
用这个函数获取出来的IP也是代理IP而非真实IP

function getIP()
{
global $ip; 
if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP"); //可通过http头伪造
else if(getenv("HTTP_X_FORWARDED_FOR")) 
$ip = getenv("HTTP_X_FORWARDED_FOR"); //可通过http头伪造
else if(getenv("REMOTE_ADDR")) 
$ip = getenv("REMOTE_ADDR"); //可能是用户真实IP也可能是代理IP
else 
$ip = "";
return $ip; 
}

有什么办法能够透过这种高匿代理IP获取到真实IP?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

微凉徒眸意 2022-09-12 03:16:43

没有办法。

所以如果想要过滤恶意请求,就尽量别动这方面的歪脑筋。
做过滤就老老实实按照账号做过滤,按照IP过滤只能作为辅助手段。

青春有你 2022-09-12 03:16:43

没有办法,因为经过代理服务器转发,会重新封包,报文里的ip都是代理的了……

只是在用心讲痛 2022-09-12 03:16:43

不能。
使用代理之后 HTTP_CLIENT_IP 、HTTP_X_FORWARDED_FOR 可通过http头伪造,不能信任,REMOTE_ADDR倒是一个真实 ip ,但是代理的ip

み格子的夏天 2022-09-12 03:16:43

不能,可以看下高匿代理的原理,你就清楚了

检测代理IP匿名程度的方法:
http://blog.mimvp.com/2014/08...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文