Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

RIP および RIPng の概要

RIP の概要

RIP は、距離ベクトル アルゴリズムを使用して宛先への最適なルートを決定する IGP(内部ゲートウェイ プロトコル)であり、メトリックとしてホップカウントを使用します。

RIP ネットワークでは、各ルーターの転送テーブルは、ルーティング テーブル情報のフラッディングを通じてノード間で分散されます。トポロジーの変更はネットワーク全体にフラッディングするため、すべてのノードが同じ宛先リストを維持します。パケットは、ネットワーク内の各ノードで行われるパスコスト計算に基づいて、これらの宛先にルーティングされます。

メモ:

一般に、 RIP という用語は RIP バージョン 1 と RIP バージョン 2 を指します。

このトピックには、以下のセクションが含まれています。

ディスタンスベクタールーティングプロトコル

ディスタンスベクトルルーティングプロトコルは、通常、宛先へのホップ数として表される距離ベクトルを含むルーティング情報を送信します。この情報は、プロトコル対応インターフェイスすべて(RIP の場合は 30 秒ごとに)一定の間隔でフラッディングされ、各ノードのローカル トポロジ データベースに格納されたネットワーク マップが作成されます。 図 1 は、距離ベクトル ルーティングの仕組みを示しています。

図 1:距離ベクトル プロトコル Distance-Vector Protocol

図 1 では、ルーター A と B は隣接するインターフェイスで RIP を有効にしています。ルーター A には、RIP ネイバーであるルーター C、D、E があり、それぞれ 1、2、および 3 ホップ離れています。ルーターBには、RIPネイバールーターX、Y、およびZ(それぞれ1、2、および3ホップ離れている)があります。30 秒ごとに、各ルーターはルーティング テーブルの情報全体を、RIP 対応のすべてのインターフェイスにフラッディングします。この場合、フラッディングはルーティングテーブル情報をRIPリンクを介して交換します。

ルーターAがルーターBからルーティング情報を受信すると、1をホップ数に追加して新しいホップ数を決定します。例えば、ルーターXのホップ数は1ですが、ルーターAがルートをXにインポートすると、新しいホップ数は2になります。インポートされたルートには、ルートが学習された場所に関する情報も含まれるため、元のルートは、ホップ数2のルーターBを介してルーターXへのルートとしてインポートされます。

同じホストへの複数のルートを受信すると、RIP はディスタンス ベクトル アルゴリズムを使用して、どのパスを転送テーブルにインポートするかを決定します。ホップ数が最も小さいルートがインポートされます。同じホップ数のルートが複数ある場合、すべてが転送テーブルにインポートされ、トラフィックはラウンドロビン方式でパスに沿って送信されます。

RIP プロトコルの概要

RIP IGP は、Bellman-Ford( 距離ベクトル)アルゴリズムを使用して宛先への最適なルートを決定します。RIP はメトリックとしてホップカウントを使用します。RIP では、ホストとルーターは IP ベースのネットワークを介してルート計算の情報を交換できます。RIP は、適度なサイズの比較的均質なネットワークで IGP として使用することを目的としています。

Junos® オペレーティングシステム(Junos OS)は、RIP バージョン 1 および 2 をサポートしています。

メモ:

RIP はマルチポイント インターフェイスではサポートされていません。

RIP バージョン 1 パケットには、ネットワークを介したパケットのルーティングに必要な最小限の情報が含まれています。ただし、RIP のこのバージョンは、認証またはサブネット化をサポートしていません。

RIP は、ユーザー データグラム プロトコル(UDP)ポート 520 を使用します。

RIP には次のアーキテクチャ上の制限があります。

  • 最長ネットワーク パスは 15 ホップを超えることはできません(各ネットワーク、またはホップのコストが 1 であると仮定)。

  • RIP は、特定の異常な状況を解決するために無限にカウントできるかどうかに依存します。ネットワークが数百台のルーターで構成されている場合、ルーティング ループが形成されると、ネクストホップの解決に必要な時間とネットワーク帯域幅が大幅に増える可能性があります。

  • RIPは、ルートを選択するために固定メトリックのみを使用します。他の IGP は、測定された遅延、信頼性、負荷などの追加パラメータを使用します。

