代码之家  ›  专栏  ›  技术社区  ›  Stephano

如何在封闭网络上搜索特定计算机?

  •  3
  • Stephano  · 技术社区  · 16 年前

    我有一个由16台计算机组成的网络,所有计算机都连接到同一个交换机,而不是连接到互联网。这16台计算机中有一个有一个小的Java应用程序运行在BLAZEDS服务器上(也就是说它在一个端口上监听消息)。

    目前,其他15个“客户端”计算机必须手动输入Java应用程序驻留的“服务器”IP。我的客户端应用程序是AdobeAir,所以我在那里没有扫描服务器的能力。

    我正在考虑在Java或C++中编写一个助手应用程序。至少,这个应用程序可以向用户显示IP,然后用户可以将其输入到Air应用程序中;虽然很草率,但总比什么都没有要好。

    我相信有一些工具可以解决这类问题。有什么想法吗?

    5 回复  |  直到 16 年前
        1
  •  4
  •   Thorbjørn Ravn Andersen    16 年前

    我强烈建议使用zeroconf/bonjour来解决这个问题,因为它可以很容易地处理分散的问题,“我应该了解和应该了解我的其他人在哪里?”

    在JavaNS项目中使用Java(完全在您自己的应用程序中)的最简单的方法。 http://jmdns.sourceforge.net/

        2
  •  2
  •   lofte    16 年前

    您可以为向当前计算机的同一子网中的所有IP地址发送心跳或测试消息的用户编写“发现”功能的代码,以查找适当接受/响应的服务器。

        3
  •  1
  •   David J. Liszewski    16 年前

    总而言之, 扫描器 . 你可以告诉它扫描一个网络块

    $ nmap -P0 10.104.244.200
    
    Starting Nmap 4.20 ( http://insecure.org ) at 2010-02-19 18:02 Eastern Standard Time
    Interesting ports on BOSA638992.fmrco.com (10.104.244.200):
    Not shown: 1688 closed ports
    PORT     STATE SERVICE
    25/tcp   open  smtp
    80/tcp   open  http
    135/tcp  open  msrpc
    139/tcp  open  netbios-ssn
    371/tcp  open  clearcase
    443/tcp  open  https
    445/tcp  open  microsoft-ds
    2030/tcp open  device2
    3389/tcp open  ms-term-serv
    MAC Address: 00:17:A4:F3:6D:A7 (Global Data Services)
    
    Nmap finished: 1 IP address (1 host up) scanned in 1.750 seconds
    

    http://nmap.org/

        4
  •  1
  •   VoidPointer    16 年前

    AdobeAir 2.0(作为测试版提供)能够与本地进程进行通信。见 http://www.adobe.com/devnet/air/flex/quickstart/interacting_with_native_process.html

    您可以使用此工具调用编写并随应用程序一起发送的助手。这个助手将使用某种方法来发现您的服务器。例如 zeroConf Networking (被称为 博尼尔 苹果公司)你的air应用程序会使用它从助手那里收到的地址来连接服务器。

        5
  •  1
  •   pm100    16 年前

    多播可以工作-怎么样 http://www.jgroups.org 如果你对Java感到满意