実習やった:RIPv2と経路集約を学ぶ
★手順
PCの設定
ホストネームの設定
特権パスワード(平文・暗号文)
コンソールパスワード
telnetパスワード
全てのパスワードを暗号化(service password-encryption)
インターフェースの設定(R2のf0はno keepalive)
クロックレートの設定
↓
ルータ2台分設定
↓
show ip interface brief でインターフェースの状態を確認
R1
R2
R1、R2ともupしている。問題なし。
↓
show ip route でルーティングテーブルを確認
R1
R2
R1、R2とも直接接続(C - connected)のネットワークのみ。
では、ちょい復習になりますがRIPv1でルーティングを行いましょう。(*-ω-)ノ
RIPv1はクラスフルのルーティングプロトコルでした。
なので、↓のように、同じクラスだけどサブネットが違うからって2つネットワークアドレスを入力しても、
サブネットの情報はRIPv1は持ってくれないので、クラスCのアドレスは全部/24の形でしか認識できないわけです。
ルータにしてみれば
「192.168.1.32と192.168.1.96て入力してるけど、クラスCなんだから両方192.168.1.0のネットワークだろが!!」
ってなるわけで・・・(想像)
つまり下位8ビットは全部ゼロになっちゃうんですね。
↑あー。
R2も同じく。
「192.168.1.1と192.168.1.128て入力してるけど、クラスCなんだから両方192.168.1.0のネットワークだろが!!」
「172.16.1.0と172.16.2.0て入力してるけど、クラスBなんだから両方172.16.0.0のネットワークだろが!!」
「172.17.1.0と172.17.2.0て入力してるけど、クラスBなんだから両方172.17.0.0のネットワークだろが!!」
って言われちゃいます(想像)
↑あー。
さてここで。
RIPv1はVLSMに対応してないのでした。
でも。RIPv1は、連続サブネットであれば、通信できるのです!
受信した経路情報が、自分のインタフェースに設定されたネットワークアドレスと同じクラスだった場合、
自分のサブネットマスクを適用しちゃうんです。
つまり・・・
たとえば自分のルーティングテーブルには192.168.1.0/27がのっている。
で、RIPv1で192.168.1.32の経路情報が来た。
サブネットマスクわかんないなー。。じゃあいいや、自分と同じ/27として受け取っとくかー。
っていう、なぁなぁ的なやりとりが行われてる・・・かどうかは知りませんが、
とにかく/27同士なら通信できるわけで。
と、いうことは・・・
↑これ、クラスCの/27同士のとこはよいけど、ℓ1は/26だからR1は経路情報受け取れてないってことだよね。。
じゃあpingも通らないってことか。。っていう予想が立てられます。
試しにR1からpingうってみましょう。
↑やはり。。。
show ip route で確認してみても、ℓ0のネットワークアドレス192.168.1.128は載ってないですねー。
載ってないネットワーク宛てのパケットは、「どこだよ、それ。」ってポイしちゃいます。
※クラスBのℓ2〜ℓ5には、R1からping通ります。R1のルーティングテーブルには172.16.0.0が載ってるので、R2に送ればいい、ってことをちゃんと認識してるわけです。R2に送ったら、R2は直接つながれたネットワークのどれかに送れますから。
ではでは、ここでRIPv2の登場です。
RIPv2はクラスレスのルーティングプロトコルなので、ちゃんとサブネットマスクの情報もやりとりしてくれます。
しかも、コマンドはversion 2ってうつだけ!かんたん!べんり!
いちいちサブネットマスクを打ち込んだりせずとも、勝手にやりとりしてくれます。
↑R1、R2ともversion2にしましょう。
R1でshow ip route で確認してみると・・・192.168.1.128が載ってる!
↑わーい
でもこれだけで喜んでちゃいけません。
ℓ2〜ℓ5のクラスBのアドレスたちが、まだ集約されたまんまです。
RIPv2はサブネットマスクの情報やりとりしてくれるはずなのに・・・なぜ??
(私はこれすごい悩みました。。)
↑こうなる。
それは、RIPが、v1v2とも、デフォルトでネットワーク境界で自動集約する特徴を持っているので、
v2がいくらサブネット情報をやりとりできるとは言え、
クラスBとクラスCで境界があったら、
サブネット情報よりも、「クラスBは/16!」ってのが最優先されちゃうんですね。
なので、no auto-summary で自動集約をオフにして、
「クラスBだけど/16で集約しないで〜/24にして〜」 って通知する必要があります。
すると・・・
ルーティングテーブルに、クラスBの集約されてないルートが載ってますね!
※ただし昔のルート情報も残ってます。フラッシュタイマが切れたらルーティングテーブルから削除されます。
↑172.16.0.0はアップデート情報が来なくてホールドダウン状態になっている様子。(ホールドダウンタイマが起動すると〜is possibly downと表示される)→RIPのタイマーを参照