errdisable の機能
ポートがイネーブルに設定されていても、スイッチのソフトウェアがポートのエラー状態を検出した場合は、ソフトウェアがそのポートをシャットダウンします。つまり、ポートでエラー状態が発生することにより、スイッチのオペレーティング システム ソフトウェアが自動的にポートをディセーブルにします。
ポートがエラー ディセーブルになると、効果的にシャットダウンされ、このポートでトラフィックの送受信は行われなくなります。ポートのLEDがオレンジ色になり、show interfacesコマンドを発行すると、ポートのステータスがerr-disabledと表示されます。
エラー ディセーブル機能は、次の 2 つの目的を果たします。
- ポートの問題がいつどこで発生しているかを管理者に知らせます。
- モジュール上の他のポート(またはモジュール全体)が、このポートが原因で故障する可能性を軽減します。
errdisable の原因
この機能が最初に実装されたのは、スイッチの 1 つのポートで過剰コリジョンやレイト コリジョンが検出されるような、特殊なコリジョン状態を処理するためでした。連続 16 回のコリジョンがスイッチで発生し、フレームが廃棄されると、過剰コリジョンが発生します。レイトコリジョンが発生するのは、回線上のすべてのデバイスが、回線が使用中であることを認識しなかったためです。
一般的に、これらのエラーの原因には、次のようなものがあります。
- 仕様に従っていないケーブル(長すぎる、タイプが間違っている、または不良)
- Network Interface Card(NIC; ネットワーク インターフェイス カード)の不良(物理的な問題またはドライバの問題)
- ポートのデュプレックスの設定ミス
インターフェイスが errdisable 状態になる理由はさまざまです。次のような理由が考えられます。
- 二重モードの不一致
- ポート チャネルの設定ミス
- BPDU Guard 違反
- UniDirectional Link Detection(UDLD; 単方向リンク検出)条件
- レイト コリジョンの検出
- リンクフラップの検出
- セキュリティ違反
- ポート集約プロトコル(PAgP)フラップ
- レイヤ 2 トンネリング プロトコル(L2TP)ガード
- DHCP スヌーピングのレート制限
- 不適切な GBIC/Small Form Factor Pluggable(SFP; 着脱可能小型フォーム ファクタ)モジュールまたはケーブル
- アドレス解決プロトコル(ARP)の検査
- インライン パワー
errdisabled 状態の理由
show interfaces コマンドを発行すれば、ポートがエラー ディセーブルになっているかどうかを判断できます。
show logコマンドを発行してsyslogに表示することで理由を判断できます。
errdisable recovery を有効にしている場合は、show errdisable recovery コマンドを発行すると、errdisable 状態の理由を特定できます。
errdisabled 状態からのポートの復旧
errdisable 状態からポートを復旧するためには、まず根本的な問題を特定して修正し、次にポートを再びイネーブルにします。根本的な問題を修正する前にポートを再びイネーブルにすると、ポートは再びエラー ディセーブル状態になります。
例えば、EtherChannelの設定誤りや二重モードの不一致、ポートセキュリティの違反等があります。原因を解消してからイネーブルにしましょう。
errdisable recovery cause
errdisable recovery コマンドを使用すれば、指定した時間が経過した後に、ポートを自動的に再度有効にするエラーの種類を選択できます。
例えばBPDU ガードの errdisable 復旧条件をイネーブルにするには次のコマンドになります
Switch(Config)# errdisable recovery cause bpduguard
エラーの種類は以下のようなものがあります。
all | すべてのエラー原因から回復するタイマーを有効にする |
arp-inspection | arp 検査エラー無効状態から回復するタイマーを有効にする |
bpduguard | BPDU Guard エラーからの復帰タイマーを有効にする |
channel-misconfig | EtherChannel 設定ミスコンフィグエラーから復帰するタイマーを有効にする(STP) |
dhcp-rate-limit | dhcp-rate-limit エラーからの復旧タイマーの有効化 |
dtp-flap | dtp-flap エラーからの復帰タイマーの有効化 |
gbic-invalid | 無効なGBICエラーから回復するタイマーを有効にする |
inline-power | インラインパワーエラーからの復帰タイマーの有効化 |
l2ptguard | l2protocol-tunnel エラーからの復旧タイマーの有効化 |
link-flap | リンクフラップエラーからの復帰タイマー |
link-monitor-failure | リンク監視障害復旧タイマ |
loopback | ループバックエラーからの復帰タイマーの設定 |
mac-limit | mac制限無効状態からの復帰タイマーの設定 |
oam-remote-failure | OAM検出リモート障害からの復帰タイマーの設定 |
pagp-flap | ページフラップエラーからの復帰タイマーの設定 |
port-mode-failure | ポートモードチェンジの失敗から復旧するタイマーの設定 |
pppoe-ia-rate-limit | PPPoE IA レートリミットエラーからの復旧タイマーの設定 |
psecure-violation | psecure violationエラーからの復旧タイマーの設定 |
psp | psp からの復旧タイマーの有効化 |
security-violation | 802.1x違反エラーからの復帰タイマーの有効化 |
sfp-config-mismatch | SFP コンフィグ不一致エラーからの復帰タイマーの有効化 |
storm-control | ストームコントロールエラーからの復帰タイマー |
udld | udldエラーからの復帰タイマーの有効化 |
unicast-flood | ユニキャストフラッドエラーからの復帰タイマーの有効化 |
vmps | vmpsシャットダウンエラーからの復帰タイマーの有効化 |
errdisable recovery のいずれかの条件がイネーブルになっている場合は、この条件を満たすポートが 300 秒後に再びイネーブルになります。次のコマンドを発行すれば、この 300 秒というデフォルトも変更できます。
Switch(Config# errdisable recovery interval timer_interval_in_seconds
timer_interval_in_seconds | 秒数を指定します。範囲は30秒 ~ 86400秒です。 |
参考文献
Recover Errdisable Port State on Cisco IOS Platforms