打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ASP.NET获取IP的6种方法

服务端:

//方法一

HttpContext.Current.Request.UserHostAddress; 


//方法二

HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];



//方法三

string strHostName = System.Net.Dns.GetHostName();

string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();



//方法四(无视代理)

HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];




 


客户端: 

//方法五

var ip = '<!--#echo var="REMOTE_ADDR"-->';

alert(
"Your IP address is " ip);



//方法六(无视代理)

function GetLocalIPAddress() 



    
var obj = null

    
var rslt = ""

    
try 

    


        obj 
= new ActiveXObject("rcbdyctl.Setting"); 

        rslt 
= obj.GetIPAddress; 

        obj 
= null

    }
 

    
catch(e) 

    


        
// 

    }
 

     

    
return rslt; 

}
 

 


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

if(Context.Request.ServerVariables["HTTP_VIA"]!=null// using proxy



     ip
=Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();  // Return real client IP.

}


else// not using proxy or can't get the Client IP



     ip
=Context.Request.ServerVariables["REMOTE_ADDR"].ToString(); //While it can't get the Client IP, it will return proxy IP.

}





备注:

1. 有些代理是不会发给我们真实IP地址的
2. 有些客户端会因为“header_access deny”的安全设置而不发给我们IP 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ASP.NET获取IP的方法
真正的取真实IP地址
获取客户端IP地址
C#获取客户端IP地址
利用ASP获取客户端真实IP地址
nginx 处理header 全攻略
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服