EIGRPのスタブを勉強します。
スタブはクエリの送信を抑える目的で使われます。
スタブに設定されたルータへはクエリを送信しなくなります。
(クエリ:最適経路がダウンした際の、代替ルートの問い合わせ)
ネットワークの行き止まりのルータをスタブに設定します。
行き止まりのルータに代替経路を聞いても、持っているわけはないからです。
まず下のようなネットワークを構築します。
自動集約はすべてのルータで無効にします。
R1(config)#router eigrp 1
R1(config-router)# no auto-summary
次にR1をスタブルータに設定します。
R1(config)#router eigrp 1
R1(config-router)# eigrp stub
すると、R2からR1へのクエリは送信されなくなります。
また、スタブは経路のアドバタイズも制限します。
オプションなしのスタブの場合、直接接続の経路と、サマリールートのみを
アドバタイズするようになります。
※サマリールートの中でも自身で手動/自動で作ったもののみ
今回の場合、R1に直接接続されているR5のルートはきちんとR2へアドバタイズ
されます。しかし、例えばR5のさらに向こうに新しくR6を繋げた場合、
そのネットワークはR2へアドバタイズされません。
次に以下の設定をします。
R1(config)#router eigrp 1
R1(config-router)# eigrp stub receive-only
するとR1は一切のアドバタイズを送信しなくなります。
ですのでR2からは192.168.1.0/24のネットワークが見えなくなります。
pingはR5→R2、R2→R5へ通らなくなります。
次にR1のスタブエリア設定を外し、R2へスタブエリアを設定します。
R2(config)#router eigrp 1
R2(config-router)# eigrp stub
するとR3からR1へはpingが通りますが、(直接接続しているためです)
R3からR5へのpingは通らなくなります。
無理やりR5へpingが通るようにできないか考えます。
スタブエリアはサマリールートをアドバタイズするので、192.168.1.0おを
サマリールートとしてアドバタイズさせようと考えました。
R2(config)#int fa 0/1
R2(config-if)# ip summary-address eigrp 1 192.168.1.0 255.255.255.0
しかしこれは上手くいきませんでした。
R3に集約経路が届きません。R2へも集約した際にできるはずのnull0への
経路が作られていません。
192.168.1.0 を192.168.1.0に集約させようとすると
完全一致しているから集約する必要はない とされて集約してくれないのでしょうか?
そこでこんどは192.168.0.0への集約を試みます。
R2(config)#int fa 0/1
R2(config-if)# ip summary-address eigrp 1 192.168.0.0 255.255.0.0
無事R3へ集約ルートがアドバタイズされました。pingも通りました。
R2のルーティングテーブルにnull0へのルーティング経路も乗りました。