ASP.NET 获取客户端IP方法

作者:袖梨 2022-06-25

代码如下 复制代码

stringrequestClientIpAddress = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

if(string.IsNullOrEmpty(requestClientIpAddress))

requestClientIpAddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

if(string.IsNullOrEmpty(requestClientIpAddress))

requestClientIpAddress = HttpContext.Current.Request.UserHostAddress;

经过测试 存在负载均衡的时候 ,HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] 取出的是真实的客户端 IP地址 ,而HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] 和 HttpContext.Current.Request.UserHostAddress 取出的是被分配的保留地址

相关文章

精彩推荐