博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net客户端IP跟踪
阅读量:4931 次
发布时间:2019-06-11

本文共 1216 字,大约阅读时间需要 4 分钟。

///         /// 获取客户端IP地址(无视代理)        ///         /// 
若失败则返回回送地址
public static string GetWebClientIp() { string userHostAddress = HttpContext.Current.Request.UserHostAddress; if (HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null) // using proxy { userHostAddress = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); // Return real client IP. } if (string.IsNullOrEmpty(userHostAddress)) { userHostAddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; } //最后判断获取是否成功,并检查IP地址的格式(检查其格式非常重要) if (!string.IsNullOrEmpty(userHostAddress) && IsIP(userHostAddress)) { return userHostAddress; } return "127.0.0.1"; }
///         /// 检查IP地址格式        ///         ///         /// 
public static bool IsIP(string ip) { return System.Text.RegularExpressions.Regex.IsMatch(ip, @"^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$"); }

 

转载于:https://www.cnblogs.com/xhrGeek/p/6322246.html

你可能感兴趣的文章
2014.6.23
查看>>
发送 一个无序广播
查看>>
一块GPU就能训练语义分割网络,百度PaddlePaddle是如何优化的?
查看>>
struts2 重定向
查看>>
[大数加法]Add Binary
查看>>
Responsive设计的十个基本技巧(转)
查看>>
使用MVC的Ajax.BeginForm方法实现异步验证
查看>>
行为型模式之模板模式
查看>>
go学习笔记-常见命令
查看>>
go学习笔记-类型转换(Type Conversion)
查看>>
[shell编程]一个简单的脚本
查看>>
js浮点数运算需要注意的问题
查看>>
锋利的jQuery读书笔记---jQuery中Ajax--load方法
查看>>
@Controller和@RestController的区别(转)
查看>>
day029socketserver模块实现并发,线程、 ftp上传或下载,打印进度条
查看>>
专注就要勇于对其它1000个好主意说“不”
查看>>
nfc相关
查看>>
Python爬虫基础(四)Requests库的使用
查看>>
linux ls和 ll 命令
查看>>
Python 类型强制转换
查看>>