当我使用HttpContext.Current.Request.UserHostAddress
时,有时会返回“192.168.0.17”(IPv4),有时会返回“fe80 :: 99be:a05d:7938:1c30%8”(IPv6)同一台电脑和导航仪。HttpContext IP问题
我该做什么才能返回IPv4?
当我使用HttpContext.Current.Request.UserHostAddress
时,有时会返回“192.168.0.17”(IPv4),有时会返回“fe80 :: 99be:a05d:7938:1c30%8”(IPv6)同一台电脑和导航仪。HttpContext IP问题
我该做什么才能返回IPv4?
找到了一个解决方案,有人被黑了。不能说,如果它会工作,寿=)
http://www.eggheadcafe.com/software/aspnet/30078410/request-object.aspx
检查出4GuysFromRolla这篇文章,看看是否有帮助的。我认为这是你正在寻找的信息。
http://aspnet.4guysfromrolla.com/articles/071807-1.aspx
〜〜的md5sum
public static string GetIP4Address()
{
string IP4Address = String.Empty;
foreach (IPAddress IPA in Dns.GetHostAddresses(HttpContext.Current.Request.UserHostAddress))
{
if (IPA.AddressFamily.ToString() == "InterNetwork")
{
IP4Address = IPA.ToString();
break;
}
}
if (IP4Address != String.Empty)
{
return IP4Address;
}
foreach (IPAddress IPA in Dns.GetHostAddresses(Dns.GetHostName()))
{
if (IPA.AddressFamily.ToString() == "InterNetwork")
{
IP4Address = IPA.ToString();
break;
}
}
return IP4Address;
}
http://stackoverflow.com/a/8597351/2788478 – 2017-03-20 17:06:15
感谢您的解决方案。 +1 – Cesar 2009-11-13 10:01:25
仅用几秒钟就可以完全击败我。 +1 – 2009-11-13 15:26:03
@ md5sum:那么好消息是,我们没有人值得实际代码的信誉;) – 2009-11-13 15:31:51