RIP パケット

RIP パケットには、以下のフィールドが含まれています。

  • コマンド—パケットがリクエストメッセージか応答メッセージかを示します。リクエストメッセージは、ルーターのルーティングテーブルの情報を求めます。応答メッセージは定期的に送信され、リクエストメッセージを受信した場合にも送信されます。定期応答メッセージは 、更新メッセージと呼ばれます。アップデートメッセージには、コマンドとバージョンのフィールドと25の宛先(デフォルト)が含まれており、それぞれに宛先IPアドレスとその宛先に到達するためのメトリックが含まれています。

    メモ:

    Junos OS リリース 11.1 以降、RIP デマンド回線をサポートするために、追加で 3 つのコマンド フィールド タイプを使用できます。RIP 需要回線のインターフェイスを設定する場合、コマンド フィールドは、パケットが更新要求、更新応答、または確認メッセージの更新かどうかを示します。ネイバー インターフェイスは、定期的ではなくオンデマンドで更新を送信します。これらのコマンド フィールド タイプは、RIP 需要回線用に設定されたインターフェイスでのみ有効です。詳細については、 RIP 需要回線の概要を参照してください。

  • バージョン番号 — 送信元ルーターが実行されている RIP のバージョン。

  • アドレスファミリー識別子—送信元ルーターが使用するアドレスファミリー。ファミリーは常に IP です。

  • アドレス —パケットに含まれる IP アドレス。

  • メトリック — アドレスに対してアドバタイズされたメトリックの値。

  • マスク — IP アドレスに関連付けられたマスク(RIP バージョン 2 のみ)。

  • ネクストホップ - ネクストホップ ルーターの IP アドレス(RIP バージョン 2 のみ)。

ルーティング情報は、RIP リクエストと RIP 応答パケットによって RIP ネットワークで交換されます。起動したばかりのルーターは、RIP 対応のすべてのインターフェイスで RIP リクエストをブロードキャストできます。これらのリンクで RIP を実行するすべてのルーターは要求を受信し、RIP 応答パケットをルーターに即座に送信して応答します。応答パケットには、ネットワーク トポロジ マップのローカル コピーを構築するために必要なルーティング テーブル情報が含まれています。

RIP リクエスト パケットがない場合、すべての RIP ルーターは、RIP 対応のすべてのインターフェイスで 30 秒ごとに RIP 応答パケットをブロードキャストします。RIP ブロードキャストは、トポロジー情報がネットワーク全体にフラッディングする主な方法です。

ルーターは RIP を通じて特定の宛先を学習すると、タイマーを開始します。宛先に関する情報を含む新しい応答パケットを受信するたびに、ルーターはタイマーをゼロにリセットします。ただし、ルーターが特定の宛先に関する更新を180秒間受信しない場合、ルーターはRIPルーティングテーブルから宛先を削除します。

RIP パケットを 30 秒ごとに定期的に送信するだけでなく、ルーターが新しいネイバーを検出した場合、またはインターフェイスが利用できないことを検出すると、トリガーされた更新が生成されます。新しいルーティング情報は、RIP 対応インターフェイスをすべて即座にブロードキャストアウトし、その変更は後続のすべての RIP 応答パケットに反映されます。

ホップ数の最大化

RIP ネットワーク上でトラフィックのルーティングが成功するには、ネットワーク内のすべてのノードが同じトポロジのビューを維持する必要があります。トポロジ情報は、RIP ネイバー間で 30 秒ごとにブロードキャストされます。ルーターAが新しいホストであるルーターBから多くのホップ離れている場合、Bへのルートはネットワークを伝播するのにかなりの時間がかかり、ルーターAのルーティングテーブルにインポートされる可能性があります。2つのルーターが互いに5ホップ離れている場合、ルーターAは、ルーターBがオンライン(ホップあたり30秒)の2.5分後まで、ルーターBにルートをインポートできません。大量のホップの場合、遅延は法外なものになります。この遅延が任意に大きくなるのを防ぐために、RIP は 15 ホップの最大ホップ数を適用します。15 ホップを超えるプレフィックスは到達不能として扱われ、無限に等しいホップ数が割り当てられます。この最大ホップ数は 、ネットワーク直径と呼ばれます。

