【问题标题】:Get Client machine's Exact IP Address(Not public IP) using Asp/Javascript使用 Asp/Javascript 获取客户端机器的确切 IP 地址(非公共 IP)
【发布时间】:2015-04-26 23:20:26
【问题描述】:

有没有办法在asp.net中获取客户端机器的确切IP地址。我尝试了以下代码

System.Web.HttpContext context = System.Web.HttpContext.Current;
string ipAddress =context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];


        if (!string.IsNullOrEmpty(ipAddress))
        {
            string[] addresses = ipAddress.Split(',');
            if (addresses.Length != 0)
            {
                return addresses[0];
            }
        }

        return context.Request.ServerVariables["REMOTE_ADDR"];

但是这段代码有时会返回准确的机器IP地址,有时会给出公共IP地址,如何解决这个问题

【问题讨论】:

  • 您无法可靠地获取客户端计算机的 IP 地址。就算可以,也没有用。有多少台 IP 地址为 192.168.1.1 的机器?

标签: javascript c# asp.net ip-address


【解决方案1】:

如果客户端计算机位于 NAT 防火墙后面,则您无法获取客户端计算机的地址。这样的地址无论如何都是没有意义的,因为许多客户可能有相同的地址。

【讨论】:

    猜你喜欢
    • 2011-07-22
    • 2014-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 2019-01-14
    相关资源
    最近更新 更多