フローティングスタティックルートの説明と設定方法

フローティングスタティックルートの説明と設定方法

フローティングスタティックルートについての概要とCisco機器での設定方法を説明します。経路制御(ルーティング)に関する説明は下記のページを参照してください。

目次

フローティングスタティックルートとは

概要説明

フローティングス タティックルートとは、AD値を変更することにより、障害時などの迂回経路としてスタティックルートを利用する技術です。障害時にスタティックルートがルーティングテーブル上に浮かび上がる(Floating)ため、フローティングスタティックルートと呼ばれています。

通常、スタティックルートのAD値は「1」のため、他の経路情報よりも優先されます。AD値を他の経路情報よりも大きい値に設定することで、正常時はルーティングテーブルにはインストールされず、他の経路情報が無くなった時のみ利用されるようになります。

フローティングスタティックルートの概要

ルーティングの優先ルール(AD値)の詳細については、下記を参照してください。

フローティングスタティックルートの用途

フローティングスタティックルートは、上述のように障害時の迂回経路(バックアップルート)として利用されるのが一般的です。ダイナミックルーティングを利用すれば自動切り替わりは可能ですが、以下のような場合にフローティングスタティックルートが利用されます。

  • 小規模なネットワークで、ダイナミックルーティングを利用せずに切り替えたい場合
  • WAN回線が従量課金制で、ダイナミックルーティングを利用できない場合 ※ISDN回線など

フローティングスタティックルートの基本的な設定方法

Cisco機器でのフローティングスタティックルートの設定方法を説明します。

設定方法

フローティングスタティックルートは、通常のスタティックルートにAD値を付与して設定します。

ip route [宛先アドレス] [宛先サブネットマスク] [転送先アドレス] [AD値]
  • 宛先アドレス 〜 宛先となるIPアドレス(IPセグメント)を指定
  • 宛先サブネットマスク 〜 宛先IPアドレス(IPセグメント)のサブネットマスクを指定
  • 転送先アドレス 〜 転送先となる機器のIPアドレスを指定
  • AD値 〜 1-255の間で指定 ※指定しない場合のデフォルト値は”1″

下記のネットワークを例に、ルーター1にフローティングスタティックルートを設定します。

ネットワーク構成(基本設定)
ルーター1の設定

サーバー(172.16.1.1)宛てのスタティックルートを下記の通り設定します。

通常のスタティックルート:ルーター2をネクストホップに指定

ip route 172.16.1.1 255.255.255.255 10.1.1.2

フローティングスタティックルート:ルーター3をネクストホップに指定

ip route 172.16.1.1 255.255.255.255 10.2.2.3 200

設定確認

ルーター1の設定を確認します。

ルーター1の設定確認

ルーター1のコンフィグに設定されていることを確認します。

show run | inc ip route
Router1#show run | inc ip route
ip route 172.16.1.1 255.255.255.255 10.1.1.2
ip route 172.16.1.1 255.255.255.255 10.2.2.3 200

コンフィグ 上は、2つのスタティックルートが設定されています。

ルーター1のルーティングテーブルを確認します。

show ip route
Router1#show ip route

Gateway of last resort is not set

      10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks
C        10.1.1.0/24 is directly connected, GigabitEthernet0/0
L        10.1.1.1/32 is directly connected, GigabitEthernet0/0
C        10.2.2.0/24 is directly connected, GigabitEthernet0/1
L        10.2.2.1/32 is directly connected, GigabitEthernet0/1
      172.16.0.0/32 is subnetted, 1 subnets
S        172.16.1.1 [1/0] via 10.1.1.2

ルーティングテーブル上には、ネクストホップがルーター2(10.1.1.2)の経路のみインストールされていることが分かります。

動作確認

ルーター2をネクストホップとするスタティックルートを削除すると、ルーター3をネクストホップとするフローティングスタティックルートが有効になることを確認します。

フローティングスタティックルートの動作確認

通常は、ルーター2に障害が発生し、ルーター1のリンクがダウンすると通常のスタティックルートがルーティングテーブルから消えます。ここでは動作確認のため、ルーター1の設定を削除しています。

ルーター2をネクストホップとするスタティックルートを削除

no ip route 172.16.1.1 255.255.255.255 10.1.1.2

