$_SERVER['REMOTE_ADDR'] 可信吗? [复制]

Posted

技术标签:

【中文标题】$_SERVER[\'REMOTE_ADDR\'] 可信吗? [复制]【英文标题】:Is $_SERVER['REMOTE_ADDR'] trustworthy? [duplicate]$_SERVER['REMOTE_ADDR'] 可信吗? [复制] 【发布时间】:2012-08-26 15:46:41 【问题描述】:

可能重复:What is the most accurate way to retrieve a user's correct IP address in php?Is $_SERVER['REMOTE_ADDR'] always isset()?

好吧,我想知道$_SERVER['REMOTE_ADDR'] 是否总是包含http 请求的发送者的IP?不管它是代理、*** 还是真正的客户端 IP,这个 var 是否总是包含有效的 IP 地址,还是可以由客户端以任何方式更改?

【问题讨论】:

是的,可以伪造。然而,这不是微不足道的。见***.com/questions/5092563/… 更不用说键是 REMOTE_ADDR 而不是 remote_addr 【参考方案1】:

根据接收请求的服务器,它总是包含请求来自的IP地址。

含义:如果请求来自防火墙/NAT/代理后面的计算机,则内容将是防火墙/NAT/代理的内容。

【讨论】:

以上是关于$_SERVER['REMOTE_ADDR'] 可信吗? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

负载均衡器 $_SERVER['REMOTE_ADDR'] 不工作

我们可以用 php cURL 欺骗 $_SERVER['REMOTE_ADDR'] / 用户 ip 吗?

某些客户端在 $_SERVER['REMOTE_ADDR'] 中带有冒号的“垃圾”IP 地址

为啥 $_SERVER["REMOTE_ADDR"] 显示的 IP 与我的外部 IP 不同? [复制]

PHP的$_SERVER['REMOTE_ADDR']

php获取用户ip的五种方式