イーサネットなどのLANでは,同一セグメント内で通信したい相手のMACアドレスを調べるために,ARPというプロトコルを使います。具体的には,通信したい相手のIPアドレスからそのMACアドレスを入手します。このため,LANレベルでのトラブルが予想される場合は,ARPの実行状況を確認する必要があります。

 パソコンで管理しているARPキャッシュの内容を知りたい場合は,以下のように-aオプションを付加してarpコマンドを実行します()。-aオプションのみを指定した場合は,ARPキャッシュの内容すべてを表示します。

arp -a

図●arpコマンドを使ってWindows XP Professional SP2でARP情報を確認した画面
図●arpコマンドを使ってWindows XP Professional SP2でARP情報を確認した画面
[画像のクリックで拡大表示]

 表示結果の中で「Type」欄が「dynamic」となっているエントリは,ARP問い合わせによる通信を実行して取得した情報です。つまり,ここにdynamicと表示されていて,MACアドレスを示す「Physical Address」が取得できている場合は,少なくともイーサネット・レベルでARPによる通信ができていることが確認できます(Physical Addressが00-00-00-00-00-00の場合は除く)。

 IPアドレスが重複している可能性がある場合,「Physical Address」欄の内容と,該当ホストのMACアドレスが同一かどうかを確認します。そうすることで,本来通信すべきホストと通信しているのか,同一のIPアドレスを付与された別のホストと通信しているかを確認できます。

 -aオプションに続いてIPアドレスを指定した場合は,該当するIPアドレスのARPキャッシュの内容を表示します。パソコンやサーバーに複数のネットワーク・インタフェースが存在する場合は,-Nオプションと一緒にネットワーク・インタフェースをIPアドレスで指定すると,そのIPアドレスを持つネットワーク・インタフェースについてARPキャッシュの内容を表示します。

 arpについての詳細は,こちらをご覧ください。