第5編
レイヤー3

RIP/RIPngの機能説明

RIP/RIPngは、ダイナミックルーティングを実現するルーティングプロトコルです。

注 意

セカンダリーIPアドレスのサブネットでは、RIPを有効にできません。

RIP/RIPngでは、アップデート時間(デフォルト設定で30秒)の周期で隣接ルーターと定期的に経路情報を交換し、最適な経路をルーティングテーブルに保持します。

また、経路上のルーターに障害が発生するなどによってネットワークの状態が変化し、経路情報のメトリック値に変更があった場合は、トリガードアップデートによって変更された経路情報だけがすぐに送信されます。これにより、変更された経路情報だけがルーティングテーブルで更新されます。

経路情報の交換

最適経路とメトリック値の積算

最適な経路は、メトリックによって判断されます。RIP/RIPngのメトリックは、宛先ネットワークまでのホップ数(経由するルーターの数)です。ホップ数は、ルーターを越えるごとに「1」ずつ加算されます。最適経路は、最もメトリックの値が小さい経路です。

注 意

RIP/RIPngでは、イコールコストマルチパス(ECMP)をサポートしていません。

メトリック値の最大は「15」です。16台以上のルーターを経由するルートは、到達不能な経路になります。

最適経路とメトリック値の積算

障害発生時の対応

タイムアウトタイマー(デフォルト設定で180秒)以内に経路情報が送られてこなかったルーターは通信不能と判断され、メトリック値に「16」が設定されます。さらにガベージコレクションタイマー(デフォルト設定で120秒)が経過する間に経路情報が送られてこなかった場合、該当する経路情報はルーティングテーブルから削除されます。

障害発生時の対応

RIP/RIPngの経路情報と動作

RIPはIPv4のためのルーティングプロトコルです。RIPにはバージョン1(以後、RIPv1)とバージョン2(以後、RIPv2)の2つのバージョンがあります。RIPngはIPv6のためのルーティングプロトコルです。RIPv1、RIPv2、およびRIPngの経路情報と動作について、以下に説明します。

RIPv1の動作

RIPv1は、経路情報として「IPv4アドレス」と「メトリック値」をブロードキャストします。

RIPv1が送信する経路情報には、サブネットマスクの情報が含まれません。そのため、ルーターはネットワークアドレスの情報のみを送信します。また、サブネットマスクの情報を含まないため、ネットワークアドレスはクラスフルマスクに集約して通知します。これをアドレスの集約と呼びます。

RIPv1アドレスの集約

RIPv2の動作

RIPv2は、「IPv4アドレス」と「メトリック値」に加えて「サブネットマスク」と「ネクストホップのアドレス」も経路情報として送信できます。ネクストホップのアドレスを送信するため、経路情報ごとにネクストホップの指定ができます。

RIPv1では経路情報をブロードキャストしますが、RIPv2ではマルチキャストアドレス224.0.0.9を使用して経路情報をマルチキャストします。これにより、経路情報が不要なPCなどの機器に無駄なパケットが送られることがなくなり、ネットワークの負荷が軽減されます。

補 足

RIPv1との互換性を保つため、RIPv2ではブロードキャストも使用できます。

RIPv2では、サブネットマスクを送信することにより、同一クラスフルネットワークで異なるサブネットマスクの場合は、異なるネットワークとして認識します。また、アドレスを集約せずに、クラスフルネットワーク内の2つのネットワークアドレスを通知できます。

RIPv2アドレスの集約なし

RIPngの動作

RIPngの経路情報は、「IPv6プレフィックス」、「メトリック値」、「サブネットマスク」、および「ネクストホップのリンクローカルアドレス」です。マルチキャストアドレスFF02::9で経路情報をマルチキャストします。これにより、経路情報が不要なPCなどの機器に無駄なパケットが送られることがなくなり、ネットワークの負荷が軽減されます。

RIPngでは、RIPv2と同じくサブネットマスクを送信することにより、同一クラスフルネットワークで異なるサブネットマスクの場合は、異なるネットワークとして認識します。また、アドレスを集約せずに、クラスフルネットワーク内の2つのネットワークアドレスを通知できます。

RIPngアドレスの集約なし

RIP/RIPngの有効化

RIPの有効化

RIPは、デフォルト設定で無効です。RIPを有効化するにはrouter ripコマンドを使用し、networkコマンドで対象のネットワークを指定します。

RIPngの有効化

RIPngは、デフォルト設定で無効です。RIPngはインターフェースごとに有効化します。RIPngを有効化するインターフェースでipv6 rip enableコマンドを使用してください。

補 足

ルーター設定モードに遷移するには、ipv6 router ripコマンドを使用します。

RIPバージョンの指定

装置で使用するRIPのバージョンを指定します。

すべてのインターフェースでのデフォルトのRIPバージョンは、バージョンを指定してversionコマンドを使用します。

インターフェースで受信するRIPパケットのバージョンを指定するには、バージョンを指定してip rip receive versionコマンドを使用します。

インターフェースで送信するRIPパケットのバージョンを指定するには、バージョンを指定してip rip send versionコマンドを使用します。

RIPパケット送受信の無効化

RIPでは、インターフェースでRIPパケットの送受信を無効化できます。RIPパケットの送受信を無効化するには、インターフェースを指定してpassive-interfaceコマンドを使用します。

認証の有効化

RIPv2とRIPngでは、経路情報の交換の際に認証を実行できます。

補 足

RIPv1は、認証機能がありません。

RIPv2の認証の有効化

