IP : 拡張内部ゲートウェイ ルーティング プロトコル(EIGRP)

EIGRP の「DUAL-3-SIA」エラー メッセージの意味

2016 年 10 月 27 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2008 年 12 月 18 日) | 英語版 (2015 年 8 月 22 日) | フィードバック


目次


概要

Enhanced Interior Gateway Routing Protocol(EIGRP)は、Diffusing Update Algorithm(DUAL)に基づく高度なディスタンスベクトル プロトコルです。 このプロトコルは、ネイバーからのルート アドバタイズメントに基づいて、特定の宛先へのループフリーなパスをすべて(着実に)検出する機能を持ちます。 宛先への最適パスを持つネイバーは、後継ルータと呼びます。 宛先へのループのない径路を持つ他のネイバーは、使用可能な後継ルータ(feasible successor)と呼びます。 ネットワークでのトラフィック負荷を減少させるため、EIGRP は、ネイバー関係を維持し、宛先へのすべてのループのない径路が落ちた場合に、代替パスを見つけ出すためにクエリ ープロセスを使用することで、必要な場合のみルーティング情報の交換を行います。

前提条件

要件

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

使用するコンポーネント

この文書に記載されている情報は Cisco IOS に基づいていますか。 ソフトウェア リリース 12.0。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

背景説明

有効なサクセサが存在するルートは「パッシブ」状態であると言われます。 何らかの理由で、ルータが後継ルータ経由のルートを喪失し、そのルートに実行可能な後継ルータがない場合、そのルートは「アクティブ」状態になります。 アクティブ状態になると、ルータはネイバーにクエリーを送信して、失われたルートへのパスを要求します。

EIGRP ネイバーはルートに関するクエリーを受信すると、次のように動作します。

  • 現在 EIGRP トポロジ テーブルにこのルートのエントリが含まれていない場合は、ルータは即座に、このネイバーを通るこのルートへの経路がないことを示す到達不能メッセージにてクエリーに応答します。

  • EIGRP トポロジ テーブルに、このルートの後継ルータとしてクエリーを送信したルータが記載されており、使用可能な後継ルータが存在する場合は、使用可能な後継ルータが後継ルータとして採用され、ルータはすぐにクエリーに応答します。

  • クエリー送信元のルータがこのルートのサクセサとして EIGRP トポロジ テーブルに登録されていて、フィージブル サクセサが存在しない場合、ルータは(前のサクセサと同じインターフェイスにつながるネイバーを除き)すべての EIGRP ネイバーにクエリーを送信します。 ルータは、このルートに関して発信されたすべてのクエリーへの応答を受信するまで、クエリー送信元のルータに応答しません。

  • この宛先のサクセサではないネイバーからクエリーを受信した場合、ルータは自身のサクセサ情報を使用して応答します。

EIGRP の「DUAL-3-SIA」エラー メッセージが表示される原因

DUAL-3-SIA エラー メッセージは、EIGRP ルートが「stuck in active」(SIA)状態であることを示します。

SIA 状態とは、EIGRP ルータが指定された時間(約 3 分)以内に 1 つ以上のネイバーからクエリーに対する応答を受信できなかったことを意味します。 これが発生すると、EIGRP は、応答を送信 していないネイバー関係を消して、アクティブになったルータの DUAL-3-SIA エラーメッセージをログに出力します。

例として、次のトポロジについて考察します。

