我想获得访问我网站的计算机的地址 IP(LAN ip)。
我怎么才能得到它?
你不能。
浏览器不会在 HTTP 标头中发送其本地 IP,因此您无法获取它。您只能获得路由器的外部(互联网)IP。
我假设您使用的是 asp.net,在这种情况下,您可以使用 Request.UserHostAddress 来检索客户端的 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();
我希望这对你有帮助。
使用这个功能:
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;
}