gpt4 book ai didi

c# - Request.UserHostAddress 返回负载均衡器的 IP 地址

转载 作者:太空狗 更新时间:2023-10-29 20:56:47 25 4
gpt4 key购买 nike

我的站点中有一行关键代码在我们的开发环境中有效,但在生产环境中无效。好吧,我说它在开发中有效,但事实是它给出了 ::1,这是 IPv6 环回地址。

无论如何,我想做的是捕获访问该站点的用户的 IP 地址。因此,我使用 Request.UserHostAddress 来做到这一点。在开发中,正如我所说,它给了我环回地址,这是正确的,因为我是从我的机器上运行该站点的。在直播中,它做了完全不同的事情。它总是返回负载均衡器的地址。

我想了解的是这个。我使用 Request.UserHostAddress 来获取用户的 IP 地址是错误的,还是我们的网络设置有问题或其他什么?

谢谢,

萨钦

最佳答案

在您自己的应用程序中,如果没有采取任何其他措施来帮助您,您就会陷入困境。这是您所能获得的尽可能多的信息。

如果幸运的话,您的负载均衡器已配置为添加一个或多个额外的 header ,其中包含有关原始请求的信息。

一个常见的解决方案是 X-Forwarded-For header :

The X-Forwarded-For (XFF) HTTP header field is a de facto standard for identifying the originating IP address of a client connecting to a web server through an HTTP proxy or load balancer.

然后您将通过 Request.Headers 属性访问它。

但是我们无法帮助您发现这个(或另一个) header 是否可用 - 您需要与为您的组织配置负载均衡器的人员交谈。

关于c# - Request.UserHostAddress 返回负载均衡器的 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15297620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com