asp.net 获取客户端IP

作者:绝地苍狼

         最近有54淘客的网友问我asp.net怎么样获取客户端的IP地址,asp.net怎么样判断是否是IP地址。这里我把我常用的获取客户端IP地址的方法和检查是否是IP地址的方法贴出来给大家分享,希望对各位网友有帮助.

 

/// <summary>
/// 获取IP地址
/// </summary>
/// <returns></returns>
public static string GetIP()
{
string userHostAddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
if (string.IsNullOrEmpty(userHostAddress))
{
userHostAddress
= HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
}
if (string.IsNullOrEmpty(userHostAddress))
{
userHostAddress
= HttpContext.Current.Request.UserHostAddress;
}
if (!string.IsNullOrEmpty(userHostAddress) && IsIP(userHostAddress))
{
return userHostAddress;
}
return "127.0.0.1";
}

/// <summary>
/// 检查IP地址格式
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
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?)$");
}

 

 

 

     以上代码都是我在项目中一直用的,各位可以放心使用,如果有错误的话,你可以及时提出来,大家讨论学习。更多内容尽在www.54talk.cn

posted @ 2010-07-24 22:41  comeonfyz  阅读(2440)  评论(1编辑  收藏  举报