C# IP地址访问控制
来源:互联网 发布:俞兆林男士内裤 知乎 编辑:程序博客网 时间:2024/04/30 05:52
string ipLimit = "192.168.152.x,192.168.153.x,192.168.154.x,192.168.155.x,192.168.156.x,192.168.157.x,192.168.158.x,192.168.159.x,192.168.x.x"; string[] arrSeperators = { "," }; string[] ipList = ipLimit.Split(arrSeperators, StringSplitOptions.RemoveEmptyEntries); if (!CheckIPLimit(ipList, GetRemoteIP())) { return“不可以访问”; }
获得请求的IP地址函数GetRemoteIP():
private string GetRemoteIP() { string ip = ""; if (Context.Request.ServerVariables["HTTP_VIA"] != null) // 服务器, using proxy { //得到真实的客户端地址 ip = Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); // Return real client IP. } else//如果没有使用代理服务器或者得不到客户端的ip 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. } return ip; } }下面的函数将 string[] ipList与请求IP一一比较(分段比较):
private bool CheckIPLimit(string[] ipList, string remoteIP) { foreach (string ip in ipList) { if (CompareIP(ip, remoteIP)) { return true; } } return false; } private bool CompareIP(string oldIP, string newIP) { string[] arrSeperators = { "." }; string[] oldIPList = oldIP.Split(arrSeperators, StringSplitOptions.RemoveEmptyEntries); string[] newIPList = newIP.Split(arrSeperators, StringSplitOptions.RemoveEmptyEntries); if (oldIPList.Length != newIPList.Length) { return false; } for (int i = 0; i < oldIPList.Length; i++) { if (oldIPList[i] != checkedIP & oldIPList[i] != newIPList[i])//截取的ip是‘x’则是true { return false; } } return true; }
- C# IP地址访问控制
- C# http 访问Ip地址
- 如何控制客户端访问oracle9i的ip地址
- IP限制访问控制
- ngnix控制IP访问
- PHP控制IP访问
- 外网IP通过路由器映射内网某台地址IP(http直接访问、远程桌面控制)
- C#取得IP地址
- C#修改IP地址
- C#获取IP地址
- c#获得ip地址
- C#修改IP地址
- C#获取IP地址
- c# 获取ip地址
- c# 获取IP地址
- C# 获取IP地址
- C#后台跨域访问,需要添加被访问的IP地址和域名
- 家庭局域网 访问IP地址
- 自己动手扩展vim插件——配色篇
- 分数的累加
- session和cookie的理解
- linux下多定时器的实现
- [SGU]126. Boxes
- C# IP地址访问控制
- 什么叫做程序(或者说进程)在运行?
- java中equals和==的区别
- Windows 8 学习笔记(八)--各种流之间的转换
- 批处理删除注册表多余项
- 验证码源码
- 求职那些事十六之百度校招被刷
- bzero
- 做移动应用使用地图API时需要注意的问题