はじめに
ルーターが宛先までパケットを転送するには、「次にどのルーターへ送るか」を判断するための経路情報が必要です。経路を手動で設定する方法もありますが、ルーター同士で情報を交換し、自動的に更新する方法もあります。
RIP(Routing Information Protocol)は、そのための代表的なルーティングプロトコルの一つです。隣接するルーターと経路情報を交換し、経路をルーター間で受け渡すごとに増える「ホップ数」を基準に経路を選びます。この記事では、RIPが経路を選び、ネットワークの変化へ対応する仕組みを解説します。
この記事で分かること
- RIPがどのようなルーティングプロトコルか
- ホップ数を使って経路を選ぶ仕組み
- 定期更新と経路変化時の収束
- ルーティングループを抑える仕組み
- RIPv1とRIPv2の主な違い
RIPとは
RIPは、隣接するルーター同士で経路情報を交換する距離ベクトル型のルーティングプロトコルです。比較的単純な仕組みで、ルーター同士が経路情報を自動更新できます。
距離ベクトル型では、各ルーターがネットワーク全体の構成を直接把握するのではなく、隣接ルーターから「どの宛先へ、どれくらいの距離で到達できるか」という情報を受け取ります。RIPでは、その距離を主にホップ数で表します。
静的ルーティングと動的ルーティングの違いは、静的ルーティングと動的ルーティングの違いで整理しています。ルーティングテーブルから経路を選ぶ仕組みは、ルーティングテーブル(経路制御表)を参照してください。
ホップ数で経路を選ぶ仕組み
RIPのホップ数は、宛先までの距離を表すメトリックです。一般的な構成では、経路情報を隣接ルーターから受け取って次の経路として評価するたびに1ずつ増えます。RIPは複数の経路を知っている場合、基本的にホップ数が小さい経路を優先します。
例えば、同じ宛先へ「2台のルーターを通る経路」と「3台を通る経路」があれば、RIPは2ホップの経路を選びます。回線速度や遅延ではなく、通過するルーター数という単純な指標で判断するのが特徴です。
| メトリック | RIPでの意味 |
|---|---|
| 1~15 | 到達可能な経路 |
| 16 | 到達不能 |
RIPでは16を「無限大」とみなし、到達不能な経路として扱います。そのため、有効な経路として扱える最大ホップ数は15です。
経路情報の更新と収束
RIPは通常30秒ごとに経路情報を隣接ルーターへ送ります。ルーターは受け取った情報で自分の経路表を更新し、その結果をさらに隣接ルーターへ伝えます。
ある経路の更新を受信できない状態が続き、最後の更新から180秒経過すると、その経路は期限切れとして扱われます。一方、経路のメトリックが変化した場合は、次の30秒周期を待たずにTriggered Update(トリガードアップデート)を送る仕組みがあります。
ネットワーク構成の変化後、各ルーターの経路情報が新しい状態へ揃うことを「収束」と呼びます。RIPは隣接ルーターから順に情報が伝わるため、障害直後には古い経路情報が残り、収束まで時間がかかることがあります。
ルーティングループを抑える仕組み
距離ベクトル型では、障害後にルーター同士が古い経路情報を教え合い、存在しない経路のホップ数を増やし続けることがあります。これが「無限カウント」です。RIPでは16まで増えた時点で到達不能として扱います。
収束を早めるため、RIPでは次の仕組みを組み合わせます。
| 仕組み | 役割 |
|---|---|
| Split Horizon | 学習した経路を原則として同じ方向へ広告しない |
| Poisoned Reverse | 学習元へ戻す経路をメトリック16として広告する |
| Triggered Update | 経路変化時に定期更新を待たず更新を送る |
Poisoned Reverseは、単に「切断した経路を16で知らせる機能」ではありません。学習元へ送り返す経路を16として広告し、特に2台のルーター間で起こるループを防ぎやすくします。ただし、複数のルーターが関係するループを常に即時解消できるわけではありません。
RIPv1とRIPv2の違い
RIPv1とRIPv2は、どちらも距離ベクトル型でホップ数を使うという基本は共通しています。RIPv2では、RIPv1で不足していた経路情報が追加されています。
| 項目 | RIPv1 | RIPv2 |
|---|---|---|
| サブネットマスク | 経路エントリに含まない | 経路エントリに含む |
| VLSM・CIDR | 経路情報だけでは扱いに制約がある | サブネットマスクを広告できる |
| 定期更新 | ブロードキャスト | 対応ネットワークでは224.0.0.9へのマルチキャスト |
| 追加情報 | 基本的な宛先とメトリックが中心 | Route Tag、Next Hopなどを追加 |
| 認証 | 基本仕様に専用機構なし | 認証フィールドを持つ |
特に重要なのは、RIPv2ではサブネットマスクを経路情報に含められる点です。これにより、VLSMやCIDRを利用した経路を扱えます。
RIPv2で扱えるVLSMとCIDRの違いは、CIDRとVLSMの違いとは?プレフィックス長とサブネット分割を解説で整理しています。どちらもプレフィックス長を使いますが、主な目的と利用場面が異なります。
RIPv2には認証の仕組みも追加されています。ただし、初期の平文パスワード認証だけで十分な安全性が得られるわけではなく、後に暗号学的な認証方式も定義されています。
RIPの特徴と限界
RIPは仕組みが比較的単純で、小規模なネットワークでは設定や管理の負担を抑えやすい特徴があります。
一方、最大15ホップという制限があり、ネットワーク構成の変化から収束まで時間がかかる場合があります。また、経路選択は主にホップ数を基準とするため、回線速度や帯域を直接評価して経路を選ぶわけではありません。
そのため、複雑・大規模なネットワークでは、リンク状態を共有して経路を計算するOSPFなど別の方式が利用されます。違いを学ぶ場合は、OSPFとは?リンク状態型ルーティングの仕組みとエリア設計を分かりやすく解説を参照してください。
まとめ
RIPは、隣接ルーターと経路情報を交換し、ホップ数を基準に経路を選ぶ距離ベクトル型のルーティングプロトコルです。
- ホップ数が小さい経路を基本的に優先する
- 1~15を到達可能、16を到達不能として扱う
- 通常30秒ごとに経路情報を更新する
- Split Horizon、Poisoned Reverse、Triggered Updateなどで収束を助ける
- RIPv2ではサブネットマスク、マルチキャスト、追加情報、認証などが拡張された
RIPを単なる「30秒ごとに経路表を送るプロトコル」と覚えるのではなく、隣接ルーターの情報からホップ数で経路を選び、変化後に正しい状態へ収束していく仕組みとして理解することが重要です。