7

私は多くのことを試しましたが、いくつかのarp -aデバイスがリストされていますが、すべてではありません。私のIPアドレスとMACアドレス、およびその他の有用な情報が表示されますが、ローカルネットワーク上のすべてのデバイスが表示されるわけではありません. すべての IP アドレスを表示するコマンドはありますか?ifconfig

4

1 に答える 1

18

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% の場合、ネットワーク内のデバイスの完全なリストになります。切断します)。

于 2015-06-13T08:57:28.917 に答える