我尝试了很多arp -a
,它列出了一些设备,但不是全部。 ifconfig
显示我的ip地址和mac地址以及其他一些有用的信息,但是并没有显示本地网络上的所有设备。是否有显示所有IP地址的命令?
最佳答案
arp -a将仅向您显示存储在本地ARP缓存中且您的计算机已连接的MAC地址。
当我尝试查看本地网络中的每台设备时,都必须对其进行扫描。
例如,如果您具有192.168.1.0/24网络,则可以执行以下操作:
$ for i in `seq 1 254`; do
ping -c 1 -q 192.168.1.$i &
done
您将尝试ping网络中的每台计算机。当然,并非每台计算机都会回答ping问题。这就是为什么您不能依赖ping的原因。现在,您需要检查ARP缓存。
$ arp -a | grep 192.168.1. | grep ether
此命令将向您显示仅使用该网络中的计算机过滤的ARP缓存,并且对ARP请求进行了回答(在99%的情况下,它将是网络中设备的完整列表-请记住,当设备被删除时,不会立即删除ARP条目)断开连接)。
关于ip - 列出本地网络上的所有设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30644314/