如何在整个网络中查找系统的IP地址

时间:2013-01-28 11:56:02

标签: c#

  

可能重复:
  Get local ip address c#

目前我正在使用以下代码获取已登录我网站的每台计算机的ip地址。如果我的网站在我的Intranet服务器中,它工作正常。但是如果在客户服务器上部署相同的代码,并且如果我从我的地方使用到(http://123.23.45.89/MyProd/App.htm)等客户应用程序URL访问该站点,则它正在更新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地址)

1 个答案:

答案 0 :(得分:2)

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