UDLD について
UDLD は、光ファイバまたはツイストペア イーサネット ケーブルを介して接続されたデバイスを初期化するレイヤ 2 プロトコルです。このプロトコルは、(誤ったケーブル配線など)物理的な接続をモニタリングし、単方向リンクを検出して、スパニングツリー トポロジ ループまたはサイレント ドロップ トラフィックを回避します。
プロトコルが単方向リンクを正しく識別するには、接続されているすべてのデバイスで UDLD をサポートする必要があります。UDLD が単方向リンクを検出すると、管理上関係のあるポートをシャットダウンし、警告メッセージを送信できます。
UDLD を使用すると、単方向リンクを検出する時間は、タイマーがどのように設定されているかにより、数秒から数分の範囲で変動します。リンク ステータス メッセージは 2 秒ごとに交換されます。
Cisco IOS Release 12.2(54)SG 以降では、数百ミリ秒範囲のタイマーをサポートし、サブセカンド単一方向リンク検出をイネーブルにする拡張 Fast UDLD が追加されました。Fast UDLD を使用すると、単方向リンクを検出する時間は、1 秒未満から数秒のタイマーの範囲で変動します(検出時間もタイマーの設定方法により異なります)。リンク ステータス メッセージは 200 ミリ秒ごとに交換されます。
ここでは、次の内容について説明します。
• 「UDLD トポロジ」
• 「Fast UDLD のトポロジ」
• 「動作モード」
• 「UDLD のデフォルト ステート」
UDLD トポロジ
各スイッチはネイバー スイッチにパケットを送信できますが、パケットの送信先のスイッチからのパケットは受信できません。UDLD は、これらの一方向接続を検出し、ディセーブルにします。図 31-1 は、単方向リンクを示しています。
図 31-1 単方向リンクのトポロジ
Fast UDLD のトポロジ
図 31-2 に一般的な Fast UDLD のトポロジを示します。スイッチ A およびスイッチ B は 2 ポートの EtherChannel を介して接続され、Fast UDLD はポート単位でイネーブルになります。リンクの 1 つが単方向になった場合、Fast UDLD は、通常の UDLD よりも速くこの状況を検出し、リンクを errdisable にします。トラフィックは、EtherChannel によって 2 番めのリンクに切り替えられます。これは非常に高速で発生するため、トラフィックの損失は最小限になります。
図 31-2 Fast UDLD のトポロジ
(注) Fast UDLD の場合、Catalyst 4900M、Catalyst 4948E、Supervisor Engine 6-E、Supervisor 6L-E、Supervisor 7-E、および Supervisor Engine 7L-E は最大 32 個のポートをサポートします。
動作モード
UDLD および Fast UDLD は、次の動作モードをサポートします。
• 正常:UDLD 対応ポート(A)は 2 番目のポート(B)に定期的に UDLD プローブを送信します。ポート B が UDLD 対応でない場合、単方向リンク検出は発生しません。両方のデバイスが UDLD 対応で双方向接続が見つかった場合、プローブ メッセージが、設定済みのメッセージのタイム インターバル レートで両方向に移動します。UDLD プロトコルはプローブを受信すると、エコー メッセージをピア ポートに送信し、検出の間応答を待機することでデバイスの同期を試みます。ポート リンクがまだある場合(B が A に長いトラフィックを送信する場合)に単一方向トラフィックが検出されると、B は errdisable モードを開始し、A は undetermined とマークされますが、errdisable モードにはなりません。このモードは情報に限定されているため、現在の STP ステートで動作が続行されます。これは、STP ループを妨げませんが、潜在的に中断が少なくなります。
(注) 単方向リンクの障害はノーマル モードを使用して検出できません。
• アグレッシブ:ポート(A)がネイバーへの接続に失敗すると、2 番めのポート(B)にプローブを送信して、関係をアクティブに再確立しようとします。ポート B が応答しないと、リンクは単方向と見なされ、ポート A はサイレント ドロップ トラフィックを避けるために errdisable ステートになります。
(注) 単方向および双方向リンクの障害は、アグレッシブ モードで検出できます。
UDLD アグレッシブ モードは UDLD 通常モードと相互動作します。単方向状態が検出されると、アグレッシブ モードのリンクだけがシャットダウンされます。
UDLD のデフォルト ステート
UDLD のデフォルト ステートは次のとおりです。
• UDLD は、不要な制御トラフィック(BPDU 制御パケット)を送信しないように、銅製 LAN ポート上でローカルでディセーブルです。このプロトコルは、アクセス ポートで一般的に使用されています。
• グローバル UDLD がアクティブである場合、ファイバ ポート上の UDLD がイネーブルになります。
• Fast UDLD はすべてのポートでディセーブルです。
UDLD のデフォルト設定
表 31-1 に、UDLD のデフォルト設定を示します。
表 31-1 UDLD のデフォルト設定
|
|
UDLD グローバル イネーブル ステート |
グローバルにディセーブル |
インターフェイス別の UDLD イネーブル ステート(光ファイバ メディア用) |
すべてのイーサネット光ファイバ インターフェイスでイネーブル |
インターフェイス別の UDLD イネーブル ステート(ツイストペア(銅製)メディア用) |
すべてのイーサネット 10/100 および 1000BASE-TX インターフェイスでディセーブル |
Fast UDLD のインターフェイスごとのイネーブル ステート |
すべてのインターフェイスでディセーブル |
スイッチ上での UDLD の設定
ここでは、UDLD の設定手順について説明します。
• 「Fast UDLD の注意事項および制約事項」
• 「UDLD のグローバルなイネーブル化」
• 「インターフェイス上で UDLD をイネーブルにする方法」
• 「個々のインターフェイス上で UDLD をディセーブルにする方法」
• 「光ファイバ インターフェイス上で UDLD をディセーブルにする方法」
• 「UDLD プローブ メッセージ間隔のグローバルな設定」
• 「ディセーブルになった LAN インターフェイスのリセット」
Fast UDLD の注意事項および制約事項
Fast UDLD を使用(または設定)した場合、次の注意事項および制約事項を考慮してください。
• Fast UDLD は、デフォルトではディセーブルに設定されています。
• Fast UDLD をサポートするネットワーク デバイス間のポイントツーポイント リンクでのみ、Fast UDLD を設定します。
• Fast UDLD は、通常モードでもアグレッシブ モードでも設定できます。
• Fast UDLD ポートでは、link debounce コマンドを入力しないでください。
• 互いに接続されたネットワーク デバイス間の少なくとも 2 つのリンクで Fast UDLD を設定します。これは、false positive によるリンクの無効化の数を減らします。
• 同じネイバー デバイスに対する複数のリンクで同じエラーが同時に発生した場合、Fast UDLD は単一方向リンクを報告しません。
• Fast UDLD をサポートするポートの数は、次のように制限されています。
UDLD のグローバルなイネーブル化
アグレッシブ モードまたは通常モードで UDLD をイネーブルにし、スイッチ上のすべての光ファイバ インターフェイスに設定可能なメッセージ タイマーを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Switch(config)# udld {aggressive | enable | message time message-timer-interval} | fast-hello error-reporting |
UDLD および Fast UDLD 動作を指定します。 • aggressive:すべての光ファイバ インターフェイスにおいて、アグレッシブ モードで UDLD をイネーブルにします。 • enable:スイッチ上のすべての光ファイバ インターフェイスにおいて、通常モードで UDLD をイネーブルにします。UDLD はデフォルトでディセーブルです。 個々のインターフェイスの設定は、udld enable グローバル コンフィギュレーション コマンドの設定を上書きします。 アグレッシブおよび通常モードの詳細については、「動作モード」を参照してください。 • message time message-timer-interval:アドバタイズメント フェーズにあり、双方向と判別されたポートにおける UDLD プローブ メッセージ間の時間間隔を設定します。指定できる範囲は 1~ 90 秒です。 Cisco IOS Release 12.2(31)SGA では、タイマーの範囲は 1 ~ 90 秒です。 • fast-hello error reporting:設定されている場合、Fast UDLD は単一方向リンクを errdisable にしません。代わりに、ログ メッセージを通知するリンク障害はコンソール(Fast UDLD に限り動作)に表示されます。 |
ステップ 3 |
Switch(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Switch# show udld |
設定を確認します。 |
インターフェイス上で UDLD をイネーブルにする方法
各インターフェイス上で UDLD をイネーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# udld port Switch(config-if)# udld port aggressive Switch(config-if)# udld fast-hello interval |
特定のインターフェイスの通常モードで UDLD をイネーブルにします。光ファイバ インターフェイスの場合、このコマンドは udld enable グローバル コンフィギュレーション コマンドによる設定を上書きします。 特定のインターフェイスのアグレッシブ モードで UDLD をイネーブルにします。光ファイバ インターフェイスの場合、このコマンドは udld enable グローバル コンフィギュレーション コマンドによる設定を上書きします。 ミリ秒のインターバル値と等しいメッセージ インターバルのインターフェイスで Fast UDLD をイネーブルにします。 インターバル値の範囲は 200~1000 ミリ秒です。 Fast UDLD をイネーブルにするには、UDLD がイネーブル(明示的に設定されている、またはグローバルにイネーブル)および(双方向ステートで)動作可能である必要があります。 (注) Fast UDLD は個々 のインターフェイスでのみイネーブルにできます(グローバルにイネーブルにするコマンドはありません)。 (注) Fast UDLD は、インストールされているスーパーバイザのタイプに対応するインターフェイスの限られた数で設定またはイネーブルにのみできます。Fast UDLD でサポートされるインターフェイスの数は、show udld fast-hello コマンドを使用して表示できます。 |
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
個々のインターフェイス上で UDLD をディセーブルにする方法
各インターフェイス上で UDLD をディセーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# no udld port Switch(config-if)# no udld fast-hello |
インターフェイスで UDLD をディセーブルにします。 次が適用されます。 • 光ファイバ インターフェイスの場合、 no udld port コマンドで、インターフェイスの設定が udld enable グローバル コンフィギュレーション コマンドで作成した設定に戻ります。 • UDLD と Fast UDLD の両方で、アグレッシブ モードが設定されている場合、 no udld port aggressive コマンドを使用して、アグレッシブ モードを明示的にディセーブルにする必要があります。 • 通常モードが設定されている場合、no udld port コマンドは、UDLD と Fast UDLD の両方をディセーブルにします。 インターフェイスで Fast UDLD をディセーブルにします。インターフェイスは、Fast UDLD をイネーブルにする前の UDLD の設定に戻ります。 |
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
光ファイバ インターフェイス上で UDLD をディセーブルにする方法
特定の光ファイバ インターフェイス上で UDLD をディセーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# udld port disable Switch(config-if)# no udld fast-hello |
光ファイバ インターフェイス上で UDLD をディセーブルにし、インターフェイスのすべての UDLD、Fast UDLD の関連設定を削除します。 (注) すべての光ファイバ インターフェイスの UDLD をグローバルにイネーブルにできます。 インターフェイス上で UDLD をディセーブルにします。これで、Fast UDLD をイネーブルにする前の UDLD の設定に戻ります。 |
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
UDLD プローブ メッセージ間隔のグローバルな設定
アドバタイズ モードにあり、現在双方向に設定されているポートで、UDLD プローブ メッセージの間隔を設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config)# udld message time interval |
アドバタイズメント モードにあり、現在双方向と判別されたポートにおける UDLD プローブ メッセージ間の時間間隔を設定します。有効な値は、1 ~ 90 秒です。 (注) Cisco IOS Release 12.2(31)SGA 以前は、時間間隔は 7 ~ 90 秒でした。 Cisco IOS Release 12.2(31)SGA では、時間間隔は 1 ~ 90 秒です。 no udld message コマンドでデフォルト値(15 秒)に戻ります。 |
ステップ 2 |
Switch# show udld type-slot/ interface |
設定を確認します。 |
インターフェイス単位の Fast UDLD プローブ メッセージ間隔の設定
アドバタイズ モードにあり、インターフェイス モードで現在双方向に設定されているポートで、Fast UDLD プローブ メッセージ間隔を設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config)# udld fast-hello interval |
インターフェイス レベルで Fast UDLD プローブ メッセージ間隔を設定します。 |
ステップ 2 |
Switch# show udld fast-hello fasttype-slot/ interface |
設定を確認します。 |
ディセーブルになった LAN インターフェイスのリセット
UDLD によって errdisable ステートになったすべての LAN ポートをリセットするには、このコマンドを使用します。
|
|
Switch(config)# udld reset |
UDLD と Fast UDLD によって errdisable ステートになったすべての LAN ポートをリセットします。 |
UDLD リンク ステータスの表示
UDLD によって報告されたリンク ステータスを確認するには、次のコマンドを入力します。
Switch# show udld neighbors
Port Device Name Device ID Port ID Neighbor State
---- ----------- --------- ------- --------------
Gi1/33 FOX10430380 1 Gi1/33 Bidirectional
Gi1/34 FOX10430380 1 Gi1/34 Bidirectional
UDLD によって報告された特定のリンクのステータスを確認するには、次のコマンドを入力します。
Port enable administrative configuration setting: Enabled / in aggressive mode
Port enable operational state: Enabled / in aggressive mode
Current bidirectional state: Bidirectional
Current operational state: Advertisement - Single neighbor detected
Message interval: 15000 ms
Time out interval: 5000 ms
Port fast-hello configuration setting: Disabled
Port fast-hello interval: 0 ms
Port fast-hello operational state: Disabled
Neighbor fast-hello configuration setting: Disabled
Neighbor fast-hello interval: Unknown
Expiration time: 43300 ms
Current neighbor state: Bidirectional
Neighbor echo 1 device: FOX104303NL
Neighbor echo 1 port: Gi1/34
TLV Message interval: 15 sec
No TLV fast-hello interval
TLV CDP Device name: Switch
Fast UDLD によって報告されたリンク ステータスを確認するには、次のコマンドを入力します。
Switch# show udld fast-hello
Total ports on which fast hello can be configured: 16
Total ports with fast hello configured: 3
Total ports with fast hello operational: 3
Total ports with fast hello non-operational: 0
Port-ID Hello Neighbor-Hello Neighbor-Device Neighbor-Port Status
------- ----- -------------- --------------- ------------- ------
Gi1/45 200 200 FOX104303NL Gi1/45 Operational
Gi1/46 200 200 FOX104303NL Gi1/46 Operational
Gi1/47 200 200 FOX104303NL Gi1/47 Operational
Fast UDLD によって報告された特定のリンクのステータスを確認するには、次のコマンドを入力します。
Switch# show udld fast-hello g1/33
Port enable administrative configuration setting: Enabled / in aggressive mode
Port enable operational state: Enabled / in aggressive mode
Current bidirectional state: Bidirectional
Current operational state: Advertisement - Single neighbor detected
Time out interval: 5000 ms
Port fast-hello configuration setting: Enabled
Port fast-hello interval: 200 ms
Port fast-hello operational state: Enabled
Neighbor fast-hello configuration setting: Enabled
Neighbor fast-hello interval: 200 ms
Current neighbor state: Bidirectional
Neighbor echo 1 device: FOX104303NL
Neighbor echo 1 port: Gi1/33
TLV fast-hello interval: 200 ms
TLV CDP Device name: Switch