12月4日(金)1コマ目

今日、やったこと

ICMP、ARPとルーティング(パケットを推測する)

今日のホワイトボード

前回の復習から

図 前回のまとめ


ケース1とケース2ではICMPエコー要求のパケットの宛先情報が下表のようになっていました。

ケース イーサネットヘッダの
宛先MACアドレス
IPヘッダの
宛先IPアドレス
2つの宛先は同じ?
ケース1 172.16.4.6 172.16.4.6 同じ
ケース2 172.16.8.10 172.16.4.1 違う


IPヘッダの宛先IPアドレスとイーサネットヘッダの宛先MACアドレスが同じ宛先(ケース1)だったり、違う宛先(ケース2)だったりで統一性がありません。

これは、パケットを最終的に受信する相手とルーティングの結果、送信する相手が異なることがあるためです。

パケット送信の際、IP層以下では以下のながれで処理を行います。


①IP層でIPヘッダ作成、ルーティング

IPヘッダの宛先IPアドレスには最終的に受け取る宛先が書き込まれる

IPでのルーティングはこの宛先IPアドレスとルーティングテーブルを使って行われる。

ルーティングの結果、次に送る宛先が決まる。(当然、IPアドレスで指定される)


②次の送る宛先のMACアドレスを取得する(ARP)

パケットを届けるのはイーサネットの仕事。イーサネットでは宛先・送信元情報はMACアドレスを使うため、IPアドレスからMACアドレスへ変換する必要がある

IPアドレスからMACアドレスへの変換を行うのはARP。

①まず、ARPテーブルチェック。

②ARPテーブルに調べたい対象データがなければ、ARP要求を送信する。

ARP要求のパケットの宛先MACアドレスはブロードキャストアドレス(FF:FF:FF:FF:FF:FF)。

③ARP応答が返ってきたらMACアドレス取得完了。

取得したMACアドレスはARPテーブルに記録する。


③イーサネット層がパケットのイーサネットヘッダを作る

宛先MACアドレスが取得できたので、イーサネットヘッダが作成可能。


④イーサネット層がパケット送信


今日の演習

紙面上のネットワークでやり取りされるパケットを推測します。

図 ネットワーク図


ホストAにてホストBへping実行

ホストA、ホストBのARPテーブルやルーティングテーブルからやり取りされるパケットは以下のように推測されます。

図 やり取りされるパケット


各パケットの詳細は以下のとおり。


パケット① ホストAからホストBへのICMPエコー要求

ホストAのARPテーブルにはホストBのデータがあるため、ARP要求、APR応答のやり取りはなし。

図 パケット① ICMPエコー要求


パケット② ホストBがホストAのMACアドレス取得のために送信するARP要求

ホストBがパケット①を受信。送信元(ホストA)へICMPエコー応答を送信したいが、ホストBのARPテーブルにはホストAのデータがないため、ARP要求を送信する

図 パケット② ARP要求


パケット③ ホストAがARP応答を送信

ホストAがパケット②(ARP要求)を受信。自分のMACアドレスを問い合わされているため、ARP応答をホストBへ返信。

図 パケット③ ARP応答


パケット④ ホストBがホストAへICMPエコー応答を送信

ホストBがパケット③を受信することで、ホストAのMACアドレスが取得できる。

ホストBはホストAへICMPエコー応答を返信する。

図 パケット④ ICMPエコー応答

次回は続きをやります。


コメント

このブログの人気の投稿

2月5日(金)1コマ目

12月18日(金)2コマ目

1月22日(金)1コマ目