目次
概要
シンプルなネットワーク構成でのスタティックルートの設定例です。スタティックルートでも、設定を工夫すると障害発生時に自動的にルーティングテーブルを更新して経路を切り替えられます。経路の切り替えは、アドミニストレイティブディスタンスの調整と最長一致検索(ロンゲストマッチ)の2つの方法で設定している例です。
関連記事
アドミニストレイティブディスタンス/メトリックおよびx最長一致検索によって最適ルートを決定する方法は、以下の記事で詳しく解説しています。
ネットワーク構成
設定条件
- R1~R3でスタティックルーティングによってルーティングできるようにします。
- PC間の通信を行う際には、ルータ間を接続する2つのネットワークのうち、ネットワークアドレスが小さい方を優先して利用します。そのために、R1-R2間はロンゲストマッチのルールに基づいて設定してください。また、R2-R3間ではアドミニストレイティブディスタンスの設定を行ってください。
- ルータ間のネットワークは等コストロードバランスになるようにスタティックルートの設定を行います。
初期設定
- ホスト名
- IPアドレス
- PC1、PC2
IPアドレス、デフォルトゲートウェイ
設定
【Step1:現在のルーティングテーブルの確認】
R1~R3で現在のルーティングテーブルを確認します。ルーティングテーブルを表示するには、show ip routeコマンドを利用します。
R1
R1#show ip route ~省略~ Gateway of last resort is not set C 192.168.12.0/24 is directly connected, Ethernet0/0 C 192.168.21.0/24 is directly connected, Ethernet0/1 10.0.0.0/24 is subnetted, 1 subnets C 10.1.1.0 is directly connected, Ethernet0/2
R2
R2#show ip route ~省略~ Gateway of last resort is not set C 192.168.12.0/24 is directly connected, Ethernet0/0 C 192.168.21.0/24 is directly connected, Ethernet0/1 C 192.168.23.0/24 is directly connected, Ethernet0/2 C 192.168.32.0/24 is directly connected, Ethernet0/3
R3
R3#show ip route ~省略~ Gateway of last resort is not set 10.0.0.0/24 is subnetted, 1 subnets C 10.3.3.0 is directly connected, Ethernet0/2 C 192.168.23.0/24 is directly connected, Ethernet0/0 C 192.168.32.0/24 is directly connected, Ethernet0/1
現在、R1~R3は直接接続されている(Directly connected)ネットワークのルート情報を「C」というコードでルーティングテーブルに登録していることがわかります。
【Step2:リモートネットワークの確認】
R1~R3の各ルータのルーティングテーブルに登録するべきルート情報は、直接接続されていないリモートネットワークのルート情報です。スタティックルートの設定をもれなく行うには、各ルータにとってのリモートネットワークをしっかりと確認しておくことが重要です。
以下の表に、各ルータにとってのリモートネットワークとネクストホップ、出力インタフェースをまとめています。
ネットワークアドレス | ネクストホップ | 出力インタフェース |
192.168.23.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 | |
192.168.32.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 | |
10.3.3.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 |
ネットワークアドレス | ネクストホップ | 出力インタフェース |
10.1.1.0/24 | 192.168.12.1 | Ethernet0/0 |
192.168.21.1 | Ethernet0/1 | |
10.3.3.0/24 | 192.168.23.3 | Ethernet0/2 |
192.168.32.3 | Ethernet0/3 |
ネットワークアドレス | ネクストホップ | 出力インタフェース |
192.168.23.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 | |
192.168.32.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 | |
10.3.3.0/24 | 192.168.12.2 | Ethernet0/0 |
192.168.21.2 | Ethernet0/1 |
【Step3:ルータ間のネットワークアドレスのスタティックルート設定】
R1-R2間、R2-R3間のネットワークアドレス(192.168.12.0/24、192.168.21.0/24、192.168.23.0/24、192.168.32.0/24)に対するスタティックルートを設定します。R2は直接接続されているので、設定は不要です。R1とR3でルータ間の4つのネットワークアドレスに対するスタティックルートの設定を行います。なお、等コストロードバランスになるように、それぞれ2つずつルートを設定します。
R1
ip route 192.168.23.0 255.255.255.0 192.168.12.2 ip route 192.168.23.0 255.255.255.0 192.168.21.2 ip route 192.168.32.0 255.255.255.0 192.168.12.2 ip route 192.168.32.0 255.255.255.0 192.168.21.2
R2
ip route 192.168.12.0 255.255.255.0 192.168.23.2 ip route 192.168.12.0 255.255.255.0 192.168.32.2 ip route 192.168.21.0 255.255.255.0 192.168.23.2 ip route 192.168.21.0 255.255.255.0 192.168.32.2
【Step4:ルータ間のネットワークアドレスのスタティックルート確認】
Step3で設定したルータ間のネットワークアドレスに対するスタティックルートを確認します。
R1
R1#show ip route static S 192.168.23.0/24 [1/0] via 192.168.21.2 [1/0] via 192.168.12.2 S 192.168.32.0/24 [1/0] via 192.168.21.2 [1/0] via 192.168.12.2
R2
R3#show ip route static S 192.168.12.0/24 [1/0] via 192.168.32.2 [1/0] via 192.168.23.2 S 192.168.21.0/24 [1/0] via 192.168.32.2 [1/0] via 192.168.23.2
同じネットワークアドレスに対して異なるネクストホップを設定することで、スタティックルートでも等コストロードバランスが可能です。
【Step5:PCのネットワークアドレスに対するスタティックルート設定】
PC1/PC2のネットワークアドレスに対するスタティックルートを設定します。PC間の通信は、等コストロードバランスではなくネットワークアドレスが小さい方のルータ間のリンクを優先する条件です。そして、R1-R2間とR2-R3間では条件により、設定の考え方が違います。
PC間の通信に必要な10.1.1.0/24と10.3.3.0/24のネットワークアドレスについて、R1-R2間の設定とR2-R3間の設定をそれぞれ考えます。
【10.1.1.0/24のスタティックルート】
PC2からPC1へパケットを送信するときに、10.1.1.0/24のスタティックルートが必要です。R3から10.1.1.0/24へパケットをルーティングする際には、ネクストホップとして以下の2つあります。
- 192.168.23.2(優先する)
- 192.168.32.2(優先しない:遠く見せる[アドミニストレイティブディスタンスを大きく])
ネットワークアドレスが小さい方を優先するので、192.168.23.2を優先します。そのためには、ネクストホップ192.168.32.2のスタティックルートのアドミニストレイティブディスタンスを大きく設定します。ネクストホップ192.168.32.2のスタティックルートは遠く見せるように設定していることになります。
R3
ip route 10.1.1.0 255.255.255.0 192.168.23.2 ip route 10.1.1.0 255.255.255.0 192.168.32.2 10
そして、R2から10.1.1.0/24へパケットをルーティングする際には、ネクストホップとして以下の2つあります。
- 192.168.12.1(優先する)
- 192.168.21.1(優先しない:大雑把に設定する[集約])
ロンゲストマッチによってネクストホップとして192.168.12.1を優先するためには、10.1.1.0/24のネクストホップとして192.168.12.1を設定し、10.1.0.0/16に集約したネットワークアドレスのネクストホップとして192.168.21.1を設定します。つまり、ネクストホップ192.168.21.1のスタティックルートは大雑把に設定します。
R2
ip route 10.1.0.0 255.255.0.0 192.168.21.1 ip route 10.1.1.0 255.255.255.0 192.168.12.1
なお、R1では10.1.1.0/24のネットワークは直接接続なので特別な設定は必要ありません。10.1.1.0/24に対するスタティックルートの設定とパケットのルーティングの様子をまとめると、次の図のようになります。
【10.3.3.0/24のスタティックルート】
PC1からPC2へパケットを送信するときに10.3.3.0/24のスタティックルートが必要です。10.1.1.0/24のスタティックルートと考え方は同じです。R1では、ロンゲストマッチによって、パケットをルーティングするときにネクストホップ 192.168.12.2のスタティックルートが優先されるように以下のように設定します。
R1
ip route 10.3.0.0 255.255.0.0 192.168.21.2 ip route 10.3.3.0 255.255.255.0 192.168.12.2
そして、R2ではアドミニストレイティブディスタンスを大きくすることで、ネクストホップ 192.168.32.3のスタティックルートはルーティングテーブルには登録されないようにします。
R2
ip route 10.3.3.0 255.255.255.0 192.168.23.3 ip route 10.3.3.0 255.255.255.0 192.168.32.3 10
R3では10.3.3.0/24のネットワークは直接接続なのでスタティックルートの設定は不要です。10.3.3.0/24に対するスタティックルートの設定とパケットのルーティングの様子をまとめると、次の図のようになります。
【Step6:PCのネットワークアドレスに対するスタティックルート確認】
Step5で設定したPCのネットワークアドレスに対するスタティックルートを確認します。
R1
R1#show ip route static 10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks S 10.3.0.0/16 [1/0] via 192.168.21.2 S 10.3.3.0/24 [1/0] via 192.168.12.2 S 192.168.23.0/24 [1/0] via 192.168.21.2 [1/0] via 192.168.12.2 S 192.168.32.0/24 [1/0] via 192.168.21.2 [1/0] via 192.168.12.2
R2
R2#show ip route static 10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks S 10.3.3.0/24 [1/0] via 192.168.23.3 S 10.1.1.0/24 [1/0] via 192.168.12.1 S 10.1.0.0/16 [1/0] via 192.168.21.1
R3
R3#show ip route static S 192.168.12.0/24 [1/0] via 192.168.32.2 [1/0] via 192.168.23.2 S 192.168.21.0/24 [1/0] via 192.168.32.2 [1/0] via 192.168.23.2 10.0.0.0/24 is subnetted, 2 subnets S 10.1.1.0 [1/0] via 192.168.23.2
【Step7:PC間の通信経路の確認】
トレースルートによってPC1-PC2間の通信経路を確認します。PC1からPC2へのトレースルートの結果は、以下のようになります。
PC1
PC1#traceroute 10.3.3.100 Type escape sequence to abort. Tracing the route to 10.3.3.100 1 10.1.1.1 36 msec 16 msec 20 msec 2 192.168.12.2 32 msec 40 msec 40 msec 3 192.168.23.3 56 msec 56 msec 56 msec 4 10.3.3.100 80 msec * 64 msec
PC2
PC2#traceroute 10.1.1.100 Type escape sequence to abort. Tracing the route to 10.1.1.100 1 10.3.3.3 32 msec 16 msec 20 msec 2 192.168.23.2 32 msec 24 msec 32 msec 3 192.168.12.1 40 msec 60 msec 56 msec 4 10.1.1.100 76 msec * 64 msec
トレースルートの結果からPC1-PC2間の通信は、ルータ間のネットワークアドレスが小さい方の経路で行われていることがわかります。
【Step8:経路の切り替え】
Step7で確認したように、PC間の通信は、ルータ間のネットワークアドレスが小さい方を優先しています。この経路のインタフェースであるR1 E0/0、R2 E0/0、R2 E0/2、R3 E0/0をシャットダウンします。
R1
interface Ethernet0/0 shutdown
R2
interface Ethernet0/0 shutdown ! interface Ethernet0/2 shutdown
R3
interface Ethernet0/0 shutdown
その後、R1~R3のルーティングテーブルを確認すると、次のようになります。
R1
R1#show ip route static 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks S 10.3.0.0/16 [1/0] via 192.168.21.2 S 192.168.23.0/24 [1/0] via 192.168.21.2 S 192.168.32.0/24 [1/0] via 192.168.21.2
R2
R2#show ip route static 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks S 10.3.3.0/24 [10/0] via 192.168.32.3 S 10.1.0.0/16 [1/0] via 192.168.21.1
R3
R3#show ip route static S 192.168.12.0/24 [1/0] via 192.168.32.2 S 192.168.21.0/24 [1/0] via 192.168.32.2 10.0.0.0/24 is subnetted, 2 subnets S 10.1.1.0 [10/0] via 192.168.32.2
R2とR3のルーティングテーブルには、アドミニストレイティブディスタンスが大きく設定されているスタティックルートが登録されるようになったことがわかります。そして、トレースルートでPC1-PC2間の通信経路を確認します。
PC1
PC1#traceroute 10.3.3.100 Type escape sequence to abort. Tracing the route to 10.3.3.100 1 10.1.1.1 8 msec 28 msec 20 msec 2 192.168.21.2 32 msec 40 msec 40 msec 3 192.168.32.3 52 msec 52 msec 64 msec 4 10.3.3.100 64 msec * 68 msec
PC2
PC2#traceroute 10.1.1.100 Type escape sequence to abort. Tracing the route to 10.1.1.100 1 10.3.3.3 32 msec 0 msec 16 msec 2 192.168.32.2 28 msec 20 msec 20 msec 3 192.168.21.1 56 msec 44 msec 52 msec 4 10.1.1.100 56 msec * 80 msec
トレースルートの結果から、PC間の通信はネットワークアドレスが大きい方の経路に切り替わっていることがわかります。スタティックルートでも、設定を工夫すれば障害発生時にルーティングテーブルを自動的に更新してパケットの転送経路を切り替えることができます。
IPルーティングのキホン
- ルータ ~ルーティングを行う中心的な機器~
- ルータでネットワークを分割
- レイヤ3スイッチ
- ルーティングの動作
- ルーティングテーブル
- ルーティングテーブルの作り方
- ホストルート ~/32のルート情報~
- スタティックルーティング?それともダイナミックルーティング? ~設定の考え方の違い~
- スタティックルーティングとダイナミックルーティング(RIP)の設定の比較
- スタティックルートのメリット・デメリット
- ルーティングプロトコルのメリット・デメリット
- ルート情報をアドバタイズする意味
- 宛先ネットワークまでの距離を計測 ~アドミニストレイティブディスタンスとメトリック~
- 等コストロードバランシング
- ルート集約 ~まとめてルーティングテーブルに登録しよう~
- デフォルトルート ~究極の集約ルート~
- 最長一致検索(ロンゲストマッチ) ~詳しいルート情報を優先する~
- インターネットのルート情報を見てみよう AT&T Looking Glass
- ルーティングプロトコルの分類 ~適用範囲~
- ルーティングプロトコルの分類 ~アルゴリズム~
- ルーティングプロトコルの分類 ~ネットワークアドレスの認識(クラスフルルーティングプロトコル/クラスレスルーティングプロトコル)~
- Cisco スタティックルートの設定
- ip default-network ~特定のルート情報に「*」をつける~
- スタティックルートをバックアップに ~フローティングスタティック~
- スタティックルートの設定を一歩ずつわかりやすく行う設定例[Cisco]
- Ciscoスタティックルーティングの設定例
- IPルーティング基礎演習Part1
- IPルーティング基礎演習Part2
- IPルーティング基礎演習Part3
- Windows PCのスタティックルートの設定 route addコマンド
- RIPの概要
- RIPの動作 ~RIPルート情報を定期的に送りつける~
- RIPスプリットホライズン
- RIPタイマ
- RIPルートポイズニング ~不要なルート情報を速やかに削除~
- Cisco RIPの設定と確認
- Cisco RIPの設定例
- RIPでのデフォルトルートの生成 ~スタティックルートの再配送~
- RIPでのデフォルトルートの生成 ~default-information originate~
- RIPでのデフォルトルートの生成 ~ip default-network~
- RIP 設定ミスの切り分けと修正 Part1
- RIP 設定ミスの切り分けと修正 Part2
- RIP 設定ミスの切り分けと修正 Part3
- RIP 設定ミスの切り分けと修正 Part4
- パッシブインタフェース(passive-interface) ~ルーティングプロトコルのパケット送信を止める~
- 転送経路を決定する方法 ~アドミニストレイティブディスタンス/メトリックと最長一致検索~
- デフォルトゲートウェイの詳細 ~ホストもルーティングしている~
- デフォルトゲートウェイの冗長化の概要
- Cisco HSRPの仕組み
- Cisco HSRP 仮想ルータ宛てのパケットがアクティブルータへ転送される仕組み
- Cisco HSRPトラッキング ~より柔軟にアクティブルータを切り替える~
- Cisco HSRP設定と確認
- Cisco HSRPの負荷分散
- HSRP 設定ミスの切り分けと修正 Part1
- VRRPの仕組み
- VRRPの設定と確認コマンド [Cisco]
- ルーティングテーブルのトラッキング(Cisco HSRP/VRRP)
- Cisco HSRP ルーティングテーブルのトラッキング設定例
- VRRP ルーティングテーブルのトラッキング設定例
- GLBPの仕組み
- Cisco GLBPの設定と確認
- Cisco GLBPの設定例
- HSRP/VRRP/GLBPのアドレス情報のまとめ