ARPの仕組み

 IPアドレスは、あるネットワークに参加しているコンピュータに、グループ分けがし易いように人間が便宜上、勝手に設定するアドレスです。

 他のコンピュータから見れば、どのIPアドレスが振られたのか分かりません。つまり、通信したい相手のIPアドレスが分かっても、どのコンピュータにそのIPアドレスが割り当てられているのか分からないのです。

 例えば、コンピュータAがコンピュータEと通信する場合、コンピュータEのIPアドレスが分かっても、コンピュータEがどのコンピュータなのかは、分かりません。

そこで、コンピュータAは、ネットワーク上の全てのコンピュータに対して、

コンピュータEですか?

という問合せを行います。

これを、ブロードキャストと言います。

コンピュータB、コンピュータC、コンピュータDは、自分宛の問合せでは、ないので無視します。

コンピュータEは、自分宛の問合せなので、コンピュータAに対して返事を返します。

こうして、コンピュータAは、コンピュータEを見つけることができます。

 コンピュータAが行った全てのコンピュータに対する問合せ(ブロードキャスト)のことをARP要求と言います。また、コンピュータEがコンピュータAへ返事をしたことをARP応答と言います。

ARPヘッダ

ARPが、動作する階層は、IPと同じネットワーク層で動作します。RFC826 にて定義されています。

 ここでは、イーサネットの場合のARPヘッダを示します。この構造は、ARPだけでなく、後ほど紹介するRARPプロトコルでも、この構造のパケットを使います。