首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误的客户端IP地址

错误的客户端IP地址
EN

Stack Overflow用户
提问于 2013-01-16 21:42:32
回答 1查看 467关注 0票数 0

我正在从ASP.NET获取客户端IP地址。但某些客户端IP地址收到了127.0.0.1。问题出在哪里。如何获取有效的客户端ip地址?

我使用的是以下代码:

代码语言:javascript
复制
    public static string GetIP()
{
    string clientIp = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    if (!string.IsNullOrEmpty(clientIp))
    {
        string[] forwardedIps = clientIp.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
        clientIp = forwardedIps[forwardedIps.Length - 1];
    }

    if (string.IsNullOrEmpty(clientIp))
        clientIp = HttpContext.Current.Request.ServerVariables["HTTP_CLIENT_IP"];
    if (string.IsNullOrEmpty(clientIp))
        clientIp = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

    return clientIp.ToString();
}
EN

回答 1

Stack Overflow用户

发布于 2013-01-16 21:50:18

127.0.0.1是本地主机,即发出请求的机器与托管请求的机器相同。

我的猜测是,您看到的实际上是您自己的测试或调试?

我认为Request.IsLocal()是一个找到答案的好方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14359812

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档