Any*_*are 1 c# asp.net http ip-address .net-3.5
问:
我需要知道以下几点之间的区别:
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);
Run Code Online (Sandbox Code Playgroud)
我想获取客户端IP
地址(访问该网站的用户),我对之前的方法感到困惑,哪一个更准确.
我总是使用第三个选项来获取客户端(或用户)的IP地址.
System.Web.HttpContext.Current.Request.UserHostAddress;
Run Code Online (Sandbox Code Playgroud)
前两种方法也做同样的事情.
但是最后一个方法不返回客户端ip,它将返回托管站点的服务器ip.要调用此方法,您必须指定主机名或IP地址.但是,Environment.MachineName
返回服务器名称,因此它将返回服务器的IP而不是用户的IP.
有关前两个选项的更多信息,我通过谷歌搜索找到差异,这里是