PHP-php 如何验证ip是否真实性

发布于 2016-11-15 20:45:49 字数 88 浏览 1309 评论 5

php是否能真实验证客户端获取的ip是真实性的!比如有个60.28.10.199 这样的ip,检验出是否使用程序hash算法拼出的ip。
大伙给点建议。

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

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

发布评论

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

评论(5

灵芸 2017-10-19 01:51:23

我在网上看到有关可以验证IP地址属于国内还是国外的,不知道这个是否可以对你有用处。也添加以下地址吧,http://www.poluoluo.com/jzxy/201004/82387.html

夜无邪 2017-06-25 00:16:06

理论上,一般情况下$_SERVER['REMOTE_ADDR']就是用户的真实IP,也很难进行伪造。

不过也有例外,我就碰到了,通过$_SERVER['REMOTE_ADDR']取到的时负载均衡机器的IP,用户的IP无法在WEB SERVER上通过PHP获到。

另外IP真实性跟IP格式是否对应该是二码事。

晚风撩人 2017-06-08 13:46:23

个人理解
http 协议是一个tcp协议。需要3次握手。如果IP是伪装到TCP头的(如 synflood),那么TCP连接就无法建立,http无法完成,PHP就不会执行。所以认为PHP应该是可以获得到真实IP的

偏爱自由 2017-02-04 15:19:23

PHP在获取用户IP地址的方式都是从客户端发送的header头信息中获取得到的,所以这就依赖于客户端所发送的header头信息,这个IP地址就是PHP认为是真实的客户端地址,但只要是客户端发送的信息都是可以伪造的,由于PHP是服务端语言,无法获取客户端的任何信息,所以想要通过PHP来获取客户端的真实IP地址目前没有好的解决方案。

偏爱自由 2016-12-13 15:12:56

不要太过于依赖客户端发送的HTTP请求,php的$_SERVER['REMOTE_ADDR']等获得IP的方式都是从网络包中的IP层获得的。这些包都是可以进行伪造的,比如:
1.WindowsXPsp2以下的版本可以修改Raw包的源IP地址。
2.在内核层合成数据包,不经过操作系统协议栈发送。
3.通过跳板(代理)连接。

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