内容

はじめに

前提条件

要件

使用するコンポーネント

背景説明

プロトコルリビジョン

基本理論

隣接ルータの検出と維持

トポロジテーブルの構築

EIGRP メトリック

到達可能距離、報告距離、およびフィージブル サクセサ

パスにループがないかどうかを検出する

スプリット ホライズンとポイズン リバース

起動モード

トポロジ テーブルの変更

クエリ

Stuck In Active ルート

SIAルートのトラブルシューティング

再配布

2 つの EIGRP 自律システム（AS）間の再配布

その他のプロトコルとの間の再配布

インターフェイスへのスタティックルートの再配布

集約

自動集約

手動集約

外部ルートの自動集約

プロセスと範囲の照会

集約ポイントがクエリー範囲に与える影響

AS の境界がクエリー範囲に与える影響

配布リストがクエリー範囲に与える影響

送信パケットの速度の管理

デフォルト ルーティング

Load Balance

メトリックの使用

再配布での管理タグの使用

EIGRPコマンド出力について

show ip eigrp traffic

設定に関する説明

show ip eigrp topology

show ip eigrp topology

設定に関する説明

設定に関する説明

show ip eigrp topology [active | pending | zero-successors]

show ip eigrp topology all-links

関連情報

はじめに

このドキュメントでは、Enhanced Interior Gateway Routing Protocol（EIGRP）と呼ばれる内部ゲートウェイプロトコルの使用方法について説明します。

前提条件

要件

このドキュメントに関する固有の要件はありません。

使用するコンポーネント

このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

適切に設計されたネットワークでは、EIGRPは適切に拡張でき、ネットワークトラフィックを最小限に抑えながら非常に高速なコンバージェンス時間を提供します。

EIGRPには次のような利点があります。

- 通常動作時のネットワークリソースの使用量が非常に少なく、安定したネットワークではhelloパケットのみが送信されます。

- 変更が発生すると、ルーティングテーブル全体ではなく、ルーティングテーブルの変更のみが伝搬されます。これにより、ルーティングプロトコル自体がネットワークに対して行う負荷が軽減されます。

- ネットワークトポロジの変更に対する高速コンバージェンス時間（コンバージェンスはほぼ瞬時に行われる場合があります）。

EIGRPは拡張ディスタンスベクタープロトコルであり、Diffused Update Algorithm(DUAL)を使用してネットワーク内の宛先への最短パスを計算します。

プロトコルリビジョン

EIGRP には、バージョン 0 とバージョン 1 の大きく 2 つのバージョンがあります。10.3(11)、11.0(8)、および11.1(3)よりも前のバージョンのCisco IOS®では、以前のバージョンのEIGRPが実行されます。この情報の一部は、古いバージョンには適用されません。EIGRPの新しいバージョンには、パフォーマンスと安定性の拡張機能が多数含まれるため、これを推奨します。

基本理論

一般的なディスタンスベクタープロトコルは、宛先への最適なパスを計算する際に、ディスタンス（メトリックまたはホップカウントなどのディスタンスの合計）とベクトル（ネクストホップ）の情報を保存します。たとえば、図1のネットワーク内のすべてのルータは、Routing Information Protocol（RIP；ルーティング情報プロトコル）を実行しています。ルータ2は、使用可能な各パスのホップカウントを調べることで、ネットワークAへのパスを選択します。

Figure 1

ルータ 3 を通るパスのホップは 3 であり、ルータ 1 を通るパスのホップは 2 であるため、ルータ 2 は ルータ 1 を通るパスを選択してルータ 3 で学習した情報を破棄します。ルータ 1 とネットワーク A の間のパスが停止すると、ルーティング テーブルのルートがタイムアウトするまで（3 アップデート期間、または 90 秒）ルータ 2 ではこの宛先とのすべての接続が不通になり、ルータ 3 はルートを再度アドバタイズします（RIP では 30 秒ごとに発生）。ホールドダウン時間が含まれていない場合、ルータ2がパスをルータ1からルータ3に切り替えるのに90 ～ 120秒かかります。

EIGRPは、再収束を完全に定期的なアップデートに依存するのではなく、それぞれのネイバーアドバタイズメントからトポロジテーブルを構築し（データは廃棄されません）、トポロジテーブル内でループがないと思われるルートを検索して収束します。または、別のルートが見つからない場合は、そのネイバーに照会します。ルータ 2 は、ルータ 1 とルータ 3 から受信した情報を保管します。ルータ 1 を通るパスを最適なパス（サクセサ）として選択し、ルータ 3 を通るパスをループのないパス（フィージブル サクセサ）として選択します。ルータ1を通るパスが使用できなくなった場合、ルータ2はトポロジテーブルを調べ、フィージブルサクセサが見つかると、ただちにルータ3を通るパスの使用を開始します。

この簡単な説明からわかるとおり、EIGRP では次の機能が提供されます。

- 任意時に必要なアップデートだけを送信するシステム。これは近隣ルータ検出とメンテナンスにより実現します。

- ルータが学習したパスにループがないかどうかを判断する方法

- ネットワーク上にあるすべてのルータのトポロジ テーブルから問題のあるルートを削除するプロセス。

- ネイバーを検索して失われた宛先へのパスを見つけるプロセス

これらの各要件は、順番に説明します。

隣接ルータの検出と維持

ルーティング情報をネットワーク全体に配布するために、EIGRP は非定期的な差分ルーティング更新を使用します。つまり、EIGRP はこれらのパスが変更されたとき、変更されたパスに関するルーティング更新だけを送信します。

ルーティングアップデートを送信するだけの場合、隣接ルータを経由するパスが使用できなくなったことを検出できません。ルートをタイムアウトして、ネイバーから新しいルーティングテーブルを受信する予定はありません。EIGRPはネイバー関係に基づいてルーティングテーブルの変更をネットワーク全体に伝播します。2台のルータは共通のネットワーク上でhelloパケットを確認するとネイバーになります。

EIGRP は HELLO パケットを高帯域幅リンクでは 5 秒ごとに、低帯域幅マルチポイント リンクでは 60 秒ごとに送信します。

- 5 秒ごとの HELLO：

- ブロードキャスト メディア（イーサネット、トークン リング、FDDI など）

- pppまたはHDLC専用回線、フレームリレーポイントツーポイントサブインターフェイス、およびATMポイントツーポイントサブインターフェイスなどのポイントツーポイントシリアルリンク

- 高帯域幅（T1 以上）マルチポイント回線（ISDN PRI およびフレームリレー）

- 60 秒ごとの HELLO：

- マルチポイント回線 T1 帯域幅またはそれ以下（フレーム リレー マルチポイント インターフェイス、ATM マルチポイント インターフェイス、ATM 相手先選択接続、および ISDN BRI）

EIGRP が HELLO パケットを送信する割合は HELLO インターバルと呼ばれ、インターフェイスごとに ip hello-interval eigrp コマンドで調整できます。ホールドタイムとは、ルータがhelloパケットを受信していないときに、ネイバーが有効であると見なす時間の長さです。ホールドタイムは通常、helloインターバルの3倍で、デフォルトでは15秒、180秒です。待機時間は ip hold-time eigrp コマンドで調節できます。

注:Hello間隔を変更しても、保留時間はこの変更に合わせて自動的に調整されません。設定されたHello間隔を反映するには、ホールドタイムを手動で調整する必要があります。

2 台のルータは、HELLO タイマーとホールド タイマーが一致しなくても EIGRP 隣接ルータになることができます。helloパケットにはホールドタイムが含まれているので、hello間隔タイマーとホールドタイマーが一致しなくても、各ネイバーはアクティブな状態を維持できます。 ルータ上のhello間隔を直接判別する方法はありませんが、隣接ルータでのshow ip eigrp neighborsコマンドの出力から、これを推測できます。

ご使用のシスコデバイスの、show ip eigrp neighborsコマンドの出力データがあれば、JavaScriptを有効にしている場合に潜在的な問題と修正を表示するためにCisco CLI Analyzerを使用できます。

router#show ip eigrp neighbors

IP-EIGRP neighbors for process 1

H   Address       Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type

(sec)         (ms)       Cnt Num

1   10.1.1.2      Et1           13 12:00:53   12   300  0  620

0   10.1.2.2      S0           174 12:00:56   17   200  0  645

rp-2514aa#show ip eigrp neighbor

IP-EIGRP neighbors for process 1

H   Address        Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type

(sec)         (ms)       Cnt Num

1   10.1.1.2       Et1           12 12:00:55   12   300  0  620

0   10.1.2.2       S0           173 12:00:57   17   200  0  645

rp-2514aa#show ip eigrp neighbor

IP-EIGRP neighbors for process 1

H   Address        Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type

(sec)         (ms)       Cnt Num

1   10.1.1.2       Et1           11 12:00:56   12   300  0  620

0   10.1.2.2       S0           172 12:00:58   17   200  0  645