/image/gif/paws/13676/18a.gif

  • R2 は R1 経由でネットワーク 10.1.2.0/24 について学習します。

  • R1 と R2 の間のリンクがダウンします。 R2 は、10.1.2.0/24 の後継ルータ(R1)を失います。

  • R2 は EIGRP トポロジ テーブルを参照してフィージブル サクセサ(到達可能条件を満たす 10.1.2.0/24 へのルートを持つ別のネイバー)を探しますが、 フィージブル サクセサは存在しません。

  • R2 は 10.1.2.0/24 に関してパッシブからアクティブに移行します。

  • R2 は R3 および R5 にクエリーを送信して、10.1.2.0/24 への別のパスがないかどうかを問い合せます。 SIA タイマーが起動します。

  • R5 は EIGRP トポロジ テーブルを参照してフィージブル サクセサを探しますが、 フィージブル サクセサは存在しません。

  • R5 は 10.1.2.0/24 に関してパッシブからアクティブに移行します。

  • R5 は自身の EIGRP ネイバー テーブルを参照して、R2(10.1.2.0/24 の前のサクセサ)に面したインターフェイスを介して EIGRP ネイバーを探します。

  • 代替パスが存在せず、クエリーを送信する他のネイバーも存在しないため、R5 は 到達不能メッセージを使用して応答します。

  • R5 は 10.1.2.0/24 に関してアクティブからパッシブに移行します。

  • R3 は EIGRP トポロジ テーブルを参照してフィージブル サクセサを探しますが、 フィージブル サクセサは存在しません。

  • R3 は 10.1.2.0/24 に関してパッシブからアクティブに移行します。

  • R3 は自身の EIGRP ネイバー テーブルを参照して、R4 を見つけます。

  • R3 はネットワーク 10.1.2.0/24 に関するクエリーを R4 に送信します。 SIA タイマーが起動します。

  • ここで、R4 は、R3 と R4 間のリンクの問題、または輻輳のいずれかによりクエリーを受信しなかったとします。 この問題は R3 で show ip eigrp neighbor コマンドまたは show ip eigrp topology active コマンドを発行することにより確認できます。 the queue count for R4 should be higher than usual.

  • R2 の SIA タイマーが約 3 分に達します。

  • R3 は R4 からの応答を受信するまで R2 のクエリーに応答できません。

  • R2 はネットワーク 10.1.2.0/24 に関する DUAL-3-SIA エラーをログに記録し、R3 とのネイバー関係をクリアします。

    DEC 20 12:12:06: %DUAL-5-NBRCHANGE: IP-EIGRP 1:
        Neighbor 10.1.4.3 (Serial0) is down: stuck in active
    DEC 20 12:15:23: %DUAL-3-SIA:
        Route 10.1.2.0/24 stuck-in-active state in IP-EIGRP 1.
    Cleaning up
  • R4 に対する R3 の再試行タイマーが時間切れになります。

    このイベントが発生すると、R3 の SIA タイマーも 3 分に達しようとしている可能性がありますが、R3 から DUAL-3-SIA エラーが報告されることはなくなります。

  • R3 が R4 とのネイバー関係をクリアします。

  • R3 は自身のログに次のエラーを記録します。

    DEC 20 12:12:01: %DUAL-5-NBRCHANGE: IP-EIGRP 1:
        Neighbor 10.1.5.4 (Serial1) is down: retry limit exceeded
  • この時点で R3 は R2 のクエリーに対して到達不能メッセージを返します。

  • R4 は自身のログに次のエラーを記録します。

    DEC 20 12:12:06: %DUAL-5-NBRCHANGE: IP-EIGRP 1:
        Neighbor 10.1.5.3 (Serial0) is down: peer restarted

DUAL-5-NBRCHANGE メッセージは、EIGRP プロセスで eigrp log-neighbor-changes コマンドが設定されている場合にだけ表示されます。 EIGRP の SIA の問題を解決できるように、すべての EIGRP ルータでこのコマンドを設定することを推奨します。 これ以外には、EIGRP ネイバーがリセットされる原因を調べたり、ネイバー関係をリセットしたルータを特定する方法はありません。

上記のように、DUAL-3-SIA エラーは、同時に発生した 2 つの関連性のない問題によって発生します。

  1. R1 と R2 の間のインターフェイスの問題。これにより、10.1.2.0/24 へのルートが R2 から消失します。 ルート フラップ現象は、実際のリンク障害以外の理由で発生した可能性があります(たとえば、リモート ユーザの接続解除による PPP 由来の経由のルートの削除)。

  2. R3 と R4 の間のインターフェイス、輻輳、または遅延の問題。

SIA エラー メッセージが発生した場合、これは、EIGRP ルーティング プロトコルが指定のルートの収束に失敗したことを示します。 通常、この失敗は、インターフェイスのフラッピング、設定の変更、またはダイヤルアップ クライアント(ルート消失は正常)によって発生します。 他の宛先へのルーティングは、EIGRP プロセスが指定のルートでアクティブ状態の場合は影響 を受けません。 応答を返さなかったネイバーの SIA タイマーが時間切れになると、そのネイバーとのネイバー関係はクリアされます(EIGRP は時間切れになったネイバーの状態を信頼しません)。 結果として、そのネイバーを超えるトポロジ テーブル上のすべてのルートは、消去されるため、再度収束する必要があります。 つまり、転送テーブルは SIA の影響を受ける可能性があり、ネットワークのコンバージ中にはパケットが廃棄される可能性があります。

