什么是获取请求的ip的正确方法

什么是获取请求的ip的正确方法,第1张

什么是获取请求的ip的正确方法

答案很复杂。

  • 如果您的Servlet在反向代理或负载平衡器后面的Web服务器上运行,则可以将该Web代理配置为注入请求标头,该标头提供了请求来自的IP地址。不同的反向代理将注入不同的标头。请查阅您的(前端)服务器的文档。

  • 如果您的客户端使用(转发)代理,则它 可能会 插入标头以说明客户端IP地址是…还是可能不。并且它插入的IP地址 可能 不正确。

  • 您通过调用获得的值将

    request.getRemoteAddr()
    是请求的 直接 上游源的IP地址。

您列出的标头都不是标准的,但是“ x-forwarded-
for”被认为是事实上的标准。也就是说,它是最有可能被代理插入的对象,等等…如果注入了任何东西。

最后,即使您确实获得了IP地址,也不一定能为您提供帮助。例如,如果客户端位于专用网络上并通过NAT网关连接到Internet,则HTTP请求中的IP地址将是NAT服务器的地址,而不是实际的客户端IP。


那么,这意味着什么?好吧,基本上,这意味着 通常 您不能 可靠地 找到请求所源自的系统的IP地址。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5428083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存