スクリーンショット_2020-01-25_17

【無料】H23年特別 問4ネットワーク

試験問題はこちら

テーマは「ルータの経路制御テーブルの更新」

H23年(2011年)の春期試験は、東日本大震災の影響で試験が数カ月延期され、「特別試験」として行われました。
問4はネットワークで、ルータがルーティング情報を交換するRIP(Routing Information Protocol)に関する問題です。少し難しめですが、[テーブルの更新手順]のところを丁寧に追っていけば、RIPのことを知らなくても解けると思います。

その[テーブルの更新手順]の部分を見てください。
(1)では、ルータが直接接続されたネットワークに、保持する経路制御情報を30秒ごとに送信すると書かれています。

テーブルの書き換わり方

ここでは3つのルータを全部同時に起動した時を例に、テーブルがどう変わっていくかを説明します。

起動直後のルータは、自分自身が直接つながっているネットワークしか分かりません。図2で示されているルータのテーブルの書き方に基づくと、各ルータのテーブルはこのようになっています。

スクリーンショット 2020-01-25 17.36.59

(2)で起動中のルータは、ほかのルータが送信した経路制御情報を受信して、自身のテーブルを更新すると書かれています。
最初の起動から30秒後、ルータ1はルータ2からの情報を受信し、ルータ2の情報を加えて更新することになりますが、ルータ2から受信した「10.0.1.0/24」は、ルータ1ももともと持っています。
どちらが残るか、そのルールは(1)と(2)に書かれています。

ルータ1がもともと持っている「10.0.1.0/24」は、直接つながっているので距離は初期値の「0」なのに対し、ルータ2から受信した「10.0.1.0/24」は、(1)で受信時に「距離に1を加え」と書かれているので距離は「1」です。
(2)で、更新する距離の方が小さい場合に更新すると書かれているので、更新はしないことになります。

一方、ルータ2からもらったもう一つの「10.0.2.0/24」は、ルータ1の経路制御情報にありません。(3)で、自身のテーブルにない場合は追加すると書かれているので追加することになります。

同様にルータ3はルータ2から経路制御情報を受信します。ルータ2は、ルータ1からだけでなくルータ3からも受信します。そうすると各ルータのテーブルは30秒後にはこのようになります。

スクリーンショット 2020-01-25 17.37.11

さらに30秒後(計60秒後)、再び各ルータが経路制御情報を送信します。
ルータ1は再びルータ2から受信しますが、30秒前と違ってルータ2は「10.0.3.0/24」の情報を持っています。これはルータ1のテーブルにはないので、今回のタイミングでルータ1のテーブルに加えられます。ルータ2では「10.0.3.0/24」の「距離」は「1」なので、ルータ1が受信するときは1が加えられて「2」になります。

同様に、ルータ3のテーブルには「10.0.0.0/24」の情報が加えられます。60秒後の各ルータのテーブルはこのようになります。

スクリーンショット 2020-01-25 17.37.29

こういう流れを踏まえて、設問を見てみます。

設問

ルータ1、ルータ2、ルータ3の順に5秒間隔で起動していった時に、それぞれのテーブルはどのように更新されていくのかを問う問題です。
時間の経過とともにどう変わるのかを図で書くと分かりやすいと思います。

まずルータ1を最初に起動した時を0秒とします。
ルータ1は直接つながっているネットワークAとBの情報を、自分がつながっているネットワークに送信します。
ネットワークBにはルータ2がつながっていますが、0秒時点ではルータ2には電源が入っていません。なのでルータ2はルータ1からの情報を受け取ることができません。

スクリーンショット 2020-01-25 17.16.19


5秒後、ルータ2を起動させます。ルータ2は直接つながっているネットワークBとCの情報を、自分がつながっているネットワークに送信します。
この時、ネットワークBにはルータ1がつながっているため、ルータ1はネットワークBを介してルータ2の情報を受け取り、今まで自分のテーブルになかったネットワークCの情報が書き加えられます。

スクリーンショット 2020-01-25 17.16.27

一方、ネットワークCにはルータ3がつながっていますが、5秒時点ではルータ3には電源が入っていません。なのでルータ3はルータ2からの情報を受け取ることができません。

10秒後、ルータ3が起動します。ルータ3は直接つながっているネットワークCとDの情報を、自分がつながっているネットワークに送信します。
この時、ネットワークCにはルータ2がつながっているため、ルータ2はネットワークCを介してルータ3の情報を受け取り、今まで自分のテーブルになかったネットワークDの情報が書き加えられます。

スクリーンショット 2020-01-25 17.16.34

注意しなくてはならないのは、この時点ではネットワークDの情報はルータ1までは届かないという点です。ルータ2にはネットワークDの情報は加わりますが、それをルータ1に反映させるためにはルータ2がその情報を送信する必要があります。ルータ2は5秒に起動されており、次の送信はその30秒後である35秒まで行われません。

最初のルータ1起動から30秒後、ルータ1が2度目の送信を行います。ルータ2はそれを受け取り、自分のテーブルになかったネットワークAの情報が書き加えられます。0秒時点では電源が入っていないために受け取れなかったルータ1からの情報を、2度目の送信時に初めて受け取れることになるのです。

スクリーンショット 2020-01-25 17.16.42

35秒後、ルータ2が2度目の送信を行います。ルータ1と3はそれを受け取り、ルータ1にはネットワークD、ルータ3にはネットワークAとBの情報が書き加えられます。これで3つのルータがA〜Dのすべてのネットワークの情報を持つようになったのです。

スクリーンショット 2020-01-25 17.16.48

ここまで整理できれば後は簡単です。
aは、ルータ1にネットワークDのための経路制御情報が反映されるタイミングですから、ルータ1にDが書き加えられる「35」秒後です。

bは、ルータ2にネットワークAのための経路制御情報が反映されるタイミングですから、ルータ2にAが書き加えられる「30」秒後です。

cは、そのときのルータ2のテーブルですから、AとBとCとDが全部揃い、かつ転送先ルータが正しく設定された「イ」になります。ネットワークA(10.0.0.0/24)の情報はルータ1からもらったので、転送先はルータ1へ行く10.0.1.1。ネットワークD(10.0.3.0/24)の情報はルータ3からもらったので、転送先はルータ3へ行く10.0.2.2でなくてはなりません。

dは、20秒後のルータ3のテーブルを問うものですので、先ほどの図から「CとD」です。
eは、40秒後のルータ3のテーブルを問うものですので、先ほどの図から「AとBとCとD」です。

【解答】a)エ b)ウ c)イ d)カ e)ア

この記事が気に入ったらサポートをしてみませんか?