コマンド出力のHoldカラムの値は、ホールドタイムを超えることはなく、ホールドタイムからHelloインターバルを引いた値よりも小さくなることもありません（もちろん、Helloパケットが失われない限り）。Holdカラムの範囲が通常10 ～ 15秒の場合、Hello間隔は5秒で、ホールドタイムは15秒です。Holdカラムの範囲が通常120 ～ 180秒と広い場合、Hello間隔は60秒で、ホールドタイムは180秒です。これらの数値がデフォルトのタイマー設定のいずれかに適合していないと思われる場合は、ネイバールータ上の該当するインターフェイスをチェックします。helloタイマーとホールドタイマーは手動で設定されている可能性があります。

注：EIGRPは、セカンダリアドレスでピア関係を構築しません。すべての EIGRP トラフィックは、インターフェイスの一次アドレスを送信元としています。

- マルチアクセスフレームリレーネットワーク（ポイントツーマルチポイントなど）でEIGRPを設定する場合は、broadcastキーワードをframe-relay map文で設定します。broadcastキーワードを使用しないと、2台のEIGRPルータ間で隣接関係が確立されません。詳細については、『フレームリレーの設定およびトラブルシューティングに関する包括的なガイド』を参照してください。

- EIGRP がサポートできる隣接ルータの数には制限がありません。サポートされるネイバーの実際の数は、次のようなデバイスの機能によって異なります。

- メモリ容量

- 処理能力

- 送信されるルートの数など、交換情報の量

- トポロジの複雑性

- ネットワークの安定性

トポロジテーブルの構築

これらのルータが互いに通信するようになったところで、ルータは何について話しているのでしょうか。いうまでもなく、各ルータのトポロジ テーブルです。EIGRP は、RIP や IGRP とは異なり、ルータのルーティング（または転送）テーブルを使用して動作に必要なすべての情報を保持しません。その代わりに、第 2 の表として、トポロジ テーブルを作成し、そこからルートをルーティング テーブルに挿入します。

注:Cisco IOSバージョン12.0Tおよび12.1以降、RIPは自身のデータベースを維持し、そこからルーティングテーブルにルートをインストールします。

EIGRPを実行しているルータのトポロジテーブルの基本形式を表示するには、show ip eigrp topologyコマンドを発行します。トポロジテーブルには、到達可能な各ネットワークへのディスタンスとベクトルのセットを構築するために必要な情報が含まれます。また、次の情報も含まれます。

- 上流近接ルータによってレポートされたこの送信先へのパスの最低帯域幅

- 遅延合計

- パスの信頼性

- パスの負荷

- パスの最小の Maximum Transmission Unit（MTU; 最大伝送ユニット）

- フィージブル ディスタンス（Feasible distance）＃ふぃーじぶるでぃすたんす＃

- レポーテッド ディスタンス（Reported distance）＃れぽーてっどでぃすたんす＃

- ルートの送信元（外部ルートはマークされます）

ご使用のシスコデバイスの、show ip eigrp topologyコマンドの出力データがあれば、Cisco CLIアナライザを使用して、今後予想される障害と修正を表示できます。Cisco CLIアナライザを使用するには、JavaScriptを有効にする必要があります。

EIGRP メトリック

EIGRP は送信先ネットワークへのパスの最小帯域幅と合計遅延を使用して、ルーティング メトリックを計算します。ネットワークでルーティングループを引き起こす可能性があるため、他のメトリックを設定することは推奨されません。帯域幅と遅延のメトリックは、送信先ネットワークへのパス上のルータのインターフェイスに設定された値によって求められます。

たとえば、図2では、ルータ1はネットワークAへのパスを計算します。

図 2

このネットワークでは 2 つのアドバタイズメントで開始します。1 つは、ルータ 4 を通り最小帯域幅 56 および合計遅延 2200 のアドバタイズメント、もう 1 つはルータ 3 を通り最小帯域幅が 128 で遅延は 1200 のアドバタイズメントです。ルータ 1 は、メトリックが最も低いパスを選択します。

メトリックを計算します。EIGRPは、帯域幅と遅延のメトリックを拡張するときに、メトリックの合計を計算します。EIGRPは帯域幅を拡張するために次の式を使用します。

- 帯域幅 =（10000000/帯域幅（i））* 256

ここで、帯域幅（i）は、宛先ネットワークへのルート上のすべての発信インターフェイスの最小帯域幅で、キロビットで表されます。

EIGRPは遅延を調整するために次の式を使用します。

- 遅延 = 遅延（i）* 256

ここで、遅延（i）は、宛先ネットワークへのルート上のインターフェイスで設定されている遅延の合計で、10 マイクロ秒によって表されます。show ip eigrp topology や show interface コマンドで表示される遅延はマイクロ秒単位であるため、10 で割ってからこの数式で使用する必要があります。インターフェイスに表示されるため、遅延が使用されます。

EIGRP は、これらのスケールされた値を使用して、ネットワークへの複合メトリックを求めます。

- メトリック = ([K1 * 帯域幅 +（K2 * 帯域幅）/（256 負荷）+ K3 * 遅延] * [K5 /（信頼性 + K4）]) * 256

注:Kの値は、慎重に計画して使用する必要があります。Kの値が一致しないと、ネイバー関係の構築ができず、ネットワークのコンバージに失敗する可能性があります。

注:K5 = 0の場合、式はメトリック= ([k1 *帯域幅+ （k2 *帯域幅）/（256 – 負荷） + k3 *遅延]) * 256に減少します。

K のデフォルト値は、次のとおりです。

- K1 = 1

- K2 = 0

- K3 = 1

- K4 = 0

- K5 = 0

デフォルトの動作では、次に示すように数式を簡略化できます。

metric = bandwidth + delay

シスコのルータは浮動小数点計算をしないため、計算の各段階でメトリックを正しく計算するには、小数点以下を切り捨てる必要があります。

この例では、ルータ 4 を通る合計コストは、次のとおりです。

inimum bandwidth = 56k

total delay = 100 + 100 + 2000 = 2200

[(10000000/56) + 2200] x 256 = (178571 + 2200) x 256 = 180771 x 256 = 46277376

さらに、ルータ 3 を通る合計コストは次のとおりです。

minimum bandwidth = 128k

total delay = 100 + 100 + 1000 = 1200

[(10000000/128) + 1200] x 256 = (78125 + 1200) x 256 = 79325 x 256 = 20307200

ネットワークAに到達するために、ルータ1はルータ3を通るルートを選択します。

注：使用される帯域幅と遅延値は、ルータが宛先ネットワークへのネクストホップに到達するために経由するインターフェイスで設定された値です。たとえば、ルータ2はイーサネットインターフェイスに設定された遅延を使用してネットワークAをアドバタイズし、ルータ4はイーサネットに設定された遅延を追加し、ルータ1はシリアルに設定された遅延を追加しました。

到達可能距離、報告距離、およびフィージブル サクセサ

フィージブルディスタンスは、宛先ネットワークへのパスに沿った最適なメトリックで、そのパスをアドバタイズするネイバーへのメトリックが含まれます。報告距離は、上流近接ルータによってアドバタイズされる送信先ネットワークへのパスの複合メトリックです。フィージブル サクセサは、報告距離（現在のベスト パス）が到達可能距離より小さなパスです。図 3 では、このプロセスを説明します。

図 3

ルータ1はネットワークAへの2つのルートを認識します。1つはルータ3を通り、もう1つはルータ4を通ります。

- ルータ 4 を通るルートのコストは 46277376 で、報告距離は 307200 です。

- ルータ 3 を通るルートのコストは 20307200 で、報告距離は 307200 です。

注：いずれの場合も、EIGRPはネットワークへのルートをアドバタイズするルータからの報告距離を計算します。つまり、ルータ 4 からの報告距離はルータ 4 からネットワーク A へ到達するメトリックで、ルータ 3 からの報告距離はルータ 3 からネットワーク A に到達するメトリックになります。EIGRPはルータ3を通るルートをベストパスとして選択し、ルータ3を通るメトリックをフィージブルディスタンスとして使用します。このネットワークへのルータ 4 を通る報告距離は到達可能距離より小さいため、ルータ 1 はルータ 4 を通るパスをフィージブル サクセサと見なします。

ルータ 1 とルータ 3 の間のリンクが停止すると、ルータ 1 は把握しているネットワーク A への各パスを調べてルータ 4 にフィージブル サクセサがあることを見つけます。ルータ1はこのルートを使用します。このルートは、ルータ4を通るメトリックを新しい到達可能距離として使用します。ネットワークはただちにコンバージして、下流近接ルータのアップデートがルーティング プロトコルからの唯一のトラフィックになります。

図4に示すシナリオは、より複雑です。

図 4

ルータ1からネットワークAへのルートは2つあります。1つはルータ2を通り、メトリックは46789376で、もう1つはルータ3を通り、メトリックは20307200です。ルータ1は、これら2つのメトリックの最も低いメトリックをネットワークAへのルートとして選択し、このメトリックがフィージブルディスタンスになります。ルータ2を通るパスを調べて、フィージブルサクセサとして適格かどうかを確認します。ルータ 2 からの報告距離は 46277376 でこれは到達可能距離の値より高いため、このパスはフィージブル サクセサではありません。この時点でルータ1のトポロジテーブルを調べると(show ip eigrp topologyを使用)、ルータ3を通るネットワークAのエントリが1つだけあります。(実際にはルータ1のトポロジテーブルには2つのエントリがありますが、1つだけがフィージブルサクセサであるため、もう1つはshow ip eigrp topologyには表示されません。フィージブルサクセサではないルートは、show ip eigrp topology all-linksで確認できます)。

ルータ1とルータ3の間のリンクがダウンしたと仮定します。ルータ 1 はネットワーク A への唯一のルートが不通になったことを認識し、各近隣ルータ（この場合はルータ 2 だけ）に問い合せてネットワーク A へのルートがあるかどうかを調べます。ルータ 2 にはネットワーク A へのルートがあるため、クエリーに応答します。ルータ1はルータ3を通る優良なルートを持たなくなったため、ルータ2を通るネットワークAへのこのルートを受け入れます。

パスにループがないかどうかを検出する

EIGRP は到達可能距離、報告距離、フィージブル サクセサの概念をどう使用して、パスが有効か、ループがないかを判断するのでしょうか。図 4a では、ルータ 3 はネットワーク A へのルートを調べます。スプリットホライズンが無効であるために（たとえば、マルチポイントフレームリレーインターフェイスの場合）、ルータ3はネットワークAへの3つのルートを示しています。つまり、ルータ4を通り、ルータ2（パスは2、1、3、4）を通り、ルータ1（パスは1、2、3、4）を通ります。

図4a

ルータ 3 がこれらすべてのルートを受け入れると、ルーティング ループが発生します。ルータ 3 はルータ 2 を通ってネットワーク A に到達できると考えますが、ルータ 2 を通るパスがネットワーク A へ到達するにはルータ 3 を通ります。ルータ4とルータ3の間の接続がダウンした場合、ルータ3は他のパスを通ってネットワークAに到達できると考えますが、フィージブルサクセサを決定するルールがあるため、これらのパスを代替パスとして使用することはありません。メトリックを参照して、その理由を確認してください。

- ルータ 4 を通るネットワーク A への複合メトリック：20281600

- ルータ 2 を通るネットワーク A への複合メトリック：47019776

- ルータ 1 を通るネットワーク A への複合メトリック：47019776

ルータ4を通るパスは最適なメトリックであるため、ルータ3はこのルートを転送テーブルに設定し、20281600をネットワークAへの到達可能距離として使用します。ルータ3は、ルータ2と1を通るネットワークAへの報告距離を計算します。ルータ2を通るパスは47019776、ルータ1を通るパスは47019776です。これらのメトリックはどちらも到達可能距離より大きいため、ルータ 3 はどちらのルートもネットワーク A のフィージブル サクセサとして設定しません。

ルータ 3 とルータ 4 の間のリンクが停止していると仮定します。ルータ3は、ネットワークA.にルータ2に代替ルートのネイバーに受信し、クエリーをフィジブル サクセサがないか、クエリーが順にあるため、検索するトポロジ テーブルの各エントリを問い合わせます。トポロジ テーブル内にある他の唯一のエントリはルータ 1 からのもので、報告距離はルータ 3 を通る最後の既知の最適メトリックと等しくなります。ルータ 1 を通る報告距離は最後の既知の到達可能距離より小さくないため、ルータ 2 はこのルートを到達不能にマークして各近隣ルータ（この場合はルータ 1 だけ）にネットワーク A へのパスを問い合せます。

ルータ 3 はネットワーク A のクエリーをルータ 1 にも送信します。ルータ 1 は自分のトポロジ テーブルを調べて、ネットワーク A への他の唯一のパスが、ルータ 2 を通るものであり、その報告距離がルータ 3 を通る最後の既知の到達可能距離と等しいことが分かります。もう一度繰り返しますが、ルータ 2 を通る報告距離は最後の既知の到達可能距離より小さくないため、このルートはフィージブル サクセサにはなりません。ルータ 1 はこのルートを到達不能にマークして、他の唯一の近隣ルータであるルータ 2 にネットワーク A へのパスを問い合せます。

これは第一段階のクエリーです。ルータ 3 は各近隣ルータに問い合せて、ネットワーク A へのルートを探しました。次に、ルータ1とルータ2はルートを到達不能にマークし、ネットワークAへのパスを見つけようとして他の各隣接ルータに問い合せます。ルータ 2 はルータ 1 のクエリーを受信すると、自分のトポロジ テーブルを調べて送信先が到達不能にマークされていることを確認します。ルータ 2 はルータ 1 にネットワーク A は到達不能であると応答します。ルータ 1 もまた、ルータ 2 のクエリーを受信すると、ネットワーク A が到達不能であると応答します。これでルータ 1 と 2 は両方ともネットワーク A は到達不能であると判断し、ルータ 3 の最初のクエリーに応答します。ネットワークはコンバージして、すべてのルートはパッシブ状態に戻ります。

スプリット ホライズンとポイズン リバース

前の例では、ルートがループである可能性が高いかどうかを判断するためにEIGRPがフィージブルディスタンスとレポーテッドディスタンスをどのように使用するかは、スプリットホライズンには示されていません。しかし、状況によっては、EIGRP はスプリット ホライズンを使用して同様にルーティング ループを回避します。EIGRPによるスプリットホライズンの使用方法の詳細を調べる前に、スプリットホライズンとは何か、どのように動作するかを調べます。スプリット ホライズンの規則は次のとおりです。

- ルートを学習したインターフェイスから同じルートをアドバタイズしない。

たとえば、図4aでルータ1が単一のマルチポイントインターフェイス（フレームリレーなど）を介してルータ2とルータ3に接続されているとします。ルータ1がネットワークAについてルータ2から学習した場合、ルータ1は同じインターフェイスからネットワークAへのルートをルータ3にアドバタイズしません。ルータ 1 は、ルータ 3 がネットワーク A についてルータ 2 から直接学習すると想定します。

図4a

ポイズンリバースは、ルーティングループを回避するもう1つの方法です。ポイズン リバースの規則は次のとおりです。

- インターフェイスを通じてルートを学習したら、同じインターフェイスから、そのルートを到達不能としてアドバタイズする。

たとえば、図4aのルータではポイズンリバースが有効になっています。ルータ 1 はネットワーク A についてルータ 2 から学習すると、ルータ 2 およびルータ 3 へのリンクを通じてネットワーク A を到達不能としてアドバタイズします。ルータ 3 がルータ 1 を経由したネットワーク A へのパスを保持している場合、ルータ 3 は到達不能アドバタイズメントを受信したことでそのパスを削除します。EIGRP はこれら 2 つの規則を組み合せてルーティング ループを回避します。

EIGRP は次のような場面でスプリット ホライズンを使用するか、またはルートを到達不能としてアドバタイズします。

- 2台のルータが起動モードになっている（最初にトポロジテーブルを交換する）

- トポロジテーブルの変更がアドバタイズされる

- クエリが送信される

それぞれのケースを確認します。

起動モード

2 台のルータが初めて近接ルータとなる場合、両ルータは起動モード中にトポロジ テーブルを交換します。ルータは起動モード中に受信したテーブル エントリごとに、同じエントリを最大メトリックで新しい近接ルータにアドバタイズし戻します（ポイズン ルート）。

トポロジ テーブルの変更

図5では、ルータ1がバリアンスを使用して、2つのシリアルリンク間でネットワークA宛てのトラフィックのバランスを取っています。つまり、ルータ2とルータ4間の56kリンクと、ルータ3とルータ4間の128kリンクです。

図 5：

ルータ 2 はルータ 3 を経由するパスを、実行可能な後継ルータと見なしています。ルータ 2 とルータ 4 の間のリンクがダウンした場合、ルータ 2 は単にルータ 3 を経由するパス上で再コンバージします。スプリットホライズンルールは、ルートに関する学習に使用したインターフェイスからルートをアドバタイズしてはならないと規定しているため、ルータ2は通常はアップデートを送信しません。ただし、それではルータ 1 のトポロジ テーブルに無効なエントリが残ります。

ルータのトポロジテーブルで、ルータがネットワークに到達するために経由するインターフェイスが変更されると、スプリットホライズンがオフになり、古いルートがすべてのインターフェイスからポイズンリバースされます。このケースでは、ルータ 2 はこのルートのスプリット ホライズンをオフにし、ネットワーク A を到達不能としてアドバタイズします。ルータ 1 はこのアドバタイズメントを受信し、ルータ 2 を経由してネットワーク A に至るルートをルーティング テーブルからフラッシュします。

クエリ

クエリーは、クエリー内の宛先に使用するサクセサからクエリーまたは更新をルータが受信した場合にのみ、スプリットホライズンを発生させます。図6のネットワークを参照してください。

図 6

ルータ3は、ルータ4から10.1.2.0/24に関するクエリーを受信します（このクエリーはルータ1を経由して到達します）。リンクフラップなどの一時的なネットワーク状態が原因で、3台のルータにこの宛先のサクセサがない場合は、それぞれのネイバー（この場合はルータ1、2、および4）にクエリーを送信します。ただし、ルータ 3 がルータ 1 から宛先 10.1.2.0/24 に関するクエリーまたはアップデート（メトリックの変更など）を受信した場合、ルータ 3 はルータ 1 にクエリーを送信しません。これは、ルータ 3 にとってルータ 1 は 10.1.2.0/24 への後継ルータであるためです。その結果、ルータ 3 はルータ 2 とルータ 4 にだけクエリーを送信します。

Stuck In Active ルート

クエリが応答されるまでに時間がかかる場合があります。その場合、クエリーを発行したルータが応答を停止し、応答しないルータへの接続をクリアして、ネイバーセッションを再開します。これを Stuck In Active（SIA）ルートと呼びます。最も基本的な SIA ルートは、クエリーがネットワークの反対側に到達して応答が戻ってくるまでに単に時間がかかりすぎる場合に発生します。たとえば、図7では、ルータ1はルータ2からの多数のSIAルートを記録します。

図 7

調査の結果、問題はルータ 2 とルータ 3 を接続する衛星リンク上の遅延にあることがわかりました。このタイプの問題に対して実行可能なソリューションは2つあります。1つ目の方法は、クエリーを送信した後にルータがルートSIAを宣言するまでの待機時間を長くすることです。この設定は、timers active-timeコマンドで変更できます。

しかし、さらに優れた解決策として、クエリーの範囲が狭くなるようにネットワークを再設計する方法があります（つまり、ごく小数のクエリーしか衛星リンクを通過しない）。クエリーの範囲については、この記事の「クエリーの範囲」の項で説明します。ただし、クエリー範囲自体は、SIA ルートが報告される一般的な原因ではありません。多くの場合、ネットワーク上の一部のルータは、次のいずれかの理由でクエリーに応答できません。

- ルータがビジー状態でクエリに応答できない（通常はCPU使用率が高いために）。

- ルータにメモリの問題があるため、クエリーの処理や応答パケットの作成のためにメモリを割り当てることができません。

- 2台のルータ間の回線は良好ではありません。ネイバー関係を維持するために十分なパケットが通過しないにもかかわらず、ルータ間で一部のクエリーまたは応答が失われます。

- 単方向リンク（障害のためにトラフィックが一方向にしか流れないリンク）。

SIAルートのトラブルシューティング

SIAルートのトラブルシューティングを行う場合は、次の3つの手順を実行します。

1. 常にSIAとして報告されているルートを見つけます。

2. これらのルートのクエリーに対して応答し続けることができないルータを見つけます。

3. ルータがクエリーを受信または応答しない理由を見つけます。

最初のステップは簡単です。コンソールメッセージをログに記録すると、ログを簡単に調べると、SIAとしてマークされることがよくあります。2 番目のステップは 1 番目のステップほど簡単ではありません。この情報を収集するコマンドは show ip eigrp topology active です。

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

A 10.2.4.0/24, 0 successors, FD is 512640000, Q

1 replies, active 00:00:01, query-origin: Local origin

via 10.1.2.2 (Infinity/Infinity), Serial1

1 replies, active 00:00:01, query-origin: Local origin

via 10.1.3.2 (Infinity/Infinity), r, Serial3

Remaining replies:

via 10.1.1.2, r, Serial0

まだ応答していない隣接ルータは R で示されます（アクティブ タイマーによって、そのルートがどれくらいの時間アクティブであるかがわかります）。これらのネイバーは残りの応答セクションに表示されず、他のRDBの中に表示される可能性があります。未受信の応答があるルートで、ある一定の時間（通常は 2 ～ 3 分）アクティブであるルートには特に注意してください。このコマンドを何度か実行すると、どのネイバーがクエリーに応答しないか（またはどのインターフェイスに未応答のクエリーが多く存在するかなど）が分かり始めます。このネイバーを調べて、そのネイバーのいずれかからの応答を継続的に待機しているかどうかを確認します。このプロセスを繰り返して、クエリーに応答しないルータを見つけます。ルータが特定されたら、その近接ルータへのリンクや、メモリまたは CPU の使用率などに問題がないかを調べます。

クエリーの範囲が問題である場合は、SIAタイマーを増やさないでください。クエリーの範囲を狭めてください。

再配布

このセクションでは、再配布を含むさまざまなシナリオについて説明します。次の例は、再配布の設定に必要な最小限の要件を示しています。再配送によって、最適ではないルーティング、ルーティング ループ、コンバージェンス遅延などの問題が発生する可能性があります。これらの問題を回避するには、「再配布に起因する問題の回避」セクションを参照してください。

2 つの EIGRP 自律システム（AS）間の再配布

図8は、ルータが次のように設定されていることを示しています。

図 8

ルータ 1

router eigrp 2000

!--- The "2000" is the autonomous system

network 172.16.1.0 0.0.0.255

ルータ 2

router eigrp 2000

redistribute eigrp 1000 route-map to-eigrp2000

network 172.16.1.0 0.0.0.255

!

router eigrp 1000

redistribute eigrp 2000 route-map to-eigrp1000

network 10.1.0.0 0.0.255.255

route-map to-eigrp1000 deny 10

match tag 1000

!

route-map to-eigrp1000 permit 20

set tag 2000

!

route-map to-eigrp2000 deny 10

match tag 2000

!

route-map to-eigrp2000 permit 20

set tag 1000

ルータ 3

router eigrp 1000

network 10.1.0.0 0.0.255.255

ルータ3は、自律システム1000を介してネットワーク10.1.2.0/24をルータ2にアドバタイズします。ルータ2はこのルートを自律システム2000に再配布し、ルータ1にアドバタイズします。

注:EIGRP 1000からのルートは、EIGRP 2000に再配布される前に1000とタグ付けされます。EIGRP 2000からのルートをEIGRP 1000まで再配布されたループフリー トポロジを実現するために、タグ1000を持つルートが拒否されます。ルーティング プロトコルの再配送の詳細は、『ルーティング プロトコルの再配布』を参照してください。

ルータ1の場合：

one#show ip eigrp topology 10.1.2.0 255.255.255.0

IP-EIGRP topology entry for 10.1.2.0/24

State is Passive, Query origin flag is 1, 1 Successor(s), FD is 46763776

Routing Descriptor Blocks:

172.16.1.2 (Serial0), from 172.16.1.2, Send flag is 0x0

Composite metric is (46763776/46251776), Route is External

Vector metric:

Minimum bandwidth is 56 Kbit

Total delay is 41000 microseconds

Reliability is 255/255

Load is 1/255

Minimum MTU is 1500

Hop count is 2

External data:

Originating router is 172.16.1.2

AS number of route is 1000

External protocol is EIGRP, external metric is 46251776

Administrator tag is 1000 (0x000003E8)

ルータ 1 とルータ 2 間のリンクの帯域幅が 1.544Mb であるにもかかわらず、このトポロジ テーブル エントリに表示される最低帯域幅は 56k であることに注意してください。これは、EIGRPが2つのEIGRP自律システム間で再配布を行う際に、すべてのメトリックを保持することを意味します。

その他のプロトコルとの間の再配布

EIGRPと他のプロトコル（RIPやOSPFなど）の間の再配布は、すべての再配布と同じように機能します。プロトコル間で再配布を行う場合は、デフォルトメトリックを使用します。EIGRPと他のプロトコルの間で再配布を行う場合は、次の2つの問題に注意する必要があります。

- EIGRPに再配布されるルートは、常に集約されるわけではありません。「集約」の項で説明を参照してください。

- 外部 EIGRP ルートでは、管理上の距離は 170 です。

インターフェイスへのスタティックルートの再配布

インターフェイスにスタティックルートを設定し、router eigrpでnetworkコマンドを設定すると、このスタティックルートが含まれます。EIGRPは、このルートを直接接続されたインターフェイスであるかのように再配布します。

図 9

図9では、ルータ1にはインターフェイスSerial 0を介して設定されたネットワーク172.16.1.0/24へのスタティックルートがあります。

ip route 172.16.1.0 255.255.255.0 Serial0

そしてルータ 1 には、このスタティック ルートの宛先に向けられたネットワーク ステートメントもあります。

router eigrp 2000

network 10.0.0.0

network 172.16.0.0

no auto-summary

ルータ1はこのルートを再配布しますが、スタティックルートは再配布しません。これは、EIGRPがこれを直接接続されたネットワークと見なすためです。ルータ2では、次のように表示されます。

two#show ip route

....

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks

C       10.1.1.0/24 is directly connected, Serial0

D       10.1.2.0/24 [90/2169856] via 10.1.1.1, 00:00:47, Serial0

172.16.0.0/24 is subnetted, 1 subnets

D       172.16.1.0 [90/2169856] via 10.1.1.1, 00:00:47, Serial0

172.16.1.0/24へのルートは、ルータ2の内部EIGRPルートとして表示されます。

集約

EIGRPの集約には、自動集約と手動集約の2つの形式があります。

自動集約

EIGRP は、2 つの異なるメジャー ネットワークの境界を横断するごとに、自動集約を実行します。たとえば、図10では、ルータ2はルータ1に到達するために使用するインターフェイスが異なるメジャーネットワークにあるため、ルータ2はルータ1に10.0.0.0/8ネットワークのみをアドバタイズします。

図 10

ルータ1では、次のように表示されます。

one#show ip eigrp topology 10.0.0.0

IP-EIGRP topology entry for 10.0.0.0/8

State is Passive, Query origin flag is 1, 1 Successor(s), FD is 11023872

Routing Descriptor Blocks:

172.16.1.2 (Serial0), from 172.16.1.2, Send flag is 0x0

Composite metric is (11023872/10511872), Route is Internal

Vector metric:

Minimum bandwidth is 256 Kbit

Total delay is 40000 microseconds

Reliability is 255/255

Load is 1/255

Minimum MTU is 1500

Hop count is 1

このルートは内部ルートのように見られ、どのような場合も集約ルートとしてはマークされません。集約ルートの中で、このメトリックは最も優れたメトリックです。10.0.0.0ネットワークには帯域幅が56kのリンクがありますが、このルートの最小帯域幅は256kです。

集約を行うルータでは、集約アドレスに対してnull0へのルートが構築されます。

two#show ip route 10.0.0.0

Routing entry for 10.0.0.0/8, 4 known subnets

Attached (2 connections)

Variably subnetted with 2 masks

Redistributing via eigrp 2000

C       10.1.3.0/24 is directly connected, Serial2

D       10.1.2.0/24 [90/10537472] via 10.1.1.2, 00:23:24, Serial1

D       10.0.0.0/8 is a summary, 00:23:20, Null0

C       10.1.1.0/24 is directly connected, Serial1

10.0.0.0/8 へのルートは、Null0 を介して、集約としてマークされます。この集約ルートのトポロジテーブルエントリは次のようになります。

two#show ip eigrp topology 10.0.0.0

IP-EIGRP topology entry for 10.0.0.0/8

State is Passive, Query origin flag is 1, 1 Successor(s), FD is 10511872

Routing Descriptor Blocks:

0.0.0.0 (Null0), from 0.0.0.0, Send flag is 0x0

(Note: The 0.0.0.0 here means this route is originated by this router.)

Composite metric is (10511872/0), Route is Internal

Vector metric:

Minimum bandwidth is 256 Kbit

Total delay is 20000 microseconds

Reliability is 255/255

Load is 1/255

Minimum MTU is 1500

Hop count is 0

ルータ 2 に、集約の代わりに 10.0.0.0 ネットワークのコンポーネントをアドバタイズさせるには、ルータ 2 の EIGRP プロセスに no auto-summary を設定します。

ルータ2:

router eigrp 2000

network 172.16.0.0

network 10.0.0.0

no auto-summary

auto-summary をオフにすることで、ルータ 1 には 10.0.0.0 ネットワークのすべてのコンポーネントが表示されます。

one#show ip eigrp topology

IP-EIGRP Topology Table for process 2000

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

P 10.1.3.0/24, 1 successors, FD is 46354176

via 172.16.1.2 (46354176/45842176), Serial0

P 10.1.2.0/24, 1 successors, FD is 11049472

via 172.16.1.2 (11049472/10537472), Serial0

P 10.1.1.0/24, 1 successors, FD is 11023872

via 172.16.1.2 (11023872/10511872), Serial0

P 172.16.1.0/24, 1 successors, FD is 2169856

via Connected, Serial0

外部ルートの集約に関する注意点がいくつかあります。これらについては、後ほど「外部ルートの自動集約」の項で説明します。

手動集約

EIGRPを使用すると、手動集約を使用して、内部ルートと外部ルートを事実上どのビット境界でも集約できます。たとえば、図11では、ルータ2は192.168.1.0/24、192.168.2.0/24、および192.168.3.0/24をCIDRブロック192.168.0.0/22に集約します。

図 11

ルータ2の設定を次に示します。

two#show run

....

!

interface Serial0

ip address 10.1.50.1 255.255.255.0

ip summary-address eigrp 2000 192.168.0.0 255.255.252.0

no ip mroute-cache

!

....

two#show ip eigrp topology

IP-EIGRP Topology Table for process 2000

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

P 10.1.10.0/24, 1 successors, FD is 45842176

via Connected, Loopback0

P 10.1.50.0/24, 1 successors, FD is 2169856

via Connected, Serial0

P 192.168.1.0/24, 1 successors, FD is 10511872

via Connected, Serial1

P 192.168.0.0/22, 1 successors, FD is 10511872

via Summary (10511872/0), Null0

P 192.168.3.0/24, 1 successors, FD is 10639872

via 192.168.1.1 (10639872/128256), Serial1

P 192.168.2.0/24, 1 successors, FD is 10537472

via 192.168.1.1 (10537472/281600), Serial1

インターフェイスSerial0の下にあるip summary-address eigrpコマンドと、Null0を介した集約ルートを確認します。ルータ1では、これは内部ルートとして表示されます。

one#show ip eigrp topology

IP-EIGRP Topology Table for process 2000

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

P 10.1.10.0/24, 1 successors, FD is 46354176

via 10.1.50.1 (46354176/45842176), Serial0

P 10.1.50.0/24, 1 successors, FD is 2169856

via Connected, Serial0

P 192.168.0.0/22, 1 successors, FD is 11023872

via 10.1.50.1 (11023872/10511872), Serial0

外部ルートの自動集約

EIGRPは、同じメジャーネットワークのコンポーネントが内部ルートでない限り、外部ルートを自動集約しません。図12にこれを示します。

図 12

次の設定に示すように、ルータ3はredistribute connectedコマンドを使用して192.168.2.0/26と192.168.2.64/26への外部ルートをEIGRPに挿入します。

ルータ 3

interface Ethernet0

ip address 192.168.2.1 255.255.255.192

!

interface Ethernet1

ip address 192.168.2.65 255.255.255.192

!

interface Ethernet2

ip address 10.1.2.1 255.255.255.0

!router eigrp 2000

redistribute connected

network 10.0.0.0

default-metric 10000 1 255 1 1500

この設定をルータ 3 に行うと、ルータ 1 のルーティング テーブルの表示は次のようになります。

one#show ip route

....

10.0.0.0/8 is subnetted, 2 subnets

D       10.1.2.0 [90/11023872] via 10.1.50.2, 00:02:03, Serial0

C       10.1.50.0 is directly connected, Serial0

192.168.2.0/26 is subnetted, 1 subnets

D EX    192.168.2.0 [170/11049472] via 10.1.50.2, 00:00:53, Serial0

D EX    192.168.2.64 [170/11049472] via 10.1.50.2, 00:00:53, Serial0

通常、自動集約により、ルータ3は192.168.2.0/26と192.168.2.64/26のルートを1つの主要なネット宛先(192.168.2.0/24)に集約しますが、両方のルートが外部であるため、この集約は行われません。ただし、ルータ2とルータ3の間のリンクを192.168.2.128/26に再設定し、ルータ2とルータ3でこのネットワークのnetwork文を追加すると、ルータ2に192.168.2.0/24自動集約が生成されます。

ルータ 3

interface Ethernet0

ip address 192.168.2.1 255.255.255.192

!

interface Ethernet1

ip address 192.168.2.65 255.255.255.192

!

interface Serial0

ip address 192.168.2.130 255.255.255.192

!

router eigrp 2000

network 192.168.2.0

ここで、ルータ2は192.168.2.0/24の集約を生成します。

two#show ip route

....

D       192.168.2.0/24 is a summary, 00:06:48, Null0

....

ルータ 1 には集約ルートのみが表示されます。

one#show ip route

....

10.0.0.0/8 is subnetted, 1 subnets

C       10.1.1.0 is directly connected, Serial0

D    192.168.2.0/24 [90/11023872] via 10.1.50.2, 00:00:36, Serial0

プロセスと範囲の照会

ルータがネイバーからのクエリーを処理する場合、これらのルールは表に示されているように適用されます。

クエリー元

ルートの状態

アクション

近隣ルータ（現行のサクセサ以外）

passive

現在のサクセサ情報で応答します。

サクセサ

passive

新しいサクセサの検索を試行します。成功した場合は、新しい情報で応答します。失敗した場合は、宛先を到達不能としてマークし、前のサクセサを除くすべてのネイバーにクエリーを送信します。

任意の近隣ルータ

クエリーより先に、この近隣ルータを通るパスはない。

現在既知の最適なパスで応答します。

任意の近隣ルータ

クエリー前は不明

宛先が到達不能であると応答します。

近隣ルータ（現行のサクセサ以外）

active

これらの宛先への現在のサクセサがない場合（通常はtrue）、到達不能で応答します。

適切なサクセサがある場合は、現在のパス情報で応答します。

サクセサ

active

新しいサクセサの検索を試行します。成功した場合は、新しい情報で応答します。失敗した場合は、宛先を到達不能としてマークし、前のサクセサを除くすべてのネイバーにクエリーを送信します。

前の表のアクションは、ネットワークが新しいトポロジに収束する前にクエリーを受信して応答するルータの数を検出したときに、ネットワーク内のクエリーの範囲に影響を与えます。これらのルールがクエリーの管理方法にどのように影響するかを確認するには、図13のネットワークを調べます。このネットワークは通常の条件下で動作しています。

図 13

これは、ネットワーク192.168.3.0/24（右端）に関して予想されます。

- ルータ 1 には、192.168.3.0/24 へのパスが 2 つあります。

- ルータ 2 を経由 - 距離 46533485、報告距離 20307200。

- ルータ 3 を経由 - 距離 20563200、報告距離 20307200。

- ルータ 1 はルータ 3 を通るパスを選択し、ルータ 2 を通るパスをフィージブル サクセサとして保持します。

- ルータ 2 および 3 は、ルータ 4 を経由する 192.168.3.0/24 への 1 つのパスを示します。

192.168.3.0/24 に障害が起きたと仮定します。このネットワークで期待されるアクティビティは、図13a ～ 13hにこのプロセスを示します。

ルータ 5 が 192.168.3.0/24 を到達不能にマークし、ルータ 4 に問い合せます。

図13a

ルータ4は、サクセサからクエリーを受信すると、このネットワークへの新しいフィージブルサクセサの検索を試みます。見つからなかった場合、ルータ 4 は 192.168.3.0/24 を到達不能にマークし、ルータ 2 と 3 に問い合わせます。

図13b

ルータ2と3は、192.168.3.0/24への唯一の到達可能なルートを失ったことを確認し、到達不能としてマークします。ルータ2と3は両方ともルータ1にクエリーを送信します。

図13c

ルータ1は最初にルータ3からクエリーを受信し、このルートを到達不能にマークしたと仮定します。するとルータ 1 はルータ 2 からクエリーを受信します。別の順序が可能ですが、それらはすべて同じ最終結果を持っています。

図13d

ルータ1は到達不能で両方のクエリーに応答します。ルータ1は192.168.3.0/24に対してパッシブになります。

図13e

ルータ2と3はルータ4からのクエリーに応答し、ルータ2と3は192.168.3.0/24に対してパッシブになりました。

図13f

ルータ5はルータ4からの応答を受信すると、ルーティングテーブルからネットワーク192.168.3.0/24を削除します。ルータ5はネットワーク192.168.3.0/24に対してパッシブになります。ルータ5は更新をルータ4に送り返すため、ルートは他のルータのトポロジおよびルーティングテーブルから削除されます。

図13g

他にも処理するクエリーパスや順序がある場合もありますが、リンクがダウンすると、ネットワーク内のすべてのルータがネットワーク192.168.3.0/24に対するクエリーを処理します。一部のルータは複数のクエリーを処理できます（この例ではRouter One）。実際、クエリーが異なる順序でルータに到達する場合、一部のルータは3つまたは4つのクエリーを処理します。これは、EIGRP ネットワークでのクエリーの範囲が制限されていないことを示すよい例です。

集約ポイントがクエリー範囲に与える影響

同じネットワーク内の10.1.1.0/24へのパスを調べます。

- ルータ 2 は、10.1.1.0/24 ネットワークへのトポロジ テーブル エントリを保持します。コストはルータ 1 経由で 46251885 です。

- ルータ 3 は、10.1.1.0/24 ネットワークへのトポロジ テーブル エントリを保持します。コストはルータ 1 経由で 20281600 です。

- ルータ4は、メトリック20307200でルータ3を通る10.0.0.0/8ネットワークのトポロジテーブルエントリを持ちます（ルータ2と3はメジャーネットワーク境界に自動集約するため）（ルータ2を通るレポーテッドディスタンスはルータ3を通る合計メトリックより大きいため、ルータ2を通るパスはフィージブルサクセサではありません）。

図 14

ルータ 1 は 10.1.1.0/24 がダウンすると、これを到達不能にマークし、このネットワークへの新しいパスをそれぞれの近隣ルータ（ルータ 2 と 3）に問い合せます。

図14a

ルータ2は、ルータ1からクエリーを受信すると、このルートを到達不能にマークし（クエリーはサクセサから送信されるため）、ルータ4とルータ3にクエリーを送信します。

図14b

ルータ 3 は、ルータ 1 からのクエリーを受信すると、この宛先を到達不能にマークし、ルータ 2 と 4 に問い合せます。

図14c

ルータ4は、ルータ2とルータ3からクエリーを受信すると、10.1.1.0/24は到達不能であると応答します(ルータ4は10.0.0.0/8ルートしか持っていないため、問題のサブネットを認識しません)。

図14d

ルータ 2 と 3 は、10.1.1.0/24 が到達不能であることを相互に応答し合います。

図14e

これでルータ 2 と 3 に未処理のクエリーがなくなったので、両ルータはルータ 1 に 10.1.1.0/24 が到達不能であると応答します。

図14f

この場合、クエリーはルータ2および3での自動集約によってバインドされます。ルータ5はクエリプロセスに参加せず、ネットワークの再コンバージェンスにも関与しません。手動集約、自動システム ボーダー、配布リストなどによってクエリーの範囲を制限することも可能です。

AS の境界がクエリー範囲に与える影響

ルータが2つのEIGRP自律システム間でルートを再配布する場合、通常のルール内のプロセスのクエリーに応答し、他の自律システムへの新しいクエリーを開始します。たとえば、ルータ 3 に接続するネットワークへのリンクがダウンした場合、ルータ 3 はこのルートを到達不能にマークし、ルータ 2 に対して新しいパスを問い合せます。

図15a

ルータ 2 はこのネットワークが到達不能であると応答し、AS 200 へのクエリーをルータ 1 に向けはじめます。ルータ 3 は、初めのクエリーに対する応答を受信すると、このルートをテーブルから削除します。ルータ 3 は、このネットワークに対してパッシブになります。

図15b

ルータ 1 がルータ 2 に応答した後、ルートがパッシブになります。

図15c

最初のクエリーが（自律システム境界線によって範囲を制限されていたため）ネットワークの至るところに伝搬されなかったにもかかわらず、そのクエリーは新しいクエリーという形で、2 番目の AS に流出します。これにより、クエリーが応答されるまでに通過する必要があるルータの数が制限されるため、ネットワーク内のstuck in active(SIA)問題が防止されます。ただし、クエリーを処理する必要がある各ルータの全体的な問題は解決されません。この方法を使用すると、問題が悪化し、集約が行われなかったルートの自動集約が行われなくなる可能性があります（メジャーネットワークに外部コンポーネントがない限り、外部ルートは集約されません）。

配布リストがクエリー範囲に与える影響

EIGRP の配布リストは、クエリーの伝搬をブロックするのでなく、クエリーに対するどの返信も、到達不能にマークします。図16を例として使用します。

図 16

図16では、

- ルータ 3 には、そのシリアル インターフェイスに対する配布リストが適用されており、これによってネットワーク B をアドバタイズすることだけが許可されています。

- ルータ 1 とルータ 2 では、ネットワーク A がルータ 3 経由で到達可能であるとは認識されていません（ルータ 3 はルータ 1 とルータ 2 間の通過ポイントとしては使用されません）。

- ルータ3はルータ1をネットワークAへの優先パスとして使用し、ルータ2をフィージブルサクセサとしては使用しません。

ルータ 1 は、ネットワーク A への接続を失うと、このルートを到達不能にマークし、ルータ 3 にクエリーを送信します。ルータ 3 は、そのシリアル ポート上に配布リストがあるため、ネットワーク A へのパスをアドバタイズしません。

図16a

ルータ 3 はこのルートを到達不能にマークしてから、ルータ 2 に問い合せます。

図16b

ルータ2は、トポロジ テーブルを調べ、ネットワークA.に有効な接続があることを認識します。クエリーは、ルータ3の配布リストの影響を受けませんでした。

図16c

ルータ2はネットワークAに到達可能であると応答し、ルータ3には有効なルートがあります。

図16d

ルータ 3 は、ルータ 1 からのクエリーに対する応答を作成します。しかし、配布リストがあるために、ルータ 3 は、実際にはネットワーク A への有効なルートがあるにもかかわらず、ネットワーク A が到達不能と応答してしまいます。

図16e

送信パケットの速度の管理

一部のルーティングプロトコルは、コンバージ（ネットワークの変更に適応）中に低帯域幅リンクで使用可能なすべての帯域幅を消費します。EIGRPはこの輻輳を回避し、ネットワーク上でパケットが送信される速度を管理するため、使用可能な帯域幅の一部のみを使用します。EIGRPのデフォルト設定では、使用可能な帯域幅の最大50 %が使用されますが、これは次のコマンドで変更できます。

router(config-if)#

ip bandwidth-percent eigrp 2?

<1-999999>  Maximum bandwidth percentage that EIGRP can use

基本的に、EIGRPはインターフェイスで送信するパケットをキューに入れるたびに、次の式を使用して、パケットを送信するまでの待ち時間を決定します。

ip bandwidth-percent eigrp 2

- （8 * 100 * パケット サイズ [バイト]）/（帯域幅 [kbps] * 帯域幅 [%]）

たとえば、帯域幅 56k のシリアル インターフェイスで送信する 512 バイトのパケットをキューに入れる場合、EIGRP は待機します。

- （8 * 100 * 512 バイト）/（56000 bps * 帯域幅 50 %）（8 * 100 * 512）/（56000 * 50）409600 / 2800000 0.1463 秒

これにより、EIGRPがパケットを送信する前に、少なくとも512バイトのパケット（またはパケットのグループ）がこのリンクで送信できるようになります。ペーシングタイマーは、パケットがいつ送信されるかを決定し、ミリ秒単位で表します。前の例のパケットのペーシングタイムは0.1463秒です。show ip eigrp interfaceには、ペーシングタイマーを表示するフィールドがあります。

outer#show ip eigrp interface

IP-EIGRP interfaces for process 2

Xmit Queue   Mean   Pacing Time   Multicast    Pending

