/// <summary>
/// 获取客户端IP
/// </summary>
/// <returns></returns>
public static string GetClientIpAddress()
{
var httpContext = HttpContext.Current;
if (httpContext.Request.ServerVariables == null)
{
return null;
}
var clientIp = httpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] ?? httpContext.Request.ServerVariables["REMOTE_ADDR"];
try
{
foreach (var hostAddress in Dns.GetHostAddresses(clientIp))
{
if (hostAddress.AddressFamily == AddressFamily.InterNetwork)
{
return hostAddress.ToString();
}
}
foreach (var hostAddress in Dns.GetHostAddresses(Dns.GetHostName()))
{
if (hostAddress.AddressFamily == AddressFamily.InterNetwork)
{
return hostAddress.ToString();
}
}
}
catch (Exception ex)
{
}
return clientIp;
}
/// <summary>
/// ip是否在ip空间内
/// </summary>
/// <param name="ip"></param>
/// <param name="ipSection"></param>
/// <returns></returns>
public static Boolean ipExistsInRange(String ip, String ipSection)
{
ipSection = ipSection.Trim();
ip = ip.Trim();
int idx = ipSection.IndexOf('-');
String beginIP = ipSection.Substring(0, idx);
String endIP = ipSection.Substring(idx + 1);
return getIp2long(beginIP) <= getIp2long(ip) && getIp2long(ip) <= getIp2long(endIP);
}
public static long getIp2long(String ip)
{
ip = ip.Trim();
String[] ips = ip.Split('.');
long ip2long = 0L;
for (int i = 0; i < 4; ++i)
{
ip2long = ip2long << 8 | Int64.Parse(ips[i]);
}
return ip2long;
}
public static long getIp2long2(String ip)
{
ip = ip.Trim();
String[] ips = ip.Split('.');
long ip1 = Int64.Parse(ips[0]);
long ip2 = Int64.Parse(ips[1]);
long ip3 = Int64.Parse(ips[2]);
long ip4 = Int64.Parse(ips[3]);
long ip2long = 1L * ip1 * 256 * 256 * 256 + ip2 * 256 * 256 + ip3 * 256 + ip4;
return ip2long;
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有