12月18日(金)2コマ目

今日、やったこと

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

今日の演習

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

図 ネットワーク図


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

やりとりされるパケットは下図のように推測されます。

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


1.ホストCにてping実行

①ルーティング

ホストCのIPがルーティングを行います。

宛先はホストA、ルーティングテーブルはホストCが持つルーティングテーブルを使います。

ルーティングの結果、ルーターのポート2へ送信することになります。

②ARPがMACアドレス取得

ルーティングの結果、送信するルーターのポート2のMACアドレスを取得します。

まず、ARPテーブルチェック。ルーターのポート2の情報があるためこのMACアドレスを使います。

③パケット送信

以下のパケットを送信します。

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

図 パケット① ICMPエコー要求(ホストC->ルーター)


2.ルーターがICMPエコー要求受信

ルーターのポート2がICMPエコー要求を受信します。

ここでもルーティング、MACアドレス取得、パケット送信を行います。

①ルーティング

IPヘッダの宛先(ホストA)とルーターのルーティングテーブルからルーティングした結果、ポート1からホストAへ直接送信します。

②MACアドレス取得

ホストAのMACアドレスを取得します。ARPテーブルにすでにデータがあるため、ARP要求、ARP応答のやり取りはありません。

③パケット送信

以下のパケットをポート1から送信します。

パケット② ホストAへのICMPエコー要求

図 ICMPエコー要求(ルーター->ホストA)


3.ホストAがICMPエコー要求を受信

イーサネットが受信、IPがルーティングですが、宛先IPアドレスが自分宛なので、上位のICMPへ受信パケットを渡します。

ICMPはこのパケットがエコー要求(タイプが8)であるため、送信元(ホストC)へエコー応答を返信します。

で、ここから先はIPがルーティング、MACアドレス取得、パケット送信です。

ルーティングの結果、ルーターのポート1へ送信。

ルーターのポート1のMACアドレスはすでにARPテーブルにあるため、ARP要求、ARP応答のやり取りはなし。

よって、以下のパケットを送信します。

パケット③ ホストAからホストCへのICMPエコー応答

図 ICMPエコー応答(ホストA->ルーター)


4.ルーターのポート1がICMPエコー応答を受信

受信=>ルーティング=>MACアドレス取得 と同じ流れです。

ルーティングの結果、ポート2からホストCへ直接送信します。

ホストCのデータはARPテーブルにはないため、ARP要求を送信します。

パケット④ ホストCのMACアドレス取得のためのARP要求

図 ARP要求(ルーターがホストCのMACアドレス探索)


5.ホストCがARP要求を受信

ホストCのARPが受信したARP要求パケットの宛先IPアドレスから自分のMACアドレスの問い合わせであることがわかります。

ホストCはルーターのポート2へARP応答を返信します。

パケット⑤ ホストCからルーターのポート2へのARP応答

図 ARP応答(ホストCがルーターへ返信)


6.ルーターのポート2がARP応答を受信

受信したARP応答からホストCのMACアドレスがわかり、ICMPエコー応答が送信できます。

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

パケット⑥ ホストAからホストCへのICMPエコー応答

図 ICMPエコー応答(ルーター->ホストC)


以上で終わり。


まとめると

やっていることは結局

①ルーティング

送信(または受信)パケットのIPヘッダ中の宛先IPアドレスとルーティングテーブルでルーティング。これでイーサネットが送信する宛先が決まる。

②MACアドレス取得

ルーティングで決定した宛先のMACアドレスを取得。

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

ここにデータがなければ、ARP要求、ARP応答のやり取りを行う。

③パケット送信

送信パケットの宛先、送信元は以下のようになります。

イーサネットヘッダ 宛先MACアドレス ルーティングで決定した宛先のMACアドレス
送信元MACアドレス ルーティングで決定したインタフェース
IPヘッダ 宛先IPアドレス このパケットを最終的に受信する宛先のIPアドレス
送信元IPアドレス このパケットを送信したPCのIPアドレス


次回、テストします。

コメント

このブログの人気の投稿

2月5日(金)1コマ目

1月22日(金)1コマ目