Interface    Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes

Se0            1        0/0        28       0/15         127           0

Se1            1        0/0        44       0/15         211           0

router#

表示されるタイムは、このインターフェイスで送信可能な最大のパケットを指す、maximum transmission unit（MTU; 最大伝送ユニット）のペーシング間隔です。

デフォルト ルーティング

EIGRP にデフォルト ルートを投入する方法は 2 つあります。スタティック ルートの再配送、または 0.0.0.0/0 への集約です。未知の宛先へのすべてのトラフィックを、ネットワーク コアのデフォルト ルートに向けたい場合は、前者の方法を使用してください。この方法では、接続をインターネットにアドバタイズします。例：

ip route 0.0.0.0 0.0.0.0 x.x.x.x (next hop to the internet)

!

router eigrp 100

redistribute static

default-metric 10000 1 255 1 1500

EIGRP に再配布されるスタティック ルートは、ネットワーク 0.0.0.0 である必要はありません。別のネットワークを使用する場合は、ip default-network コマンドを使用して、このネットワークをデフォルト ネットワークとしてマークする必要があります。

集約する場合、デフォルトルートは、リモートサイトにデフォルトルートを提供する場合にのみ機能します。集約はインターフェイスごとに設定されるため、配布リストまたはその他のメカニズムを使用して、デフォルトルートがネットワークのコアに広がるのを防ぐことができます。0.0.0.0/0 への集約は、他のルーティング プロトコルから学習したデフォルト ルートを無効にすることに注意してください。この方法でルータにデフォルトルートを設定する唯一の方法は、スタティックルートを0.0.0.0/0に設定することです(Cisco IOSソフトウェア12.0(4)Tから開始し、ip summary-address eigrpコマンドの末尾にアドミニストレーティブディスタンスを設定することもできます。したがって、ローカル集約によって0.0.0.0/0ルートが上書きされることはありません)。

router eigrp 100

network 10.0.0.0

!

interface serial 0

encapsulation frame-relay

no ip address

!

interface serial 0.1 point-to-point

ip address 10.1.1.1

frame-relay interface-dlci 10

ip summary-address eigrp 100 0.0.0.0 0.0.0.0

Load Balance

EIGRPはルーティングテーブルに最大4つの等コストのルートを設定し、ルータはこれをロードバランシングします。ロードバランスのタイプ（パケットごとまたは宛先ごと）は、ルータで実行されるスイッチングのタイプによって異なります。ただし、EIGRPは不等コストリンク上でロードバランシングを行うこともできます。

注:max-pathsを使用すると、EIGRPを設定して最大6つの等コストのルートを使用できます。

特定の宛先へのパスが4つあり、これらのパスのメトリックが次の場合です。

- パス 1：1100

- パス 2：1100

- パス 3：2000

- パス 4：4000

ルータはデフォルトで、パス1および2.でロケーション表示します。EIGRPでは、variance コマンドを使用して、トラフィックをパス3と4にも流すようにルータに指示できます。バリアンスは乗数です。トラフィックは、ベストパスにバリアンスを掛けた値よりも小さいメトリックを持つリンク上に配置されます。、ASパス3.でメトリックよりも1100 x 2 = 2200、1、2、および3のバリエーション2にロード バランシングします。同様に、パス 4 も追加するには、router eigrp コマンドでバリアンス 4 を実行してください。詳細は、『IGRP および EIGRP における不等コスト パスの負荷バランシング（バリアンス）』を参照してください。

トラフィックは、これらのルータのパス間でどのように分配されるのでしょうか。これは、最大メトリックに各パスでメトリックを分離し、最も近い整数に四捨五入し、トラフィックシェアカウントとしてこの番号を使用します。

router#show ip route 10.1.4.0

Routing entry for 10.1.4.0/24

Known via "igrp 100", distance 100, metric 12001

Redistributing via igrp 100, eigrp 100

Advertised by igrp 100 (self originated)

eigrp 100

Last update from 10.1.2.2 on Serial1, 00:00:42 ago

Routing Descriptor Blocks:

* 10.1.2.2, from 10.1.2.2, 00:00:42 ago, via Serial1

Route metric is 12001, traffic share count is 1

Total delay is 20010 microseconds, minimum bandwidth is 1000 Kbit

Reliability 1/255, minimum MTU 1 bytes

Loading 1/255, Hops 0

この例では、トラフィックシェアカウントは:

- パス 1 および 2：4000/1100 = 3

- パス 3：4000/2000 = 2

- パス 4：4000/4000 = 1

ルータはパス1上の最初の三つのパケット、パス2上の次の三つのパケット、パス3上の次の二つのパケット、およびパス4.で次のパケットを送信します。ルータは、次の3つのパケットをパス1経由で送信すると再起動し、このパターンを続行します。

注：バリアンスが設定されていても、報告された距離が特定のルートのフィージブルディスタンスよりも大きい場合、EIGRPは不等コストパスでトラフィックを送信しません。詳細は、「到達可能距離、報告距離、およびフィージブル サクセサ」の項を参照してください。

メトリックの使用

EIGRPを最初に設定するときに、EIGRPメトリックに影響を与えようとするときは、次の2つの基本的なルールに注意してください。

- 帯域幅は常にインターフェイスの実際の帯域幅に設定する必要があります。マルチポイントシリアルリンクやその他のメディア速度のミスマッチ状況は、このルールの例外です。

- EIGRPルーティングの決定に影響を与えるには、常に遅延を使用する必要があります。

EIGRP は、インターフェイス帯域幅を使用してパケットの送信速度の決定するので、これらの設定を正しく行うことが重要です。EIGRP の選択するパスに影響を与える必要がある場合は、常に遅延を使用してください。

帯域幅が小さいほど、帯域幅はメトリック全体に及ぼす影響が大きくなり、帯域幅が大きいほど、遅延はメトリック全体に及ぼす影響が大きくなります。

再配布での管理タグの使用

外部管理タグは、EIGRPと他のプロトコル間のルーティングループの再配布を中断する可能性があります。EIGRPに再配布されるルートにタグを付けると、EIGRPから外部プロトコルへの再配布をブロックできます。EIGRPでは、アドミニストレーティブ ディスタンスの変更が内部のルートだけに適用されるため、外部ルートから学習されたデフォルト ゲートウェイのアドミニストレーティブ ディスタンスを変更することはできません。メトリックを上げるには、プレフィックスリストを指定したルートマップを使用します。アドミニストレーティブディスタンスは変更しないでください。次に、これらのタグを設定する基本的な例を示します。ただし、この例では、再配布ループを解消するために使用される設定全体は示しません。

図 17

ルータ3はEIGRPに接続されたルートを再配布し、次のように表示されます。

three#show run

....

interface Loopback0

ip address 172.19.1.1 255.255.255.0

!

interface Ethernet0

ip address 172.16.1.1 255.255.255.0

loopback

no keepalive

!

interface Serial0

ip address 172.17.1.1 255.255.255.0

....

router eigrp 444

redistribute connected route-map foo

network 172.17.0.0

default-metric 10000 1 255 1 1500

....

access-list 10 permit 172.19.0.0 0.0.255.255

route-map foo permit 10

match ip address 10

set tag 1

....

three#show ip eigrp topo

IP-EIGRP Topology Table for process 444

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

P 172.17.1.0/24, 1 successors, FD is 2169856

via Connected, Serial0

via Redistributed (2169856/0)

P 172.16.1.0/24, 1 successors, FD is 281600

via Redistributed (281600/0)

P 172.19.1.0/24, 1 successors, FD is 128256, tag is 1

via Redistributed (128256/0)

EIGRPからRIPにルートを再配布するルータ2は次のように表示します。

two#show run

....

interface Serial0

ip address 172.17.1.2 255.255.255.0

!

interface Serial1

ip address 172.18.1.3 255.255.255.0

....

router eigrp 444

network 172.17.0.0

!

router rip

redistribute eigrp 444 route-map foo

network 10.0.0.0

network 172.18.0.0

default-metric 1

!

no ip classless

ip route 10.10.10.10 255.255.255.255 Serial0

route-map foo deny 10

match tag 1

!

route-map foo permit 20

....

two#show ip eigrp topo

IP-EIGRP Topology Table for process 444

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,

r - Reply status

P 172.17.1.0/24, 1 successors, FD is 2169856

via Connected, Serial0

P 172.16.1.0/24, 1 successors, FD is 2195456

via 172.17.1.1 (2195456/281600), Serial0

P 172.19.1.0/24, 1 successors, FD is 2297856, tag is 1

via 172.17.1.1 (2297856/128256), Serial0

172.19.1.0/24のタグ1に注目してください。

ルータ2によって再配布されたRIPルートを受信したルータ1は、次のように表示します。

one#show run

....

interface Serial0

ip address 172.18.1.2 255.255.255.0

no fair-queue

clockrate 1000000

router rip

network 172.18.0.0

....

one#show ip route

Gateway of last resort is not set

R    172.16.0.0/16 [120/1] via 172.18.1.3, 00:00:15, Serial0

R    172.17.0.0/16 [120/1] via 172.18.1.3, 00:00:15, Serial0

172.18.0.0/24 is subnetted, 1 subnets

C       172.18.1.0 is directly connected, Serial0

