
Mac OSのコマンドラインからLANデバイスのIPアドレスを表示する
Macと同じLAN(ローカルエリアネットワーク)上にある他のハードウェアのIPアドレスを確認する必要がある場合、コマンドラインのarpツールが非常に便利です。他のデバイスのIPアドレスとMACアドレスをすぐに見つけることができるため、直接ネットワーク接続が容易になり、ネットワークやトラブルシューティングの様々な用途に役立ちます。
arpでローカルデバイスのIPアドレスを見つける
まず、/Applications/Utilities/ からターミナルアプリを起動します(またはSpotlightとCommand+Spaceキーでアクセスできます)。arpツールは、ARP(アドレス解決プロトコル)を使用してネットワークアドレス解決機能を表示および制御します。ここでの目的を達成するには、arpに-aフラグを追加するのが最も簡単です。
arp -a
これにより、他の Mac、PC、ルーター、iPhone、iPad など、ローカルネットワーク上で見つかったデバイスが返され、LAN IP アドレスと個々の MAC アドレスの両方が表示されます。(後者については、MacOS X または iOS で見つかった MAC アドレスと照合することで、ハードウェアを区別しやすくなります)。
arp -a の出力例は次のようになります。
% arp -a
? (192.168.0.1) at 0:0:ca:1:2:3 on en0 ifscope [ethernet]
? (192.168.0.2) at 68:b8:3d:22:1c:42 on en0 ifscope [ethernet]
? (192.168.0.11) at b4:12:23:5a:d3:6f on en0 ifscope [ethernet]
? (192.168.0.255) at ff:ff:ff:ff:ff:ff on en0 ifscope [ethernet]
pingとarpを使ってローカルネットワーク上のデバイスのIPアドレスを見つける方法
出力が最新でない場合、またはそこにあるはずの IP が欠落している場合は、ブロードキャスト IP (通常は「.255」で終わる arp -a の最後の結果) に ping を実行し、次のように arp -a を再度実行します。
まずブロードキャスト IP を ping します。
Terminal% ping 192.168.0.255
PING 192.168.0.255 (192.168.0.255): 56 data bytes
64 bytes from 192.168.0.6: icmp_seq=0 ttl=64 time=0.079 ms
64 bytes from 192.168.0.1: icmp_seq=0 ttl=64 time=1.922 ms
--- 192.168.0.255 ping statistics ---
2 packets transmitted, 2 packets received, +6 duplicates, 0.0% packet loss
round-trip min/avg/max/stddev = 0.079/39.404/303.510/75.738 ms
次に、arp -a コマンドを再度実行します。
Terminal% arp -a
? (192.168.0.1) at 0:0:ca:1:2:3 on en0 ifscope [ethernet]
? (192.168.0.2) at 68:b8:3d:22:1c:42 on en0 ifscope [ethernet]
? (192.168.0.10) at 22:12:bb:a0:3d:fd on en0 ifscope [ethernet]
? (192.168.0.11) at b4:12:23:5a:d3:6f on en0 ifscope [ethernet]
? (192.168.0.255) at ff:ff:ff:ff:ff:ff on en0 ifscope [ethernet]
この例では、192.168.0.10 は、そのマシンがネットワークに参加したばかりであるため、前の結果と比較して新しい IP であることに注意してください。
この例では、デバイスが「イーサネット」として表示されているにもかかわらず、ARP 結果の最後にあるプロトコルの提案は無視できます。実際にはすべて、en0 インターフェイスの Wi-Fi を備えたワイヤレス ネットワーク上にあります。
このリストにはMac自身のIPアドレスやMACアドレスは表示されないことにご注意ください。必要に応じて、ターミナル、システム環境設定、または外部アドレスを探している場合は外部サービスを利用して、ご自身のIPアドレスを見つけることができます。
arpはほとんどの場合十分に機能し、Mac OS Xのすべてのバージョンに組み込まれているという利点がありますが、すべてのユーザーにとって十分ではないかもしれません。より高度なユーザーにとって、ネットワーク検出ツールとしてはnmapの方がさらに優れた選択肢ですが、nmapは直接インストールするか、ソースからコンパイルするか、あるいはhomebrewなどを使ってインストールする必要があります。
ネットワーク上の他のすべてのコンピューターの IP アドレスを見つけるにはどうすればよいでしょうか?
上記のpingとarpのトリックは、ネットワーク上のあらゆるデバイスやコンピュータのIPアドレスをすべて検出し、一覧表示します。つまり、同じネットワークに接続されたMacコンピュータ、Windows PC、Linuxマシン、iPhoneやiPadなどのiOSデバイス、Androidスマートフォンやタブレット、さらにはApple TVやPlayStationなどのIP対応セットトップボックスのIPアドレスも検出されます。ただし、これらのデバイスやコンピュータが、検索を行っているコンピュータと同じローカルネットワークに接続されていることが前提です。
同じネットワークに接続されたデバイスやコンピューターを検索、特定、一覧表示する別の便利な方法をご存知ですか?ぜひコメント欄で共有してください!