服务端:

 

 

ASP.NET获取IP的6种方法//方法一
ASP.NET获取IP的6种方法
HttpContext.Current.Request.UserHostAddress; 
ASP.NET获取IP的6种方法
ASP.NET获取IP的6种方法
//方法二
ASP.NET获取IP的6种方法
HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
ASP.NET获取IP的6种方法
ASP.NET获取IP的6种方法
//方法三
ASP.NET获取IP的6种方法
string strHostName = System.Net.Dns.GetHostName();
ASP.NET获取IP的6种方法
string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();
ASP.NET获取IP的6种方法
ASP.NET获取IP的6种方法
//方法四(无视代理)
ASP.NET获取IP的6种方法
HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
ASP.NET获取IP的6种方法
ASP.NET获取IP的6种方法

 

客户端:

 

 

ASP.NET获取IP的6种方法//方法五
ASP.NET获取IP的6种方法
var ip = '<!--#echo var="REMOTE_ADDR"-->';
ASP.NET获取IP的6种方法alert(
"Your IP address is "+ip);
ASP.NET获取IP的6种方法
ASP.NET获取IP的6种方法
//方法六(无视代理)
ASP.NET获取IP的6种方法
function GetLocalIPAddress() 
 

 

22日添加:

 

来自印度的MCT Maulik Patel提供了一种服务端的解决方案,很好:

 

 

ASP.NET获取IP的6种方法if(Context.Request.ServerVariables["HTTP_VIA"]!=null// using proxy

 

备注:

 

1. 有些代理是不会发给我们真实IP地址的

2. 有些客户端会因为“header_access deny”的安全设置而不发给我们IP

 

相关文章: