EIGRP について
EIGRP は、シスコが開発した、IGRP の拡張バージョンです。IGRP や RIP と異なり、EIGRP が定期的にルート アップデートを送信することはありません。EIGRP アップデートは、ネットワーク トポロジが変更された場合にだけ送信されます。EIGRP を他のルーティング プロトコルと区別する主な機能には、迅速なコンバージェンス、可変長サブネット マスクのサポート、部分的アップデートのサポート、複数のネットワーク レイヤ プロトコルのサポートなどがあります。
EIGRP を実行するルータでは、すべてのネイバー ルーティング テーブルが格納されているため、代替ルートに迅速に適応できます。適切なルートが存在しない場合、EIGRP はそのネイバーにクエリーを送信して代替のルートを検出します。これらのクエリーは、代替ルートが検出されるまで伝搬します。EIGRP では可変長サブネット マスクがサポートされているため、ルートはネットワーク番号の境界で自動的に集約されます。さらに、任意のインターフェイスの任意のビット境界で集約を行うように EIGRP を設定することもできます。EIGRP は定期的なアップデートを行いません。その代わり、ルートのメトリックが変更されたときだけ、部分的なアップデートを送信します。部分的アップデートの伝搬では、境界が自動的に設定されるため、その情報を必要とするルータだけがアップデートされます。これらの 2 つの機能により、EIGRP の帯域幅消費量は IGRP に比べて大幅に減少します。
ネイバー探索は、ASA が直接接続されているネットワーク上にある他のルータをダイナミックに把握するために使用するプロセスです。EIGRP ルータは、マルチキャスト hello パケットを送信して、ネットワーク上に自分が存在していることを通知します。ASA は、新しいネイバーから hello パケットを受信すると、トポロジ テーブルに初期化ビットを設定してそのネイバーに送信します。ネイバーは、初期化ビットが設定されたトポロジ アップデートを受信すると、自分のトポロジ テーブルを ASA に返送します。
hello パケットはマルチキャスト メッセージとして送信されます。hello メッセージへの応答は想定されていません。ただし、スタティックに定義されたネイバーの場合は例外です。neighbor コマンドを使用して(または ASDM で [Hello Interval] を設定して)ネイバーを設定すると、そのネイバーへ送信される hello メッセージはユニキャスト メッセージとして送信されます。ルーティング アップデートと確認応答が、ユニキャスト メッセージとして送信されます。
このネイバー関係が確立した後は、ネットワーク トポロジが変更された場合にだけ、ルーティング アップデートが交換されます。ネイバー関係は、hello パケットによって維持されます。ネイバーから受信した各 hello パケットには、保持時間が含まれています。ASA は、この時間内にそのネイバーから hello パケットを受信すると想定できます。ASA が保持時間内にそのネイバーからアドバタイズされた hello パケットを受信しない場合、ASA はそのネイバーを使用不能と見なします。
EIGRP プロトコルは、ネイバーの検出、ネイバーの回復、Reliable Transport Protocol(RTP)、およびルート計算に重要な DUAL を含む、4 の主要なアルゴリズム テクノロジーと 4 つの主要なテクノロジーを使用します。DUAL は、最小コストのルートだけでなく、宛先へのすべてのルートをトポロジ テーブルに保存します。最小コストのルートはルーティング テーブルに挿入されます。その他のルートは、トポロジ テーブルに残ります。メインのルートに障害が発生したら、フィジブル サクセサから別のルートが選択されます。サクセサとは、宛先への最小コスト パスを持ち、パケット転送に使用される隣接ルータです。フィジビリティ計算によって、パスがルーティング ループを形成しないことが保証されます。
フィジブル サクセサがトポロジ テーブル内にない場合、必ずルート計算が発生します。ルートの再計算中、DUAL は EIGRP ネイバーにルートを求めるクエリーを送信して、次に EIGRP ネイバーがそのネイバーにクエリーを送信します。ルートのフィジブル サクセサがないルータは、到達不能メッセージを返します。
ルートの再計算中、DUAL は、ルートをアクティブとマークします。デフォルトでは、ASA は、ネイバーから応答が返ってくるのを 3 分間待ちます。ASA がネイバーから応答を受信しないと、そのルートは stuck-in-active とマークされます。トポロジ テーブル内のルートのうち、応答しないネイバーをフィジブル サクセサとして指しているものはすべて削除されます。
(注) |
EIGRP ネイバー関係では、GRE トンネルを使用しない IPsec トンネルの通過はサポートされていません。 |
EIGRPv6
EIGRP for IPv6 は、EIGRP IPv4 と同様に設定できます。EIGRPv6 は、IPv6 ピアとのみ通信し、IPv6 ルートのみをアドバタイズします。EIGRPv6 は、多くの点で EIGRPv4 に似ています。
-
DUAL は、同じメトリックでルートの計算と選択に使用されます。
-
大規模なネットワークの実装に合わせて拡張できます。
-
ネイバー、ルーティング、およびトポロジテーブルは維持されます。
-
等コストロードバランシングと不等コストロードバランシングの両方が提供されます。
ただし、EIGRPv6 は、次のような多くの点で EIGRPv4 とは異なります。
-
network コマンドは IPv6 では使用されません。EIGRP はリンクを使用して設定されます。
-
設定時に各インターフェイスで EIGRPv6 を明示的に有効にする必要があります。
Null0 および EIGRP
デフォルトでは、EIGRP は Null0 ルートをサマリールートとしてピアにアドバタイズして、サマリーをアドバタイズしているルータがルートを持たないパケットを転送しないようにします。
たとえば、R1 と R2 の 2 つのルータについて考えてみます。R1 の 3 つのインターフェイスには、192.168.0.0/24、192.168.1.0/24、および 192.168.3.0/24 のネットワークがあります。R1 をサマリールート 192.168.0.0/22 で設定し、そのルートを R2 にアドバタイズします。R2 に 192.168.2.x の IP パケットがある場合、そのパケットは R1 に転送されます。R1 は、ルーティングテーブルに 192.168.2.x がないため、パケットをドロップします。ただし、R1 が ISP にも接続されており、ISP を指しているデフォルトルートがある場合、192.168.2.x パケットは ISP に転送されます。この転送アクションを防ぐために、EIGRP は、Null0 を指している、サマリールートに一致するエントリを生成します。したがって、192.168.2.x のパケットが受信されると、R1 はデフォルトルートを使用する代わりにパケットをドロップします。