ルートフィルタ(不適切なルーティング例)
「ルートフィルタとは」の続きです。
引き続き、下のネットワーク構成を使用して、再配布による不適切なルーティングを検証してみます。

今回は下記のルータで実機確認をしております。
Router_A ・・・ Cisco2513
Router_B ・・・ Cisco1720
Router_C ・・・ Cisco1720
Router_D ・・・ Cisco2514
Router_B、Router_Cの2台は、RIPネットワーク、IGRPネットワークの境界に位置しています。
Router_B、Router_Cに再配送の設定を行うことで、RIPネットワークと、IGRPネットワークが相互に接続可能になります。
ところが、RIPネットワークの「172.16.0.0/16」ルートがRouter_Bで、IGRPネットワークへ再配送され、その結果、Router_CでIGRPの経由として学習してしまうことがあります。
Router_Cは、「172.16.0.0/16」へのルートをRIP、IGRPで学習し、2つルートを持つことになります。
どちらのルートをRouter_Cは、採用するのでしょうか?
Router_Cは、アドミニストレーティブディスタンスを比較します。
- RIP・・・120
- IGRP・・・100
Router_Cは、アドミニストレーティブディスタンスの値が低いIGRPの経路を採用してしまいます。
Router_Cにとって「172.16.0.0/16」へのルートは、Router_Aを経由すれば直ぐに到達できますし、帯域幅も128kbpsで、Router_Bを経由するより高速です。にもかかわらず、Router_Dを経由するルートを採用してしまうのです。
※ルータを設定する順番やルータの電源を入れる順番によっては、このようにならない場合もあります。その場合は、Router_BやRouter_C上のインターフェイスをUP、Downさせてみて下さい。そして「clear ip route *」コマンドを使って強制的にルーティングテーブルを消してみて下さい。奇妙ですが、ルートが変わります。
または、設定を保存してからルータの起動する順番を変えてみて下さい。
話は、もどります。
Router_Dを経由するルートを採用してしまうなんて・・・
これでは、最適なルートを選択できたとは言えません。
それでは、本当にそうなるのか、このネットワークを構築してみることにします。
再配送の設定
●Router_B
Router_B(config)#router rip
Router_B(config-router)#redistribute igrp 100 metric 5
Router_B(config-router)#network 172.17.0.0
Router_B(config-router)#exit
Router_B(config)#router igrp 100
Router_B(config-router)#redistribute rip metric 64 100 255 1 1500
Router_B(config-router)#network 172.19.0.0
●Router_C
Router_C(config)#router rip
Router_C(config-router)#redistribute igrp 100 metric 5
Router_C(config-router)#network 172.18.0.0
Router_C(config-router)#exit
Router_C(config)#router igrp 100
Router_C(config-router)#redistribute rip metric 128 100 255 1 1500
Router_C(config-router)#network 172.20.0.0
Router_AのE0にPCを接続するのは、少々面倒です。
強制的にインターフェイスをUPさせるために、E0インターフェイスで「no keepalive」コマンドを設定しておきます。
●Router_Aの設定
!
version 11.1
service udp-small-servers
service tcp-small-servers
!
hostname Router_A
!
enable password cisco
!
ip subnet-zero
!
interface Ethernet0
ip address 172.16.0.1 255.255.0.0
no keepalive
!
interface Serial0
ip address 172.17.0.1 255.255.0.0
bandwidth 64
clockrate 64000
!
interface Serial1
ip address 172.18.0.1 255.255.0.0
bandwidth 128
clockrate 125000
!
interface TokenRing0
no ip address
shutdown
!
router rip
network 172.16.0.0
network 172.17.0.0
network 172.18.0.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
password cisco
login
!
●Router_Bの設定
!
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname Router_B
!
enable secret 5 $1$JqsH$DufZN17rFszv3DP4ayBS4.
!
memory-size iomem 25
ip subnet-zero
!
interface FastEthernet0
ip address 172.19.0.1 255.255.0.0
speed auto
!
interface Serial0
bandwidth 64
ip address 172.17.0.2 255.255.0.0
!
interface Serial1
no ip address
shutdown
!
interface Serial2
no ip address
shutdown
!
router rip
redistribute igrp 100 metric 5
network 172.17.0.0
!
router igrp 100
redistribute rip metric 64 100 255 1 1500
network 172.19.0.0
!
ip classless
no ip http server
!
!
line con 0
line aux 0
line vty 0 4
password cisco
login
!
end
●Router_Cの設定
!
version 12.1
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname Router_C
!
enable password cisco
!
memory-size iomem 25
ip subnet-zero
!
interface Serial0
bandwidth 128
ip address 172.18.0.2 255.255.0.0
!
interface Serial1
no ip address
shutdown
!
interface FastEthernet0
ip address 172.20.0.1 255.255.0.0
speed auto
!
router rip
redistribute igrp 100 metric 5
network 172.18.0.0
!
router igrp 100
redistribute rip metric 128 100 255 1 1500
network 172.20.0.0
!
ip classless
no ip http server
!
line con 0
transport input none
line aux 0
line vty 0 4
password cisco
login
!
end
●Router_Dの設定
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname Router_D
!
enable secret 5 $1$2K0v$W4RVlVcqNHySJ2RFtCyhm0
!
interface Loopback0
ip address 172.21.0.1 255.255.0.0
!
interface Ethernet0
ip address 172.19.0.2 255.255.0.0
!
interface Ethernet1
ip address 172.20.0.2 255.255.0.0
!
interface Serial0
no ip address
shutdown
!
interface Serial1
no ip address
shutdown
!
router igrp 100
network 172.19.0.0
network 172.20.0.0
network 172.21.0.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
password cisco
login
!
end
Router_B、Router_Cのルーティングテーブルを確認してみます。
●Router_Bのルーティングテーブル
Gateway of last resort is not set
C 172.17.0.0/16 is directly connected, Serial0
R 172.16.0.0/16 [120/1] via 172.17.0.1, 00:00:07, Serial0
C 172.19.0.0/16 is directly connected, FastEthernet0
I 172.18.0.0/16 [100/80235] via 172.19.0.2, 00:00:08, FastEthernet0
I 172.21.0.0/16 [100/610] via 172.19.0.2, 00:00:08, FastEthernet0
I 172.20.0.0/16 [100/1110] via 172.19.0.2, 00:00:08, FastEthernet0
「172.16.0.0/16」のルートは、Router_Aを経由するようになっています。
●Router_Cのルーティングテーブル
Gateway of last resort is not set
I 172.17.0.0/16 [100/158360] via 172.20.0.2, 00:00:54, FastEthernet0
I 172.16.0.0/16 [100/156460] via 172.20.0.2, 00:00:54, FastEthernet0
I 172.19.0.0/16 [100/1110] via 172.20.0.2, 00:00:54, FastEthernet0
C 172.18.0.0/16 is directly connected, Serial0
I 172.21.0.0/16 [100/610] via 172.20.0.2, 00:00:54, FastEthernet0
C 172.20.0.0/16 is directly connected, FastEthernet0
「172.16.0.0/16」のルートは、Router_Dを経由するようになっています。これでは、遠回りですね!
※ルータを設定する順番やルータの電源を入れる順番によっては、このようにならない場合もあります。その場合は、Router_BやRouter_C上のインターフェイスをUP、Downさせてみて下さい。そして「clear ip route *」コマンドを使って強制的にルーティングテーブルを消してみて下さい。奇妙ですが、ルートが変わります。
または、設定を保存してからルータの起動する順番を変えてみて下さい。
再配送は、複雑で管理者の思い通りのルートにならない場合があります。そこで、ルーティングプロセスに、管理者の意思をある程度、反映させたい場合に、ルートフィルタを使用します。
次の「ルートフィルタ設定(フィルタの作成)」では、ルートフィルタを作成の仕方を説明します。
