スプリットホライズンとは

RIPでは、RIPデータベース上のすべての最適なルート情報を定期的に送信します。しかし、このような動作では、他のルータから受信したRIPルート情報を送り返してしまうことになります。そして、RIPはタイマに基づいた定期的なルート情報の送信を行うので、コンバージェンスが遅くなります。そのため、ネットワーク構成の変化を迅速にルーティングテーブルに反映できないことがあります。そうした状況で受信したルート情報を送り返してしまうと、ネットワークの障害時に、ルーティングテーブルに正しいネットワーク構成を反映できずに、ループが発生する可能性があります。ループを防止するための一つの対策がスプリットホライズンです。スプリットホライズンはRIPルートを送信するときのルールです。 スプリットホライズンによって、RIPルートを送信するときに以下のようにフィルタをかけます。

「ルート情報の出力インタフェースにはそのルート情報を送信しない」

RIPデータベースに登録されるRIPルート情報には、メトリックやネクストホップだけではなく出力インタフェースもあります。出力インタフェースの先には、そのルート情報を送信しないようにすることで、受信したルート情報を送り返すことはなくなります。その結果、ループが発生することを防止できます。

スプリットホライズンは「受信したルート情報を送り返さない」と説明されていることが多いです。でも、それだけでは不十分です。ルータの直接接続のルート情報についてもスプリットホライズンのフィルタがかかっています。
RIPだけでなくディスタンスベクタ系のEIGRPでも、デフォルトでルート情報の送信にはスプリットホライズンのフィルタがかかっています。

スプリットホライズンの例

以下の「図 RIPルートのやり取り」のR1のRIPデータベースには、全部で5つのRIPルートが登録されています。

図 RIPルートのやり取り その3
図 RIPルートのやり取り
  • 192.168.1.0/24
    インタフェース2の直接接続のルート情報。出力インタフェースはインタフェース2
  • 192.168.2.0/24
    R2から受信したルート情報。出力インタフェースはインタフェース1
  • 192.168.3.0/24
    R2から受信したルート情報。出力インタフェースはインタフェース1
  • 192.168.12.0/24
    インタフェース1の直接接続のルート情報。出力インタフェースはインタフェース1
  • 192.168.23.0/24
    R2から受信したルート情報。出力インタフェースはインタフェース1

スプリットホライズンによって、R1のインタフェース1から送信するRIPルート情報は192.168.1.0/24のみとなります。その他のルート情報はすべて出力インタフェースがインタフェース1なので、インタフェース1からは送信しません。

また、インタフェース2から送信するRIPルート情報は、192.168.2.0/24、192.168.3.0/24、192.168.12.0/24、192.168.23.0/24です。

図 スプリットホライズンの例
図 スプリットホライズンの例

フレームリレーのハブ&スポークトポロジなど一部のネットワーク構成で、スプリットホライズンを無効化しなければいけないこともありますが、ループの防止のために基本的にはスプリットホライズンは有効になっていると考えてください。

現在では、フレームリレーのハブ&スポーク構成を利用することはまずありません。スプリットホライズンを無効化するようなケースを考慮する必要はほとんどありません。

関連記事

IPルーティングのキホン