使用相同软件对所有机器执行 ping 操作

使用相同软件对所有机器执行 ping 操作

我想制作一个可以连接到使用相同软件的其他计算机(子网内)的软件。但我不知道如何制作这样的软件,可以 ping 其子网并找出子网中哪些实时机器正在使用我的软件。我不想为此构建服务器。

答案1

有许多预建的 IP 扫描器可用,例如 nmap 或 AngryIP,或在 google 上轻松找到的无数其他扫描器。我们不会在 Superuser 上推荐软件。

另一个简单的选择是编写一个循环 256 次的脚本,并使用系统 ping 或语言 API 发出 ping 命令。尝试:针对 C 类网络中的每个地址。​​如果您需要 B 类网络,则必须使用两个嵌套循环,而对于 A 类,您将需要 3 个,每个循环 256 次。

每次 ping 后,读取响应。如果响应包含“64 字节”,则将该 IP 地址添加到实时系统列表中,然后转到下一个地址。完成后,尝试连接到软件已建立的端口,以查看它是否打开。如果是,则您的软件似乎正在运行。

以下是针对 Linux 的 Python 脚本示例:https://stackoverflow.com/a/317172

相关内容