ルーティングテーブルを確認

Router1#show ip route

Gateway of last resort is not set

      10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks
C        10.1.1.0/24 is directly connected, GigabitEthernet0/0
L        10.1.1.1/32 is directly connected, GigabitEthernet0/0
C        10.2.2.0/24 is directly connected, GigabitEthernet0/1
L        10.2.2.1/32 is directly connected, GigabitEthernet0/1
      172.16.0.0/32 is subnetted, 1 subnets
S        172.16.1.1 [200/0] via 10.2.2.3

ネクストホップがルーター3(10.2.2.3)の経路がインストールされたことが分かります。

設定〜動作確認を動画で確認 ※クリックで再生

デバッグログの確認

スタティックルーティングが有効・無効になる様子は下記のデバッグを実行すると分かります。

debug ip routing static detail
debug ip routing static db

デバッグコマンドを実行すると、機器の負荷が高くなる可能性があります。そのため、本番環境では基本的に実行しないように注意しましょう。

デバッグコマンドを有効にした状態で、設定→動作確認を実行します。

通常のスタティックルートを設定

Router1(config)#ip route 172.16.1.1 255.255.255.255 10.1.1.2
〜〜抜粋〜〜
11:29:09.435: IP-ST-DB(default):  ip_addstatic_route(), succeed
11:29:09.435:  172.16.1.1/32 via 10.1.1.2 ,tag 0,fg 0x40020004,dis 1,name ,lfg 0x0,own M
11:29:09.438: IP-ST(default):  172.16.1.1/32 [1], 10.1.1.2 Path = 1 2 3 7, add succeed, active state
  • ip_addstatic_route(), succeed:スタティックルートの追加が成功
  • active state:ルートが有効状態

フローティングスタティックルートを設定

Router1(config)#ip route 172.16.1.1 255.255.255.255 10.2.2.3 200
〜〜抜粋〜〜
11:29:16.168: IP-ST-DB(default):  ip_addstatic_route(), succeed
11:29:16.168:  172.16.1.1/32 via 10.2.2.3 ,tag 0,fg 0x40020004,dis 200,name ,lfg 0x0,own M
11:29:16.170: IP-ST(default):  172.16.1.1/32 [200], 10.2.2.3 Path = 1 2 3 7, no change, not active state
  • ip_addstatic_route(), succeed:スタティックルートの追加が成功
  • not active state:ルートが無効状態

通常のスタティックルートを削除→フローティングスタティックルート有効

Router1(config)#no ip route 172.16.1.1 255.255.255.255 10.1.1.2
〜〜抜粋〜〜
11:29:25.869: IP-ST-DB(default):  ip_remove_static_no_free_sre() sre: 0xFD77798
11:29:25.870:  172.16.1.1/32 via 10.1.1.2 ,tag 0,fg 0x40020004,dis 1,name ,lfg 0x402,own M
11:29:25.885: IP-ST(default): callbackup route,  172.16.1.1/32
11:29:25.885: IP-ST(default): updating same distance on 172.16.1.1/32
11:29:25.886: IP-ST(default):  172.16.1.1/32 [200], 10.2.2.3 Path = 1 2 3 7, add succeed, active state
  • ip_remove_static:通常のスタティックルート削除
  • 172.16.1.1/32 [200], 10.2.2.3 ・・・ active state:ルーター3向けのルートを有効状態に変更

デバッグログを動画で確認 ※クリックで再生

フローティングスタティックルートの具体的な利用例

フローティングスタティックルートは、ダイナミックルーティングのバックアップルートとして利用されることが多いです。ここでは、冗長化されたWAN構成で、BGPのバックアップルートとして、フローティングスタティックルートを利用する例を紹介します。

ネットワーク構成

下記のネットワークを例に、ルーター1にフローティングスタティックルートを設定します。

ネットワーク構成(具体的設定)

各ルーターの設定

各ルーターの設定は下記の通りです。

ルーター1の設定
interface GigabitEthernet0/0
 ip address 192.168.1.253 255.255.255.0
 standby 254 ip 192.168.1.254
 standby 254 priority 105
 standby 254 preempt

interface GigabitEthernet0/1
 ip address 10.1.1.1 255.255.255.252

