シナプスの技術部ネットワーク課の福山と申します。
自社バックボーンルータのメンテナンスのため、あらためて設定の確認を行っていた際に、ルーティングテーブルが想定通りになっていない箇所があったので、検証環境で原因を確認してみました。
検証環境
GNS3 IOS: 15.2(4)M3
- 隣接するルータはOSPFでネイバー関係
- すべてのリンクが等コスト
- R2とR3からR1へスタティックルートをOSPFで再配布
主な設定
[R1] router ospf 1 network 172.16.2.0 0.0.0.3 area 0 network 172.16.2.8 0.0.0.3 area 0
[R2] router ospf 1 redistribute static subnets network 172.16.2.0 0.0.0.3 area 0 ! ip route 192.168.10.0 255.255.255.0 Null0
[R3] router ospf 1 redistribute static subnets network 172.16.2.8 0.0.0.3 area 0 ! ip route 192.168.10.0 255.255.255.0 Null0
ルーティングテーブル確認
R1#show ip route 192.168.10.0 255.255.255.0 Routing entry for 192.168.10.0/24 Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 1 Last update from 172.16.2.10 on GigabitEthernet2/0, 00:00:05 ago Routing Descriptor Blocks: 172.16.2.10, from 172.16.0.3, 00:00:05 ago, via GigabitEthernet2/0 Route metric is 20, traffic share count is 1 * 172.16.2.2, from 172.16.0.2, 00:00:12 ago, via GigabitEthernet1/0 Route metric is 20, traffic share count is 1
- R1から 192.168.10.0/24 の経路は R2とR3 向けに等コストロードバランシングされる
片方からしか経路を受信していなかった
前述のルーティングテーブルが想定しているものでしたが、実際のルーティングテーブルは以下のようになっていました。
R1#show ip route 192.168.10.0 255.255.255.0 Routing entry for 192.168.10.0/24 Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 1 Last update from 172.16.2.10 on GigabitEthernet2/0, 00:29:28 ago Routing Descriptor Blocks: * 172.16.2.10, from 172.16.0.3, 00:29:28 ago, via GigabitEthernet2/0 Route metric is 20, traffic share count is 1
- R1から 192.168.10.0/24 の経路は R3向けのみになっている
スタティックルートのAD値を変更していた
実際の設定では以下のようにスタティックルートのAD値を変更していました。
ip route 192.168.10.0 255.255.255.0 Null0 254
R2とR3のルーティングテーブルも見てみます。
R2#show ip route 192.168.10.0 255.255.255.0 Routing entry for 192.168.10.0/24 Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 2 Last update from 172.16.2.1 on GigabitEthernet1/0, 00:04:27 ago Routing Descriptor Blocks: * 172.16.2.1, from 172.16.0.3, 00:04:27 ago, via GigabitEthernet1/0 Route metric is 20, traffic share count is 1
R3#show ip route 192.168.10.0 255.255.255.0 Routing entry for 192.168.10.0/24 Known via "static", distance 254, metric 0 (connected) Redistributing via ospf 1 Advertised by ospf 1 subnets Routing Descriptor Blocks: * directly connected, via Null0 Route metric is 0, traffic share count is 1
R2を最後に起動した場合
- R3から 192.168.10.0/24 をR1にOSPFで再配布
- R2は 192.168.10.0/24 の経路をOSPFで受信
OSPFのAD値は110、スタティックルートのAD値は254に変更しているので、ベストパスがOSPFから受信した経路になる - R2のスタティックルートはベストパスではなくなったので再配布されない
- R1から 192.168.10.0/24 の経路は R3向けのみになる
※ルータの起動順で 192.168.10.0/24 の経路は変わります。
まとめ
- そもそも何でスタティックルートのAD値を変更していたのか
→昔、別のルータから BGPで同じ経路を受信していて、スタティックルートの優先度を下げていたことがあり、その設定が残ったままだった。 - ドキュメントを残していないと構成変更などがあった際に、設定している理由がわからなくなることがある。
- 想定した内容と異なった動作をしていることもあるので、ルーティングテーブルを確認するのは大事。