ARP要求・ARP応答

ここでは、ARP要求・ARP応答の動作について説明します。

下の図を見て下さい。コンピュータAからコンピュータEへ通信する場合の動作について説明していきます。

コンピュータA、コンピュータEのIPアドレスは次のようになっています。

コンピュータAのIPアドレス・・・192.168.1.1/24
コンピュータEのIPアドレス・・・192.168.1.5/24

コンピュータAは、コンピュータEと同じネットワークに所属するかどうかを調べます。

 コンピュータAが所属するネットワークは、自分のIPアドレスと自分に設定されたサブネットマスクから論理積を求めることで知ることができます。

192.168. 1. 1 ←コンピュータAのIPアドレス
AND 255.255.255. 0 ←コンピュータAに設定されたサブネットマスク
-----------------------
192.168. 1. 0

 コンピュータEが所属するネットワークは、コンピュータEのIPアドレスと自分に設定されたサブネットマスクから論理積を求めることで知ることができます。

192.168. 1. 5 ←コンピュータEのIPアドレス
AND 255.255.255. 0 ←コンピュータAに設定されたサブネットマスク
-----------------------
192.168. 1. 0

すると、コンピュータA、コンピュータEが共に「192.168.1.0」に所属することが分かります。

次にコンピュータAは、自分のARPテーブルを調べます。

ARPテーブルとは、宛先IPアドレスとMACアドレスとの対応表です。

各コンピュータは、下のようなARPテーブルを持っています。

IPアドレスMACアドレス
192.168.1.200:17:42:5B:33:02
192.168.1.300:17:42:5B:33:02
192.168.1.400:17:42:5B:33:02
192.168.1.500:17:42:5B:33:02

上のようなARPテーブルは、宛先の端末と通信する度に学習して構築し、通信の度に更新して行きます。

 既に、宛先IPアドレス「192.168.1.5」のMACアドレスを学習していれば、コンピュータAは、ARPテーブルにあるMACアドレス「00:17:42:5B:33:05」を使用して、パケットをコンピュータE宛に送信します。

 ここでは、まだコンピュータEのMACアドレスを学習していなかったとして、話を続けて行きます。

 コンピュータEのMACアドレスを自分のARPテーブルの中に