我有一个使用
的ASPX MVC v3应用程序String sourceIp = Request.ServerVariables["REMOTE_ADDR"];
获取IP地址。问题是这给我带来了IPv6版本。我需要IPv4版本。
我的理解是网站无法获得IPv4版本,我需要做的是告诉服务器(我的计算机,这是本地开发)使用IPv4而不是IPv6。
我们已经在Local Area Connection Status -> Properties
中关闭了IPv6,但它仍然抓住了IPv6版本。
如何获取IPv4地址?
注意:我需要IPv4,因为我们使用的是第三方服务,要求将ip作为IPv4格式的参数之一。
ANSWER
需要等待8小时才能发布回复
轻松完成工作。当我按下调试时,它会打开带有http://localhost:8023/mysite
的IE,如果将localhost
更改为127.0.0.1
,那么它将使用127.0.0.1作为IP格式的IP地址。
答案 0 :(得分:1)
我建议首先检查HTTP_X_FORWARDED_FOR值,如Phil Haack的帖子中所述"A Gotcha Identifying the User's IP Address"
HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]
这是一个显示如何操作的great code sample
答案 1 :(得分:0)
轻松完成工作。当我按下调试时,它会打开带有http://localhost:8023/mysite的IE,如果将 localhost 更改为 127.0.0.1 ,那么它将使用 127.0.0.1 作为ip地址,即IPv4格式。