172.19.1.0/24がなくなっていることに注意してください。

EIGRPコマンド出力について

show ip eigrp traffic

このコマンドは、名前付き設定およびEIGRP自律システム（AS ）設定情報を表示するのに使用されます。このコマンドの出力は、隣接するEIGRPルータ間で交換された情報を示します。各出力フィールドの説明は、表の後にあります。

show ip eigrp traffic

設定に関する説明

- helloが送信され、受信されたhelloパケットの送信/受信show （-1927/received ~ 1930年）に送信される）。

- 送信されたアップデート パケットが送信および受信された表示/更新（20/received、39）

- 送信されたクエリー パケットを送信し、受信した手段とクエリー（10/received、18）

- 送信された応答パケットが送信および受信された表示/応答（18/received、16）

- Acksが送信され、受信した応答パケットの送信/受信スタンド（66/received、41）

- 送信されたSIAクエリーまたは送受信手段数がstuck-in-activeクエリー パケットを受信しました（0/received、0）

- 送信したスタック応答パケットが送信および受信された表示/SIA応答（0/received、0）

- helloプロセスIDはhelloプロセスID （270）です。

- PDMプロセスIDは、プロトコル依存モジュールのCisco IOSプロセスID(251)を表します。

- ソケット キューの表示EIGRP Helloプロセスのソケット キュー カウンタ（現在の0/max 2000/highest 1/drops 0）のIPアドレス。

- 入力キューはEIGRP PDMソケット キュー カウンタ（現在の0/max 2000/highest 1/drops 0）にEIGRP Helloプロセスを示します。

show ip eigrp topology

このコマンドはフィージブル サクセサのみを表示します。トポロジ テーブルのすべてのエントリを表示するには、show ip eigrp topology all-links コマンドを使用します。各出力フィールドの説明は、表の後にあります。3+

show ip eigrp topology

設定に関する説明

- A は「アクティブ」を意味します。これは、パッシブを意味するPを示す場合もあります。

- 10.2.4.0/24 は宛先またはマスクです。

- 0 successorsは、この宛先で使用可能なサクセサ（またはパス）の数を示します。サクセサが大文字の場合、ルートは移行中です。

- FD is 512640000 は、到達可能距離を示します。到達可能距離は、この宛先に到達するための最適なメトリック、もしくはルータがアクティブになった時点での既知の最適なメトリックです。

- tag is 0x0は、set tagコマンドおよびmatch tagコマンドを使用して、ルートマップで設定またはフィルタリングできます。

- Q は、クエリーが保留中であることを意味します。このフィールドには、更新が保留中であることを示すU、または応答が保留中であることを示すRを指定することもできます。

- 1 replies は、未処理の応答数を示します。

- active 00:00:01 は、このルートがアクティブであった期間を指しています。

- query origin: Local originは、クエリを発信したこのルートを示します。このフィールドは、複数のネイバーがこの宛先に対してクエリーを送信したがサクセサは送信しなかったことを示すMultiple Origins、またはサクセサがクエリーを発信したことを示すSuccessor originにすることもできます。

- via 10.1.2.2は、このルートがIPアドレス10.1.2.2のネイバーから学習されたことを示しています。このフィールドには、ネットワークがこのルータに直接接続されている場合はConnected、このルートがこのルータでEIGRPに再配布されている場合はRedistributed、このルートがこのルータで生成された集約ルートの場合はSummaryも指定できます。

- (Infinity/Infinity) は、最初のフィールドでこの近隣ルータを介してこのパスに到達するためのメトリックを示し、および 2 番目のフィールドでこの近隣ルータを介して報告された距離を示します。

- rは、このネイバーがクエリーを受け取って応答を待っていることを示します。

- Qはこのルートの送信フラグで、保留中のクエリーがあることを意味します。このフィールドには、更新が保留中であることを示すU、または応答が保留中であることを示すRを指定することもできます。

- Serial1 は、この近隣ルータに到達できるインターフェイスです。

- Via 10.1.1.2は、ネイバーがクエリーされ、応答を待っていることを示します。

- rは、このネイバーがルートについてクエリーを受け、まだ応答を受信していないことを示します。

- Serial0 は、この近隣ルータに到達できるインターフェイスです。

- 10.1.2.2(512640000/128256)経由で、Serial1はこのルートが使用されていることを示します（複数の等コストのルートがある場合に、次のパス/宛先がどのパスを通るかを示します）。

show ip eigrp topology <network>

このコマンドは、フィージブル サクセサだけでなく、この宛先のトポロジ テーブルにあるすべてのエントリを表示します。各出力フィールドの説明は、表の後にあります。

show ip eigrp topology network

設定に関する説明

- State is Passiveは、ネットワークがパッシブ状態にあることを意味します。つまり、このネットワークへのパスは検索されません。安定したネットワークでは、ルートは必ずといってよいほどパッシブ状態にあります。

- Query origin flag is 1：このフィールドは、このルートがアクティブの場合、このクエリーの発信者の情報を提供します。

- 0：このルートはアクティブですが、このルートに対するクエリーは発信されていません（フィージブルサクセサをローカルで検索します）。

- 1：このルータはこのルートに対するクエリーを発信しました（またはルートがパッシブです）。

- 2：このクエリの複数の拡散計算。このルータは複数の送信元から、このルートに対する複数のクエリーを受信しました。

- 3：このネットワークへのパスを学習し、別のルートを照会したルータ。

- 4：このルータを含む、このルートの複数のクエリーソース。これは2に似ていますが、このパスに対して未処理のクエリーを記述するクエリーのオリジン文字列があることを意味します。

- 2 Successor(s) は、このネットワークに到達可能なパスが 2 つあることを意味します。

- FD is 307200 は、このネットワークへの最適な現行メトリックを示します。ルートがアクティブな場合、このネットワークにパケットをルーティングするために以前に使用されたパスのメトリックを示します。

- Routing Descriptor Blocks：これらの各エントリは、ネットワークへの1つのパスを記述します。

- 10.1.1.2 (Ethernet1) はネットワークへのネクストホップ、およびネクストホップに到着するために経由するインターフェイスです。

- from 10.1.2.2 はこのパス情報の送信元です。

- Send flag is:

- 0x0：このエントリに関連して送信する必要があるパケットがある場合は、パケットのタイプを示します。

- 0x1：このルータはこのネットワークに対するクエリーを受信したため、ユニキャスト応答を送信する必要があります。

- 0x2：このルートはアクティブであり、マルチキャストクエリーを送信する必要があります。

- 0x3：このルートは変更されているため、マルチキャストアップデートを送信する必要があります。

- Composite metric is (307200/281600) は、ネットワークへの合計計算コストを示します。カッコ内の最初の数字は、このパスを経由するネットワークへの合計コストと、ネクストホップへのコストです。括弧内の 2 番目の数字は、報告距離、つまり、ネクストホップが使用するコストです。

- Route is Internal は、このルートがこの EIGRP AS（自律システム）の中を配送元としていることを意味します。ルートがこの EIGRP AS に再配送された場合は、このフィールドは ルートが External であることを示します。

- Vector metric は、ネットワークへのコストを計算するために EIGRP が使用する個々のメトリックを示します。EIGRPはネットワーク全体に総コスト情報を伝搬しません。ベクターメトリックは伝搬され、各ルータは個別にコストと報告距離を計算します。

- Minimum bandwidth is 10000 Kbit は、このネットワークに向かうパスの最低帯域幅を示します。

- Total delay is 2000 microseconds は、このネットワークに向かうパスの遅延の合計を示します。

- Reliability is 0/255 は信頼性係数を示します。この数値は動的に計算されますが、メトリックの計算ではデフォルトでは使用されません。

- Load is 1/255 は、リンクが伝送しているロードの量を示します。この数値は動的に計算され、EIGRPがこのパスを使用するためのコストを計算する際にはデフォルトでは使用されません。

- Minimum MTU is 1500 このフィールドはメトリック計算では使用されません。

- Hop count is 2 これはメトリック計算では使用されませんが、EIGRP AS の最大サイズを制限します。EIGRPが受け入れる最大ホップ数はデフォルトで100ですが、最大ホップ数はメトリック最大ホップ数で220に設定できます。

ルートが外部の場合、この情報が含まれます。各出力フィールドの説明は、表の後にあります。

外部ルート

設定に関する説明

- Originating Router は、これがこのルートを EIGRP AS に投入したルータであることを示しています。

- External AS は、このルートの配布元である AS（ある場合）を示します。

- External Protocol は、このルートの配布元であるプロトコル（ある場合）を示します。

- external metric は、外部プロトコルの内部メトリックを示します。

- Administrator Tagは、set tagコマンドおよびmatch tagコマンドを使用して、ルートマップで設定またはフィルタリングできます。

show ip eigrp topology [active | pending | zero-successors]

show ip eigrp topology と同じ出力形式ですが、トポロジ テーブルの一部も示します。

show ip eigrp topology all-links

show ip eigrp topology と同じ出力形式ですが、フィージブル サクセサだけではなく、トポロジ テーブルにあるすべてのリンクも表示されます。

関連情報

- IP ルーティングに関するサポート ページ

- シスコのテクニカルサポートとダウンロード