获取客户端ip地址的四种方法之间的区别
本文关键字:四种 方法 区别 之间 客户端 ip 地址 获取 | 更新日期: 2023-09-27 18:11:36
Q:
我需要知道以下之间的区别:
Request.ServerVariables["HTTP_X_FORWARDED_FOR"] ;
Request.ServerVariables["REMOTE_ADDR"];
System.Web.HttpContext.Current.Request.UserHostAddress;
System.Net.IPAddress[] strClientIPAddress = System.Net.Dns.GetHostAddresses(Environment.MachineName);
我想获得客户端IP
地址(访问该网站的用户(,我对以前的方法感到困惑,哪种方法更准确。
我总是使用第三个选项来获取客户端(或用户(的ip地址。
System.Web.HttpContext.Current.Request.UserHostAddress;
前两种方法也做同样的事情。
但是最后一种方法不返回客户端ip,它将返回托管站点的服务器ip。要调用此方法,必须指定主机名或ip地址。但是,Environment.MachineName
返回服务器名称,因此它将返回服务器的ip,而不是用户的ip。
有关前两个选项的更多信息,我通过谷歌搜索找到了区别,这里是