arpコマンドはパソコン内のARPテーブルを管理する。近くにあるネットワーク機器のIPアドレスとMACアドレスの対応付けが間違っていて通信できない状態を解消する。

 パソコンなどの端末では、同じネットワーク内にある機器のIPアドレスとMACアドレスの対応付けを一時的に保持しておくためにARP(Address Resolution Protocol)テーブルという一種のキャッシュをもっている。arpコマンドは、このARPテーブルを管理するためのコマンドだ。機器を入れ替えたり、同じIPアドレスを引き継ぐ別の機器が稼働したりすると、ARPテーブルを更新する必要がある。こういったときにarpを使えば、ARPテーブルの内容を表示したり、削除したりできる。覚えておきたい、よく使うオプションは以下の通りだ。

[画像のクリックで拡大表示]

MACアドレスを宛先にする

 IPネットワークで通信する際には、通信相手をIPアドレスで指定する。しかし、IPパケットを運ぶイーサネットフレームでは、フレームを次に渡す相手をMACアドレスで指定する。このためIPネットワークであっても、MACアドレスが分からないと通信できない。

 IPアドレスで宛先を指定されたパケットは、宛先が同じネットワークにあれば通信相手に直接送信される。宛先が別のネットワークにあれば、デフォルトゲートウエイに送られる。

 このときイーサネットフレームを使うため、通信相手またはデフォルトゲートウエイのMACアドレスを調べる必要がある。具体的には、IPアドレスを記述したARP要求パケットを同じネットワークの全ての機器に向けて送信し、該当する機器から応答が届くのを待つ。応答が届けば、応答の送信元MACアドレスを宛先にしたイーサネットフレームを送る。

arpコマンドはパソコンで保持しているARPテーブルを操作する
[画像のクリックで拡大表示]

 この作業を毎回実行するのは非効率なので、ARPテーブルを保持するようにしている。もしARPテーブルに載っている機器にイーサネットフレームを送るときは、ARP要求パケットを送らずに、ARPテーブルを参照する。こうすることで、すぐにイーサネットフレームを送信できて、ネットワークの混雑も緩和できる。

この先は日経 xTECH Active会員の登録が必要です

日経xTECH Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。