「DUAL-3-SIA」の問題の解決

このセクションでは、SIA の問題のトラブルシューティングに必要な手順と、SIA の問題の一般的な原因について説明しています。

SIA はさまざまな原因で発生しますが、この問題に対しては常に同じ方法で対処する必要があります。

SIA エラーのトラブルシューティングを行うときは、(緊急度の高い順に並べられた)次の 2 つの質問に答えることにより、考えられる原因を特定する必要があります。

  1. ルータがすべてのネイバーから応答を受信しなかった理由は何か。

  2. ルートが消失した理由は何ですか。

Cisco Bug ID CSCdp33034登録ユーザ専用):Cisco IOS ソフトウェア リリース 12.1(4.4)E で有効:次の拡張機能は SIA の問題を解決しやすくすることを目的として作成されました。一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。

  • ルータが SIA イベントの発生元への証跡を残す。

  • 障害が発生しているリンクに SIA イベントの検出と修正がプッシュされる。

トラブルシューティングのための詳細をさらに収集するには、次のコマンドを使用します。

  • 両側から実行する show ip eigrp neighbors

  • show log | in DUAL

  • show ip eigrp topology active

ルータがすべてのネイバーから応答を受信しなかった理由は何か

残念ながら、この質問は、SIA のトラブルシューティングで最も難しい部分です。 デフォルトでは、SIA タイマーは 3 分強に設定されているので、応答のないルータをこの時間内に突き止める必要があります。 これを行うには、ネットワークのすべてのルータとその IP アドレスを含むネットワーク トポロジ図が必要です。 また、各ルータに Telnet パスワードが必要です。

これらの情報を入手したら、SIA を報告しているルータのところへ行き、そのルートまたは他のルートがアクティブ状態に移行するかどうかを監視します。 ルータでアクティブになっているルートを調べるには、show ip eigrp topology active コマンドを発行します。 通常時でも、このコマンドを発行すると、アクティブなルートがいくつか表示されます。 アクティブなルートが存在すること自体は問題ではありません。 1 分以上アクティブだったルートに特に注意してください。

R2# show ip eigrp topology active

IP-EIGRP Topology Table for process 1

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

A 10.1.2.0 255.255.255.0, 1 successors, FD is 2733056 1 replies,
active 0:00:38, query-origin: Multiple Origins

!--- The output above will appear on one line.

   via 10.1.4.3 (Infinity/Infinity), r, Serial0, serno 1232
   via 10.1.6.5 (Infinity/Infinity), Serial1, serno 1227

上の出力は、EIGRP が 10.1.2.0/24 に対して 38 秒間アクティブであり、2 つのネイバーにクエリーを送信し、10.1.4.3 からの応答をまだ待っていることを示します。 小文字の r は、ルータがクエリーに対する応答を待っていることを示します。 大文字の R は、このネイバーからの応答をすでに受信したことを示します。 このコマンドを発行した際のトポロジ テーブルの状態によっては、「Remaining Replies」と呼ばれる別のセクションのネイバーも参照できます。

EIGRP がどのルータからの応答を待っているかを特定したら、そのルータに Telnet 接続して、EIGRP が何を待っているかを確認できます。 この手順を繰り返すと、クエリーに応答していない実際のルータへ最終的にたどり着けます。 このルータを特定したら、そのルータがクエリーに応答していない原因のトラブルシューティングを行います。 いくつかのよくある原因を次に説明します。

古い EIGRP コードを使用している(10.3(11)、11.0(8)、および 11.1(3) よりも前の Cisco IOS リリース)

EIGRP は、Cisco IOS ソフトウェア リリース 10.3(11)、11.0(8)、および 11.1(3) で拡張されました。 これらの拡張の 1 つにより、単一の EIGRP プロセスが各リンクの利用可能な帯域幅の 50 % 以上を使用できないようになりました。 この割合は調整できるので、マルチポイント インターフェイスごとに異なる場合があります。 この拡張ではペーシングが使用されるので、輻輳したリンク上でも EIGRP パケットをより確実に配信できます。 パケット ペーシングの詳細については、ホワイト ペーパー『Enhanced Interior Gateway Routing Protocol』を参照してください。