スプリットホライズンとポイズンリバース効率技術

RIP はルーティング テーブル全体を定期的にネットワークにフラッディングすることで機能するため、多くのトラフィックが生成されます。スプリット ホライズンとポイズン リバース技術は、RIP ホストから発信されるネットワーク トラフィックの量を減らし、ルーティング情報の送信をより効率的にするのに役立ちます。

ルーターが特定のインターフェイスで一連のルートアドバタイズメントを受信した場合、RIPは、それらのアドバタイズメントを同じインターフェイスから再送信する必要はないことを判断します。 スプリット ホライズンと呼ばれるこの技術は、そのインターフェイス上の他のネイバーがすでに学習した情報を排除することで、RIP ルーティング トラフィックの量を制限するのに役立ちます。 図 2 は、スプリット ホライズン技術の例を示しています。

図 2:スプリット ホライズンの例 Split Horizon Example

図2では、ルーターAはルーターC、D、EへのルートをルーターBにアドバタイズしています。この例では、ルーターAは2ホップでルーターCに到達できます。ルーターAがルーターBへのルートをアドバタイズすると、ルーターBは3ホップでルーターAを介してルーターCへのルートとしてインポートします。ルーターBがこのルートをルーターAに変換した場合、ルーターAは4ホップでルーターBを介してルーターCへのルートとしてインポートします。ただし、ルーターAはすでに2ホップでルートに到達できるため、ルーターBからルーターAへのアドバタイズは不要です。スプリット ホライズン技術は、このタイプのルートアドバタイズメントを排除することで、余分なトラフィックを削減するのに役立ちます。

同様に、ポイズンリバース技術は、ルーティング情報の送信を最適化し、ネットワーク収束に到達するまでの時間を改善するのに役立ちます。ルーターAは、そのインターフェイスの1つを介して到達不能なルートを学習すると、そのルートを到達不能(16のホップ数)として同じインターフェイスからアドバタイズします。 図3 は、ポイズドリバース技術の一例を示す。

図 3:ポイズニングリバースの例 Poison Reverse Example

図 3 では、ルーター A は、ルーター C、D、E にルーティングが到達不可能であることを示すインターフェイスの 1 つを学習します。ルーターAは、これらのルートを到達不能と同じインターフェイスからアドバタイズします。このアドバタイズメントは、ルーターC、D、EがルーターAを通じて絶対に到達できないということをルーターBに通知します。

単方向接続の制限

RIP はルーティング テーブルの更新の受信のみに基づいてルーティング情報を処理するため、双方向接続を保証することはできません。 図 4 に示すように、RIP ネットワークは一方向の接続によって制限されています。

図 4:一方向接続 Limitations of Unidirectional Connectivityの制限

図 4 では、ルーター A と D がルーティング テーブル情報をルーター B にフラッディングしています。ルーターEへのパスは、ルーターAを介してルーティングされた場合のホップが最も少ないため、そのルートはルーターBの転送テーブルにインポートされます。ただし、ルーターAはトラフィックを送信できても、利用できないリンクまたは無効なルーティングポリシーのためにルーターBからトラフィックを受信していないとします。ルーターEへの唯一のルートがルーターAを経由している場合、双方向接続が確立されなかったため、ルーターAを宛先とするトラフィックは失われます。

OSPFは、3方向のハンドシェイクで双方向接続を確立します。

RIPng の概要

ルーティング情報プロトコル次世代(RIPng)は、距離ベクトルアルゴリズムを使用して、メトリックとしてホップカウントを使用して宛先への最適なルートを決定する内部ゲートウェイプロトコル(IGP)です。RIPngは、ルートの計算に使用されるルーティング情報を交換し、IPバージョン6(IPv6)ベースのネットワークを対象としています。RIPngはデフォルトで無効になっています。

