UDLD の概要
UDLD により、光ファイバまたは銅製イーサネット ケーブル(カテゴリ 5 ケーブルなど)を使用して接続されたデバイスで、ケーブルの物理構成を監視し、単方向リンクの存在を検出できます。リンク上でローカル デバイスが送信したトラフィックを近接デバイスが受信し、近接デバイスから送信されたトラフィックをローカル デバイスが受信しない場合には、単方向リンクが発生します。単方向リンクが検出されると、UDLD が関係のあるインターフェイスをシャットダウンし、ユーザに通知します。単方向リンクは、スパニングツリー トポロジ ループをはじめ、さまざまな問題を引き起こす可能性があります。
UDLD は、レイヤ 1 メカニズムと連動し、リンクの物理的ステータスを判別するレイヤ 2 プロトコルです。レイヤ 1 では、物理的シグナリングおよび障害検出は、自動ネゴシエーションによって処理されます。UDLD は、近接デバイスの ID の検知、誤って接続されたインターフェイスのシャットダウンなど、自動ネゴシエーションでは実行不可能な処理を実行します。自動ネゴシエーションと UDLD の両方をイネーブルにすると、レイヤ 1 とレイヤ 2 の検知機能が連動し、物理的および論理的な単方向接続、および他のプロトコルの誤動作を防止します。
対になっているファイバ ストランドのどちらかの接続が切断された場合、自動ネゴシエーションがアクティブであるかぎり、そのリンクは存続できません。この場合、論理リンクは不確定で、UDLD は何の処理も行いません。レイヤ 1 から見て両方のファイバが正常に稼働していれば、レイヤ 2 の UDLD はそれらのファイバが正しく接続されているかどうか、トラフィックが正しい近接デバイス間で双方向に流れているかどうかを判別します。自動ネゴシエーションはレイヤ 1 の機能なので、このチェックは自動ネゴシエーションでは不可能です。
スイッチは、近接デバイスの UDLD がイネーブルのインターフェイスに、UDLD パケットを定期的に送信します。このパケットが一定時間内にエコー バックされるのに、特定の確認応答(エコー)が欠落している場合には、そのリンクは単方向リンクとしてフラグ付けされ、インターフェイスがシャットダウンされます。プロトコルが単方向リンクを正しく識別し、その使用を禁止するには、リンクの両側のデバイスで UDLD をサポートする必要があります。
(注) デフォルトでは、UDLD は銅製インターフェイス上ではローカルでディセーブルに設定されています。この種類のメディアは、アクセス インターフェイスに使用されることが多いので、メディアに不要な制御トラフィックを送信しないようにするためです。
図27-1 に、単方向リンクの例を示します。各スイッチは近接スイッチにパケットを送信できますが、パケットの送信先と同じスイッチからのパケットは受信できません。UDLD は単方向接続を検出し、ディセーブルにします。
図27-1 単方向リンク
UDLD のデフォルト設定
表27-1 に、UDLD のデフォルト設定を示します。
表27-1 UDLD のデフォルト設定
|
|
UDLD グローバル イネーブル ステート |
グローバルにディセーブル |
インターフェイス別の UDLD イネーブル ステート(光ファイバ メディア用) |
すべてのイーサネット光ファイバ インターフェイスでイネーブル |
インターフェイス別の UDLD イネーブル ステート(ツイストペア[銅製]メディア用) |
インターフェイス Ethernet 10/100 と 1000BASE-TX でディセーブル |
スイッチ上での UDLD の設定
ここでは、UDLD の設定手順について説明します。
• 「UDLD のグローバルなイネーブル化」
• 「インターフェイス上で UDLD をイネーブルにする方法」
• 「光ファイバ以外のインターフェイス上での UDLD のディセーブル化」
• 「光ファイバ インターフェイス上での UDLD のディセーブル化」
• 「ディセーブルになったインターフェイスのリセット」
UDLD のグローバルなイネーブル化
スイッチ上のすべての光ファイバ インターフェイス上で UDLD をグローバルにイネーブルにするには、次の作業を行います。
|
|
Switch(config)# [ no ] udld enable |
スイッチの光ファイバ インターフェイス上で UDLD をグローバルにイネーブルにします。 光ファイバ インターフェイス上で UDLD をグローバルにディセーブルにするには、 no キーワードを使用します。
(注) このコマンドは、光ファイバ インターフェイスだけを設定します。このコマンドによる設定は、個々のインターフェイスの設定によって上書きされます。
(注) Stateful Switchover(SSO)と UDLD の相互運用性に注意してください。UDLD がグローバルでイネーブルの場合、UDLD に参加しているインターフェイスは errdisable ステートになる可能性があります。そのようなインターフェイスは、SSO のあとでも errdisable ステートのままになります。SSO の間、UDLD 内部ステートはアクティブ スーパーバイザとスタンバイ スーパーバイザとの間で同期しません。その結果、UDLD がグローバルにディセーブルになってもインターフェイスは errdisable ステートのままになりますこのような状況では、「errdisable recover cause udld」コマンドを設定して errdisable ステートから抜けることができます。
|
インターフェイス上で UDLD をイネーブルにする方法
各インターフェイス上で UDLD をイネーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# udld enable |
特定のインターフェイス上で UDLD をイネーブルにします。光ファイバ インターフェイスの場合、このコマンドは udld enable グローバル コンフィギュレーション コマンドによる設定を上書きします。 |
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
光ファイバ以外のインターフェイス上での UDLD のディセーブル化
個々の光ファイバ以外のインターフェイス上で UDLD をディセーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# no udld enable |
光ファイバ以外のインターフェイス上で UDLD をディセーブルにします。
(注) 光ファイバ インターフェイスの場合、no udld enable コマンドを使用すると、インターフェイスの設定は udld enable グローバル コンフィギュレーション コマンドによる設定に戻ります。
|
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
光ファイバ インターフェイス上での UDLD のディセーブル化
特定の光ファイバ インターフェイス上で UDLD をディセーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config-if)# udld disable |
光ファイバ インターフェイス上で UDLD をディセーブルにします。
(注) このコマンドは、光ファイバ以外のインターフェイス上ではサポートされていません。
udld enable グローバル コンフィギュレーション コマンドの設定に戻すには、 no キーワードを使用します。 |
ステップ 2 |
Switch# show udld interface |
設定を確認します。 |
ディセーブルになったインターフェイスのリセット
UDLD によってシャットダウンされたすべてのインターフェイスをリセットするには、次の作業を行います。
|
|
|
UDLD によってシャットダウンされたすべてのインターフェイスをリセットします。 |