我获取本机ip但是返回的结果却是::1
我使用的是NgHaiFeedBackInfo.Ip = Request.UserHostAddress或者是一个方法
HaiFeedBackInfo.Ip = getIP();
/// <summary>
/// 获取IP地址
/// </summary>
/// <returns></returns>
public static string getIP()
{
string user_IP = string.Empty;
if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null)
{
if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
{
user_IP = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
}
else
{
user_IP = System.Web.HttpContext.Current.Request.UserHostAddress;
}
}
else
{
user_IP = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
}
return user_IP;
}
出来的结果都是::1
------解决方案--------------------要不放到IIS中进行访问吧,
------解决方案--------------------在hosts文件里面设置就应该就不会出现这问题了
------解决方案--------------------你开启了IPV6?
------解决方案--------------------IPv6的原因。
卸载IPv6协议,或者修改hosts文件,增加一行
XML code
127.0.0.1 ::1
------解决方案--------------------
LZ放心,这个到时候放在服务器上就可以了 ,正常获取到IP地址了