【问题标题】:How to find the IP address of system throughout the network [duplicate]如何在整个网络中找到系统的IP地址[重复]
【发布时间】:2013-01-11 18:14:28
【问题描述】:

可能重复:
Get local ip address 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 地址)

【问题讨论】:

    标签: c#


    【解决方案1】:

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

    【讨论】:

    • 是的,如果 NAT 到位(它可能应该是)
    • 那么有没有其他方法可以处理这种情况???
    • 没有我能想到的,正如保罗指出的那样,路由器是在 TCP/IP 层处理这种转换的那个,所以我看不到那里的余地。但是,由于这个问题已被标记为重复,我建议在 StackOverflow 上搜索类似的问题,看看其他用户是否提出了解决方案,但我没有看到绕过路由器翻译的方法:(跨度>
    猜你喜欢
    • 2016-10-05
    • 2021-10-25
    • 2015-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    相关资源
    最近更新 更多