我正在运行一个子网为 255.255.255.0 的小型网络。
我想在 Windows 命令提示符或 OS X 终端中运行一个命令,该命令将输出已使用的 IP 地址列表。该列表不需要显示除已占用的 IP 地址之外的任何内容。
显然,如果有一种简单的方法可以输出计算机/节点名称或同样有用的内容,那么将是有益的。
答案1
这完全取决于您如何定义“已使用”。Nmap 可轻松用于扫描网络中的计算机,前提是防火墙允许这样做。最基本的命令可能是类似 的命令nmap -sP 192.168.0.0/16
,它将 ping 网络中的每个地址并报告哪些系统响应。运行扫描时处于开启状态的计算机不会响应。具有限制性防火墙的机器可能不会响应。因此,这种方法通常会错过一些计算机
您还可以非常轻松地查看 DHCP 服务器,以查看已分配了哪些地址。DHCP 数据库通常是最新的,但不会显示已静态分配的机器。
有时有效的另一种方法是检查路由器上的 arp 表。假设您的机器经常使用外部服务,那么 arp 表中将有一个用于正在使用的地址的条目。
具有静态地址和极其严格的防火墙且不进行外部连接的机器可能很难找到。最好的方法当然是在更新文档之前不分配地址。