ルーティング

【図解】再帰的ルーティング(リカーシブスタティック)とその実装例

再帰的ルーティングとは

ルーティングの NextHop アドレスは基本的には自身の Connected ルートのセグメントの中から指定します。

ただし、NextHop を異なるセグメントにしても正しくルーティングされるケースがあります。

しかも、存在しない IP アドレスを NextHop にしていても正しくルーティングされることさえあります

これは、再帰的ルーティングが動作しているためです。

例えば、以下の構成の R1 において、192.168.10.0/24 への NextHop として 172.16.12.2 を指定しなければならないところを、172.16.23.1 としてしまったとします。

この場合、172.16.23.1 は自身の Connected には無い (そもそも存在すらしない) ですが、この NW アドレスへの Static ルートを書いていますので、それを参照します。

つまり、192.168.10.0/24 への NextHop は 172.16.23.1 、172.16.23.0/24 への NextHop は 172.16.12.2 と再帰的にルーティングテーブルを探し、結果的に以下を得ます。

192.168.10.0/24 への NextHop は 172.16.12.2

このようにルーティングテーブルを再帰的に探すルータの動作を再帰的ルーティング と呼びます。

再帰的ルーティングの使い道

再帰的ルーティングじゃないとできない実装はおそらくありませんが、「使うとしたらこのように使える」というものを 1 つ示します。

これは運用負荷を低減するテクニックですが、例えば下図の NW 構成で、SW1 が障害時には SW2 へルートを切り替えるケースを考えます。

この場合、サーバファームのセグメントが複数にわたる場合、通常は全てのセグメントについてルーティング変更が必要になります

しかし、図のようにサーバファームへのルーティングを SW3 の IP アドレスにしておけば、障害時に SW3 へのルートを 1 つ切り替えれば、サーバファームの全てのルートを切り替えることができます

例では 3 セグメントですが、これが 20~30 セグメントとかになると、便利になるでしょう。

コメント

タイトルとURLをコピーしました