返回结果“:: 1”的Request.UserHostAddress问题

时间:2011-06-20 09:07:10

标签: c# asp.net-mvc ip httpcontext

我正在尝试使用

获取客户端IP地址
    HttpContext.Request.UserHostAddress;

但它会返回::1

如何解决这个问题?

4 个答案:

答案 0 :(得分:48)

::1适用于localhost,也许是this 可能有用。

答案 1 :(得分:27)

这不是错误 - 您在localhost启用的计算机上从IPv6进行连接。 ::1是环回地址 - a double colon means "omitted zeroes",因此该地址对应于地址1。

如果您正在开发软件,我建议您禁用IPv6。从一开始就是实施支持的最简单时间,花时间在解决方案上可能只是浪费精力推迟不可避免的事情。

答案 2 :(得分:3)

虽然这不是一个错误,但也许你可以检查this link,你的问题很好地描述和“解决”了。它说问题的行为方式取决于操作系统,因为用户通过评论主机中的::1行修复了在 Windows Server 2008 中运行的应用程序中的一些问题文件,而他必须在 Windows 7 中取消注释。

希望你设法解决这个问题!祝你好运!

答案 3 :(得分:1)

实际上你在本地主机上运行应用程序并不是bug它只是给你本地主机的ip而且它是ipv6格式