0

可能重复:
获取本地IP地址c#

目前我正在使用以下代码获取登录我网站的每台机器的 IP 地址。如果我的网站在我的 Intranet 服务器中,它工作正常。但是如果在客户服务器上部署了相同的代码,并且如果我使用客户应用程序 URL 从我的位置访问该站点(http://123.23.45.89/MyProd/App.htm),它正在更新我的服务器地址的 ip 地址,不是我的本地机器IP。

string IP4Address = String.Empty;

foreach (IPAddress IPA in Dns.GetHostAddresses(Request.ServerVariables["REMOTE_ADDR"].ToString())))
{
  if (IPA.AddressFamily.ToString() == "InterNetwork")
  {
    IP4Address = IPA.ToString();
    break;
  }
}

if (IP4Address != String.Empty)
{
  return IP4Address;
}

foreach (IPAddress IPA in Dns.GetHostAddresses(Dns.GetHostName()))
{
  if (IPA.AddressFamily.ToString() == "InterNetwork")
  {
    IP4Address = IPA.ToString();
    break;
  }
}

return IP4Address;

如果有任何其他方法可以找到个人电脑的 IP 地址。(比如通过互联网从任何机器上找到本地 IP 地址)

4

1 回答 1

2

据我所知,从 LAN 网络到外部服务器的所有连接都具有网络的 WAN Ip(通常是路由器的)。:(

于 2013-01-28T12:00:40.433 回答