c#获取用户IP
publicstaticstringIPAddress{get{stringuserIP;//HttpRequestRequest=HttpContext.Current...
public static string IPAddress
{
get
{
string userIP;
// HttpRequest Request = HttpContext.Current.Request;
HttpRequest Request = HttpContext.Current.Request; // ForumContext.Current.Context.Request;
// 如果使用代理,获取真实IP
if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != "")
userIP = Request.ServerVariables["REMOTE_ADDR"];
else
userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (userIP == null || userIP == "")
userIP = Request.UserHostAddress;
return userIP;
}
}
上面是获取用户IP的代码,如果访客不使用代理的话可以正常获取。但是我们使用了代理路由器之后获取的就是代理的IP ,不是真实IP,但是百度里 搜索输入 本机IP 获取的就是真实的IP,我想知道百度那个功能是怎么做到绕过代理,获取真实IP的。怎么用c#实现。 展开
{
get
{
string userIP;
// HttpRequest Request = HttpContext.Current.Request;
HttpRequest Request = HttpContext.Current.Request; // ForumContext.Current.Context.Request;
// 如果使用代理,获取真实IP
if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != "")
userIP = Request.ServerVariables["REMOTE_ADDR"];
else
userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (userIP == null || userIP == "")
userIP = Request.UserHostAddress;
return userIP;
}
}
上面是获取用户IP的代码,如果访客不使用代理的话可以正常获取。但是我们使用了代理路由器之后获取的就是代理的IP ,不是真实IP,但是百度里 搜索输入 本机IP 获取的就是真实的IP,我想知道百度那个功能是怎么做到绕过代理,获取真实IP的。怎么用c#实现。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询