/// <summary>
/// 获取客户端IP地址(无视代理)
public static string GetHostAddress()
{
if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null)
return System.Web.HttpContext.Current.Request
.ServerVariables["HTTP_X_FORWARDED_FOR"].Split(new char[] { ',' })[0];
else
return System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
//获取客户端主机名称
string ssIp = System.Web.HttpContext.Current.Request.UserHostAddress; IPHostEntry iph = Dns.GetHostByAddress(ssIp); Session["strPCName"] = iph.HostName;
现在的问题是:用以上的方法,获取的时候速度很慢!
本机运行速度OK,但是放到服务器上之后,就超慢!!!
求提速!!是方法有更好的,还是服务器的配置需要修改???
通过这种方式,只有进行了DNS反向解析的IP才能拿到主机名
我估计99%以上的客户端都无法拿到主机名
那只记录IP地址,主机名通过其他方式获取。