【问题标题】:Get the server name or ip address in C# 2010 [duplicate]在 C# 2010 中获取服务器名称或 IP 地址 [重复]
【发布时间】:2013-07-31 16:44:02
【问题描述】:

在 C# 2010 中获取服务器名称和 ip 地址:

我在您的本地网络上有软件。
网络中只有一台服务器。
该软件可以安装在许多局域网上。并加以利用。
我想在任何位置安装和运行;自动检测本地网络上的服务器计算机。怎么样?
我没有服务器的 IP 和计算机名。我希望他们得到一个特殊的代码。
服务器是计算机名称和 IP 地址。在客户端计算机上,服务器将识别。并返回 IP 地址或名称。

我想获取服务器的 IP 地址。以下代码来自:

public static void DoGetHostEntry(string hostname)
{

    IPHostEntry host;

    host = Dns.GetHostEntry(hostname);

    MessageBox.Show("GetHostEntry({0}) returns:"+ hostname);

    foreach (IPAddress ip in host.AddressList)
    {
        MessageBox.Show("    {0}"+ ip.ToString());
    }
}

此代码必须知道服务器计算机的名称。
如何获取服务器计算机的名称?或获取ip服务器?

【问题讨论】:

  • 另外,你的本地网络上有软件吗?我不这么认为。
  • @LittleBobbyTables LOL.. 喜欢这个名字...
  • 我知道。我再问一次,因为这不是正确的答案。为什么不给出明显的答案。只有负面的是它!
  • @HamidRezaMollaebrahimi - 如果答案不正确,请编辑您的问题,使其更清晰。一旦您的问题被编辑,它将被提升到活动列表的顶部。在 SO 上转发您的问题不合适。
  • 我能说什么语言?有局域网。在这个网络中有一台服务器计算机。;;;;其他计算机如何获得服务器IP?虽然我没有服务器计算机的名称。;;;;或者更好的说法是:如何获取客户端计算机的默认网关地址。在 IP 版本 4 中?

标签: c# visual-studio-2010 c#-4.0


【解决方案1】:

如果我猜对了你的问题,那么你需要的是一种所谓的广播查找机制。这种机制允许您向所有 LAN 节点发送请求,并且任何接收到此类请求的节点都可以回答它。这种方法将要求您实现 IP 广播服务器功能,以便您的服务器接收并响应此类请求。

从这里开始阅读: http://codeidol.com/csharp/csharp-network/IP-Multicasting/What-Is-Broadcasting/

这里的例子: http://www.codeproject.com/Articles/21398/Broadcasting-Using-Socket-Oriented-Approach

【讨论】:

    猜你喜欢
    • 2013-07-31
    • 1970-01-01
    • 1970-01-01
    • 2013-03-27
    • 1970-01-01
    • 2010-11-23
    • 1970-01-01
    • 2011-08-31
    • 1970-01-01
    相关资源
    最近更新 更多