スタティックルートとは

スタティックルートは、管理者がルータに対して手動で設定する経路情報です。設定内容自体は、ネットワークの状況が変化しても自動的には更新されません。一方、出力インターフェイスの状態やネクストホップIPアドレスをルーティングテーブル上で解決できるかどうかによっては、ルーティングテーブルに掲載される経路は変化します。動的ルーティングプロトコルのような追加の処理負荷が無く、小規模なネットワークや、特定用途の固定経路には広く使われます。前の記事「ルーティングテーブルの構成要素と転送先決定の仕組み」で説明したとおり、スタティックルートのADの既定値は1です。

IPv4のスタティックルート

デフォルトルート

すべての宛先に一致する、最も範囲の広いルートです。ルーティングテーブル内に、宛先に一致する、より具体的な経路が無い場合の受け皿として使われます。

Router(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1

ネットワークルート

特定のネットワーク(サブネット)宛の経路です。ネクストホップのIPアドレス、または出力インターフェイスのいずれかを指定して設定します。

Router(config)# ip route 192.168.2.0 255.255.255.0 192.168.1.2

出力インターフェイスを指定する場合は、次のように書きます。

Router(config)# ip route 192.168.2.0 255.255.255.0 GigabitEthernet0/1

出力インターフェイスとネクストホップのIPアドレスの両方を指定する、完全指定スタティックルートも設定できます。

Router(config)# ip route 192.168.2.0 255.255.255.0 GigabitEthernet0/1 192.168.1.2

出力インターフェイス指定の書き方は、専用線のようなポイントツーポイント(P2P)リンクでは問題なく機能しますが、イーサネットのようなマルチアクセス(ブロードキャスト)ネットワークでは、ルータがそのネットワーク宛のパケットごとに宛先IPアドレスをARP要求の対象とします。これは意図しないARP要求の増加や、プロキシARPへの依存につながる可能性があります出力インターフェイスのみを指定すると、ルータはそのネットワーク宛のすべてのパケットに対して、宛先IPアドレスをARP要求の対象としてしまいます。マルチアクセスネットワークに複数の機器が存在する場合、これは意図しないARP要求の急増や、プロキシARPによる誤った転送につながる可能性があります。[1]。そのため、イーサネットセグメントでは、ネクストホップのIPアドレスを指定する方法、または出力インターフェイスとネクストホップの両方を指定する完全指定スタティックルートが推奨されます。

ホストルート

特定の1台の機器(ホスト)だけに一致する、/32のサブネットマスクを持つ経路です。

Router(config)# ip route 192.168.2.10 255.255.255.255 192.168.1.2

フローティングスタティック

通常は動的ルーティングプロトコル(例:OSPF、AD=110)による経路を優先させつつ、その経路が使えなくなった場合のバックアップ経路として、あえてADの既定値(1)より大きい値を明示的に指定したスタティックルートです。

Router(config)# ip route 192.168.2.0 255.255.255.0 192.168.3.1 150

このルートのネクストホップが解決可能であれば、AD(150)はOSPFのAD(110)より大きいため、OSPFの経路が有効な間はルーティングテーブルに反映されず、OSPFの経路が失われたときにバックアップ経路として有効になります。

設定の確認

Router# show ip route static

S*    0.0.0.0/0 [1/0] via 203.0.113.1
S     192.168.2.0/24 [1/0] via 192.168.1.2
S     192.168.2.10/32 [1/0] via 192.168.1.2

フローティングスタティックルートは、そのバックアップ元の経路(OSPF等)が有効な間は、この一覧に表示されない(ルーティングテーブルに反映されない)点に注意してください。

IPv6のスタティックルート

IPv6でスタティックルートを使うには、あらかじめグローバルコンフィギュレーションモードでipv6 unicast-routingコマンドを実行し、IPv6ルーティングを有効にしておく必要があります。

Router(config)# ipv6 unicast-routing

デフォルトルート

Router(config)# ipv6 route ::/0 2001:db8:1::1

ネットワークルート

Router(config)# ipv6 route 2001:db8:2::/64 2001:db8:1::2

IPv4と同様に、ネクストホップのIPv6アドレスの代わりに、出力インターフェイスを指定することもできます。

Router(config)# ipv6 route 2001:db8:2::/64 GigabitEthernet0/1

ネクストホップにリンクローカルアドレスを使用する場合は、出力インターフェイスも指定する必要があります。

Router(config)# ipv6 route 2001:db8:2::/64 GigabitEthernet0/1 fe80::1

こちらもIPv4の場合と同じ理由で、出力インターフェイス指定はポイントツーポイントリンクでの利用が基本です。イーサネット等のマルチアクセスネットワークでは、宛先ごとに近隣探索(Neighbor Discovery)が行われる可能性があるため、ネクストホップのIPv6アドレスを指定する方法が一般的に推奨されます。

ホストルート

IPv6のホストルートは、/128のプレフィックス長を使います。

Router(config)# ipv6 route 2001:db8:2::10/128 2001:db8:1::2

フローティングスタティック

IPv4と同様に、ネクストホップが解決可能であることを前提として、コマンドの末尾にADの値を指定することで、フローティングスタティックルートを構成できます。

Router(config)# ipv6 route 2001:db8:2::/64 2001:db8:3::1 150

設定の確認

Router# show ipv6 route static

S   ::/0 [1/0]
     via 2001:db8:1::1
S   2001:db8:2::/64 [1/0]
     via 2001:db8:1::2

補足

  1. 出力インターフェイスのみを指定すると、ルータはそのネットワーク宛のすべてのパケットに対して、宛先IPアドレスをARP要求の対象としてしまいます。マルチアクセスネットワークに複数の機器が存在する場合、これは意図しないARP要求の急増や、プロキシARPによる誤った転送につながる可能性があります。 ↩