セキュアコンテキストのデバイスでは、IPv6は無効になっています。IPv6 で RIPng を使用できるようにする必要があります。手順については、 セキュリティデバイス向けJunos OSインターフェイス設定ガイドを参照してください。

このトピックには、以下のセクションが含まれています。

RIPngプロトコルの概要

RIPng IGPは、Bellman-Ford距離ベクトルアルゴリズムを使用して、メトリックとしてホップカウントを使用して、宛先への最適なルートを決定します。RIPngにより、ホストとルーターは、IPベースのネットワークを介してルート計算のための情報を交換することができます。RIPngは、適度なサイズの自律システムのIGPとして機能することを目的としています。

RIPngは、RIPv2からの異なるルーティングプロトコルです。RIPngのJunos OSの実装はRIPv2と似ていますが、以下のような違いがあります。

  • RIPngは、パケットに認証を実装する必要はありません。

  • Junos OSは、RIPngの複数のインスタンスをサポートしていません。

  • Junos OSは、RIPngルーティングテーブルグループをサポートしていません。

RIPng は UDP ベースのプロトコルで、UDP ポート 521 を使用します。

RIPngには、以下のアーキテクチャ上の制限があります。

  • 最長ネットワーク パスは 15 ホップを超えることはできません(各ネットワーク、またはホップのコストが 1 であると仮定)。

  • RIPngは、ルーティングテーブルを再構築すると、ルーティングループが発生しやすいです。特に、数100台のルーターで構成される大規模なネットワークにRIPngが実装されている場合、ルーティングループの解決に非常に時間がかかる場合があります。

  • RIPngは、ルートを選択するために固定メトリックのみを使用します。他の IGP は、測定された遅延、信頼性、負荷などの追加パラメータを使用します。

RIPng 規格

RIPngは以下の文書で定義されています。

  • RFC 2080、 RIPng for IPv6

  • RFC 2081、 RIPng Protocol Applicability Statement

インターネットコメントリクエスト(RFC)とドラフトにアクセスするには、インターネット技術タスクフォース(IETF)のWebサイトをご覧ください。

RIPng パケット

RIPngパケットヘッダーには、以下のフィールドが含まれています。

  • コマンド—パケットがリクエストメッセージか応答メッセージかを示します。リクエストメッセージは、ルーターのルーティングテーブルの情報を求めます。応答メッセージは定期的に送信されるか、要求メッセージを受信したときに送信されます。定期応答メッセージは、更新メッセージと呼ばれます。更新メッセージには、コマンドとバージョンのフィールドと、一連の宛先とメトリックが含まれています。

  • バージョン番号—送信元ルーターが実行されているRIPngのバージョンを指定します。これは現在バージョン 1 に設定されています。

RIPngパケットの残りの部分には、以下のフィールドで構成されるルーティングテーブルエントリーのリストが含まれています。

  • 宛先プレフィックス —宛先の 128 ビット IPv6 アドレス プレフィックス。

  • プレフィックス長—プレフィックス内の有効ビットの数。

  • メトリック — アドレスに対してアドバタイズされたメトリックの値。

  • ルート タグ — ルートと共にアドバタイズおよび再配布する必要があるルート属性。ルートタグは、外部ゲートウェイプロトコル(EGP)全体にルートを再分配する必要がある場合、主に外部RIPngルートと内部RIPngルートを区別します。

RIP および RIPng 標準に対応

Junos OS は、RIP(IP バージョン 4[IPv4])および RIP 次世代(RIPng、IP バージョン 6[IPv6]の場合)の標準を定義する以下の RFC を実質的にサポートしています。

Junos OSは、すべてのRIPプロトコル交換(MD5またはシンプルな認証)の認証をサポートしています。

  • RFC 1058、 ルーティング情報プロトコル

  • RFC 2080、 IPv6用RIPng

  • RFC 2082、 RIP-2 MD5認証

    異なる鍵 ID を使用する複数の鍵はサポートされていません。

  • RFC 2453、 RIPバージョン2

以下のRFCは標準を定義しませんが、RIPngに関する情報を提供しています。IETF はそれを「Informational」と分類しています。

  • RFC 2081、 RIPng Protocol Applicability Statement