1

我想获得访问我网站的计算机的地址 IP(LAN ip)。

我怎么才能得到它?

4

4 回答 4

1

你不能。

浏览器不会在 HTTP 标头中发送其本地 IP,因此您无法获取它。您只能获得路由器的外部(互联网)IP。

于 2012-12-16T10:59:02.237 回答
0

我假设您使用的是 asp.net,在这种情况下,您可以使用 Request.UserHostAddress 来检索客户端的 IP 地址。

于 2012-12-16T10:30:51.863 回答
0

方法一:

您可以使用下面提到的链接来获得它。

列出连接到单个 LAN 的所有计算机的 IP 地址

方法二:

您也可以尝试以下一种。

public string GetUserIP()
    {
        string ipList = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

        if (!string.IsNullOrEmpty(ipList))
        {
            return ipList.Split(',')[0];
        }

        return Request.ServerVariables["REMOTE_ADDR"];
    }

方法三:

System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName()).AddressList.GetValue(0).ToString();

我希望这对你有帮助。

于 2012-12-16T10:34:24.267 回答
0

使用这个功能:

 public string GetLanIP()
    {
        IPHostEntry host;
        string localIP = "?";
        host = Dns.GetHostEntry(Dns.GetHostName());
        foreach (IPAddress ip in host.AddressList)
        {
            if (ip.AddressFamily == AddressFamily.InterNetwork)
            {
                localIP = ip.ToString();
            }
        }
        return localIP;

    }
于 2012-12-16T12:17:08.447 回答