RIPv2の認証は、デフォルト設定で無効です。RIPv2の認証はインターフェースごとに有効化します。RIPv2の認証を有効化するインターフェースで、パスワードを指定してip rip authentication text-passwordコマンドを使用してください。また、認証モードを設定する場合は、認証を有効化するインターフェースでip rip authentication modeコマンドを使用してください。

RIPngの認証の有効化

RIPngの認証は、IPv6の認証機能を利用します。IPv6の認証機能では、IPv6認証ヘッダーおよび暗号化ヘッダーを使用してパケットを認証します。

経路情報のループ防止

RIPngでは、スプリットホライズンとポイズンリバースで、ルーター間の経路情報のループを防止できます。スプリットホライズンやポイズンリバースを使用しない場合、経路情報がループする可能性があります。

たとえば、下図のルーターAが直接接続しているネットワーク2000:1:1:1::/64への経路が失われた場合、タイムアウトタイマーとガベージコレクションタイマーを経た後、ルーターAのルーティングテーブルから2000:1:1:1::/64への経路情報が削除されます。

このとき、ルーターAの定期アップデートより先にルーターBの定期アップデートが発生すると、ルーターAのルーティングテーブルからは2000:1:1:1::/64への経路情報が存在しないため、ネクストホップをルーターBとしたネットワーク2000:1:1:1::/64への経路情報がルーターAのルーティングテーブルに登録されます(下図の(1))。メトリックは「1」加算され、「2」になります。

次に、ルーターAの定期アップデートが発生すると、ルーターBは2000:1:1:1::/64への経路情報のメトリックに「1」を加算して「3」に変更してルーティングテーブルを更新します(下図の(2))。

さらにルーターAとルーターBは、下図の(3)および(4)のようにメトリックに「1」を加算しながら2000:1:1:1::/64の経路情報の更新を繰り返します。これが、経路情報のループです。

経路情報のループ

スプリットホライズンとポイズンリバースは、このような経路情報のループを防止する機能です。

スプリットホライズンの動作

スプリットホライズンが有効な場合、隣接ルーターは送信されてきた経路情報を送信元のルーターに送信しません。これにより、経路情報のループを防止します。

たとえば、下図のルーターBがネットワーク91.10.0.0/24への経路情報をルーターAに送信した場合、ルーターAは経路情報の送信元であるルーターBにネットワーク91.10.0.0/24への経路情報を送信しません。これにより、経路情報のループが防止されます。

スプリットホライズンの動作

スプリットホライズンはデフォルト設定で有効です。スプリットホライズンが無効な状態から有効にするには、split-horizonコマンドを使用します。

ポイズンリバースの動作

ポイズンリバースが有効な場合、隣接ルーターは送信されてきた経路情報のメトリック値を「16」に設定して送信元のルーターに送信します。これにより、経路情報のループを防止します。

たとえば、下図のルーターBがネットワーク91.10.0.0/24への経路情報をルーターAに送信した場合、ルーターAはネットワーク91.10.0.0/24への経路情報のメトリック値に「16」を設定し、ルーターBに送信します。ルーターBは、受信したメトリック値「16」の経路情報をルーティングテーブルに登録しません。これにより、経路情報のループが防止されます。

ポイズンリバースの動作

ポイズンリバースはデフォルト設定で無効です。ポイズンリバースを有効にするには、poison-reverseコマンドを使用します。

RIPngの経路情報に加算するメトリック値の変更

RIPngでは、インターフェースごとに加算するメトリック値を変更することで、異なるインターフェースで受信した経路情報のメトリックを修正し、経路情報の優先度を調整できます。経路情報の優先度を調整するには、メトリック値を変更するインターフェースでメトリック値を指定し、ipv6 rip metric-offsetコマンドを使用します。

RIPv2パケットのブロードキャスト送信

RIPv2では、RIPv1との互換性を保持するために、パケットをブロードキャストできます。RIPv2パケットをブロードキャストするには、ip rip v2-broadcastコマンドを使用します。

他のルーティングプロトコルのルートのRIP/RIPngへの再配布

他のルーティングプロトコルから得たルートをRIP/RIPngに再配布できます。ルートを再配布するには、ルートを再配布するプロトコルを指定してredistributeコマンドを使用します。

RIP/RIPngに再配布される経路情報のデフォルトメトリックの変更

RIP/RIPngに再配布される経路情報のデフォルトメトリックを変更できます。デフォルトメトリックを変更するには、メトリック値を指定してdefault-metricコマンドを使用します。

各種タイマーの変更

アップデート時間、タイムアウトタイマー、およびガベージコレクションタイマーを変更できます。変更するには、それぞれの時間を指定し、RIPの場合はtimers basicコマンド、RIP/ngの場合はtimersコマンドを使用します。

RIP/RIPngのAD値の変更

RIP/RIPngのアドミニストレーティブディスタンス値(以後、AD値)を変更できます。デフォルト設定では、RIPのAD値は「100」、RIPngのAD値は「120」です。RIP/RIPngのAD値を変更するには、distanceコマンドを使用します。

補 足

ApresiaNPシリーズでは、AD値を255に設定した場合でも、通常の経路としてルーティングテーブルに取り込む対象として動作します。

RIPのルーティングテーブルの更新のフィルタリング

ルーティングプロトコルによるRIPのルーティングテーブルの更新をアクセスリストでフィルタリングできます。ルーティングテーブルの更新をフィルタリングするには、アクセスリストを指定してdistribute-list inコマンドを使用します。

RIPngプロセスのクリア

RIPngプロセスをクリアし、ルーティングデータベースを再作成できます。RIPngプロセスをクリアするには、clear ipv6 ripコマンドを使用します。

ページトップへ