router bgp 64512
 timers bgp 15 45
 redistribute connected
 neighbor 10.1.1.2 remote-as 64513

ip route 172.16.1.0 255.255.255.0 192.168.1.252 200

「宛先:172.16.1.0/24」に対して、フローティングスタティックルートを設定しています。ネクストホップは、ルーター2のLANアドレスを指定します。

ルーター2の設定
interface GigabitEthernet0/0
 ip address 192.168.1.252 255.255.255.0
 standby 254 ip 192.168.1.254
 standby 254 preempt

interface GigabitEthernet0/1
 ip address 10.2.2.1 255.255.255.252

ip route 0.0.0.0 0.0.0.0 10.2.2.2
ルーター3の設定
interface GigabitEthernet0/0
 ip address 172.16.1.253 255.255.255.0
 standby 254 ip 172.16.1.254
 standby 254 priority 105
 standby 254 preempt

interface GigabitEthernet0/1
 ip address 10.1.1.2 255.255.255.252

router bgp 64513
 timers bgp 15 45
 redistribute connected
 neighbor 10.1.1.1 remote-as 64512
ルーター4の設定
interface GigabitEthernet0/0
 ip address 172.16.1.252 255.255.255.0
 standby 254 ip 172.16.1.254
 standby 254 preempt

interface GigabitEthernet0/1
 ip address 10.2.2.2 255.255.255.252

ip route 0.0.0.0 0.0.0.0 10.2.2.1

PC→サーバーへの通信経路

PCからサーバーへの通信経路は下記の通りです。

正常時

正常時は、ルーター1→ルーター3を経由して通信を行います。

正常時の通信経路

ルーター3の障害時

ルーター3から「172.16.1.0/24」への経路情報が受け取れなくなると、フローティングスタティックルートがルーティングテーブルにインストールされ、下記の通信経路となります。※ルーター1→ルーター2→ルーター4を経由します。

障害時の通信経路

動作確認

ルーター3に障害が発生した場合の動作を確認します。ここでは、簡易的に障害状態とするため、ルーター3のWAN/LANインターフェースをシャットダウンします。

※以下のデバッグを有効にしています。

debug ip routing static detail
debug ip routing static db
STEP
正常時の経路確認

「ルーター1のルーティングテーブル」と「PCからのTraceroute」の結果を確認します。

ルーター1のルーティングテーブル確認

ルーター1のルーティングテーブルを確認します。

Router1#show ip route

Gateway of last resort is not set

      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.1.1.0/30 is directly connected, GigabitEthernet0/1
L        10.1.1.1/32 is directly connected, GigabitEthernet0/1
      172.16.0.0/24 is subnetted, 1 subnets
B        172.16.1.0 [20/0] via 10.1.1.2, 00:02:05
      192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.168.1.0/24 is directly connected, GigabitEthernet0/0
L        192.168.1.253/32 is directly connected, GigabitEthernet0/0

172.16.1.0/24宛ての経路はBGPで受信しており、ネクストホップはルーター3(10.1.1.2)となっています。

PCからサーバーへの経路確認

PCからサーバーへTracerouteを実施して、通信経路を確認します。

PC:~$ traceroute -n 172.16.1.1
traceroute to 172.16.1.1 (172.16.1.1), 30 hops max, 46 byte packets
 1  192.168.1.253  11.605 ms  10.521 ms  14.920 ms
 2  10.1.1.2  20.455 ms  11.146 ms  14.231 ms
 3  172.16.1.1  15.741 ms  43.720 ms  35.791 ms

ルーター1(192.168.1.253)→ルーター3(10.1.1.2)を経由して、サーバーへ通信していることが分かります。

STEP
ルーター3の障害発生
ルーター3のインターフェースシャットダウン

ルーター3のWAN/LANインターフェースをシャットダウンします。

int range Gi0/0 - 1
 shutdown
Router3(config)#int range Gi0/0 - 1
Router3(config-if-range)#shut
Feb 12 2023 08:36:32.202: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0, changed state to down
Feb 12 2023 08:36:32.246: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/1, changed state to down
STEP
デバッグログ確認
ルーター1のデバッグログ確認

ルーター1のデバッグログを確認します。