帯域幅インターフェイス設定パラメータが欠落してるか誤っている

インターフェイスまたはサブインターフェイスの bandwidth 文が適切に設定されていない場合は、EIGRP データ パケットのペーシングが適切に行われません。 シリアル インターフェイスの帯域幅パラメータのデフォルト値は T1 または 1500 kbps です。 T1 以外のシリアル インターフェイス(フラクショナル T1 またはチャネル化 T1 インターフェイスを含む)の場合は、このパラメータを手動で設定して、各インターフェイスのクロック レートに基づく正しい帯域幅を反映させる必要があります。 EIGRP のパス選択に影響を与えることを目的として帯域幅パラメータを使用することは避けてください。

帯域幅が正しく設定されていないためにパス選択に影響が出ている

冗長パスの場合、ルーティング プロトコルに別のパスではなく特定のパスを強制的に選択させる一般的な方法は、インターフェイスの帯域幅パラメータを修正することです。 特定のインターフェイスの帯域幅値を意図的に低く設定すると、ルーティング プロトコルはそのインターフェイスを経由するパスを使用しなくなります。 この帯域幅設定は EIGRP のパケット ペーシングにも使用されるため、EIGRP ではこの方法を避ける必要があります。 インターフェイス ベースで EIGRP パス選択に意図的に変更したいときには、遅延インターフェイス構成パラメータを変更してください。

帯域幅パラメータがインターフェイスまたはサブインターフェイスで実際に利用可能な帯域幅に設定されていることを常に確認する必要があります。

EIGRP ルーティング ループ

ルーティング ループも SIA エラーの原因になります。 この問題は show ip eigrp topology active コマンドを使用して識別できます。 応答がない EIGRP クエリーの循環パターンが見つかった場合は、ルーティング ループの問題としてトラブルシューティングを続行します。

ミスマッチのプライマリおよびセカンダリ アドレス

18b.gif

---
R1
---
interface Ethernet0
   ip address 10.1.1.1 255.255.255.0
   ip address 10.2.1.1 255.255.255.0 secondary
!
---
R2
---
interface Ethernet0
   ip address 10.2.1.2 255.255.255.0
!

上の例では、R1 が R2 から EIGRP hello パケットを受信し、R2 を EIGRP ネイバーと見なします。 ただし、R1 の hello パケットは、10.1.1.1 をソースとし、R2 が認識するサブネットではないため、R2 は R1 をネイバーとみなしません。 最近のバージョンの Cisco IOS ソフトウェアでは、R2 から neighbor not on common subnet エラーが返されます。 このエラーが返されると、R1 から R2 に送信されたクエリーに対して応答が返されなくなるので、SIA が発生します。 R1 が継続的に R2 とのネイバー関係をクリアするかどうかを確認するには、show ip eigrp neighbor コマンドを使用します。

ルータのリソースが不足している

CPU、メモリ、バッファなどのシステム リソースが不足すると、ルータがクエリーに応答できなくなり、あらゆるタイプのパケットを処理できなくなることがあります。 リソースに問題があるかどうかを確認するには、該当するルータに ping を発行し、他のルータ リソースの問題と同様にトラブルシューティングを行います。

ルートが消失した理由は何か

ルート フラッピングの一般的な原因には、次のようなものがあります。

  • リンクのフラッピング。

    show interface コマンドを使用して、「interface resets」カウンタまたは「carrier transitions」カウンタが増加しているかどうかを調べます。

  • 通信品質の低いWAN リンク。

    show interface コマンドを使用して、「input errors」カウンタまたは「output errors」カウンタが増加しているかどうかを調べます。

  • ダイヤルアップ PPP リンクによって作成されたホスト ルートを集約するように設定されていないダイヤルアップ サーバ(Cisco AS5800 など)。

    デフォルトでは、PPP 接続は、32 ビットのホスト ルートを PPP リ ンクのリモート側に組み込みます。 これらのルートが集約されていない場合は、すべてのダイヤルアップ ユーザーが接続解除した際に EIGRP がアクティブになります。


関連情報


Document ID: 13676