Router1#
Feb 12 2023 08:37:13.865: %BGP-3-NOTIFICATION: sent to neighbor 10.1.1.2 4/0 (hold time expired) 0 bytes
Feb 12 2023 08:37:13.866: %BGP-5-NBR_RESET: Neighbor 10.1.1.2 reset (BGP Notification sent)
Feb 12 2023 08:37:13.867: %BGP-5-ADJCHANGE: neighbor 10.1.1.2 Down BGP Notification sent
Feb 12 2023 08:37:13.867: %BGP_SESSION-5-ADJCHANGE: neighbor 10.1.1.2 IPv4 Unicast topology base removed from session  BGP Notification sent

ルーター3で障害が発生してから約45秒後(BGPのHoldタイマーの値)、BGPネイバーが切断されていることが分かります。

Feb 12 2023 08:37:13.868: IP-ST(default): callbackup route,  172.16.1.0/24
Feb 12 2023 08:37:13.868: IP-ST(default): updating same distance on 172.16.1.0/24
Feb 12 2023 08:37:13.868: IP-ST(default):  172.16.1.0/24 [200], 192.168.1.252 Path = 1 2 3 7, add succeed, active state

ルーター2(192.168.1.252)をネクストホップとするフローティングスタティックルートが、”active state”になったことが分かります。

STEP
障害時の経路確認

「ルーター1のルーティングテーブル」と「PCからのTraceroute」の結果を確認します。

ルーター1のルーティングテーブル確認

ルーター1のルーティングテーブルを確認します。

Router1#show ip route

Gateway of last resort is not set

      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.1.1.0/30 is directly connected, GigabitEthernet0/1
L        10.1.1.1/32 is directly connected, GigabitEthernet0/1
      172.16.0.0/24 is subnetted, 1 subnets
S        172.16.1.0 [200/0] via 192.168.1.252
      192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.168.1.0/24 is directly connected, GigabitEthernet0/0
L        192.168.1.253/32 is directly connected, GigabitEthernet0/0

172.16.1.0/24宛ての経路がスタティックルートに変わり、ネクストホップはルーター2(192.168.1.252)となっていることが分かります。

PCからサーバーへの経路確認

PCからサーバーへTracerouteを実施して、通信経路を確認します。

PC:~$ traceroute -n 172.16.1.1
traceroute to 172.16.1.1 (172.16.1.1), 30 hops max, 46 byte packets
 1  192.168.1.253  7.770 ms  2.982 ms  4.470 ms
 2  192.168.1.252  8.269 ms  12.419 ms  9.557 ms
 3  10.2.2.2  13.596 ms  19.601 ms  31.234 ms
 4  172.16.1.1  25.456 ms  13.377 ms  10.024 ms

ルーター1(192.168.1.253)→ルーター2(192.168.1.252)→ルーター4(10.2.2.2)を経由して、サーバーへ通信していることが分かります。

フローティングスタティックルートの注意点

AD値の設計を慎重に行う

フローティングスタティックルートは、AD値で経路情報の優先度を決定します。そのため、AD値の設計は他のルーティングプロトコルよりも大きくなるように設計する必要があります。AD値の値を誤ると、意図した経路切り替わりとならない可能性があるため、慎重に設計を行う必要があります。

各ルーティングプロトコルのAD値は下記を参照してください。

双方向の通信経路を確保する

フローティングスタティックルートで経路を制御する場合、双方向での通信経路が異経路になることがあります。通信経路が異経路になると、ファイアウォールやSLBなどのセッションを管理する機器が間にいる場合に、通信が不可となる可能性があるため、ネットワーク全体の冗長性を考慮した設計が必要です。

異経路通信

多用すると設計が複雑になる

フローティングスタティックルートを多数利用すると、ネットワークの設計が複雑になります。管理者でもどのような冗長経路となっているのかが分からなくなり、障害対応が遅くなるなど、管理しきれないネットワーク環境となってしまいます。レイヤ3ネットワークについては、可能な限り「HSRP」と「ダイナミックルーティング」などの技術で冗長化するべきです。

以上で、フローティングスタティックルートの説明と設定方法の解説は完了です!

  • URLをコピーしました!
  • URLをコピーしました!
目次