ストーム制御の設定 - Catalyst
Catalystでループ対策としてストーム制御を設定するコマンドの使い方について説明したページです。ループ対策の動作や意味については「ループ対策」をご参照下さい。
ストーム制御の設定
Catalystではキープアライブと言って独自にループ検知出来る仕組みを持っており、1000Base-T等一般的に端末が接続されるインターフェースではデフォルトで有効です。但し、自身が送信したインターフェースと同じインターフェースにキープアライブが戻ってきた時しか検知出来ないため、有効な場合が限られます。
これは、応用編「ループ対策」の「ループ検知」で示した2パターン目に当たりますが、居室用スイッチではなくハブのようにMacアドレステーブルを持たない場合だけ検知出来ます。
このため、Catalystでは他のパターンもループ検知するためにはストーム制御を行ってループ対策をします。
ストーム制御の設定は以下の通りで、有効にする各インターフェースに対して設定します。
Switch# configure terminal Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# storm-control broadcast level 10 Switch(config-if)# exit
上記の設定によりブロードキャストが帯域の10%以上になるとブロードキャストの転送を行わなくなり、10%を下回るとブロードキャストの転送を再開します。
主としてエッジスイッチで使われるCatalyst2960シリーズ、3560シリーズ、3750シリーズ等では、level部分をlevel bps 10m等と指定するとビット/秒、level pps 10k等と指定するとパケット/秒でも設定出来ます。mはメガ、kはキロを示し、gも指定可能でギガを示します。
又、storm-control broadcast level 10 5等のように2つ数字を記述出来ます。左が上限値で右が下限値です。上限値を超えると転送を行わなくなり、下限値を下回ると転送が再開されます。
ストーム制御はポートチャネルに対しても設定可能です。
ストーム制御の確認
ストーム制御の確認はshow storm-controlコマンドで出来ます。
Switch# show storm-control Interface Filter State Upper Lower Current --------- ------------- ---------- --------- --------- Gi1/0/1 Forwarding 10.00% 5.00% 1.00%
Upperが上限値、Lowerが下限値、Currentが現在の通信量を示し、Forwardingとなっているため転送している事を示しています。転送しない状態ではBlockingと表示されます。
機種によって若干表示のされ方が異なります。
閾値を越えた時の動作の設定
デフォルトでは閾値を越えた場合はtrapを送信せずに一時的に転送を行わなくなり、閾値を下回ると復旧しますが、動作を変える事が出来ます。
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# storm-control action trap Switch(config-if)# exit
上記の設定によりSNMPマネージャにTRAPを送信するようになります。
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# storm-control action shutdown Switch(config-if)# exit
上記の設定によりインターフェースをerr-disableにする事が出来ます。
err-disableはインターフェースの異常を示すステータスで、一旦、err-disableになったインターフェースは手動で再起動しないと通信出来ません。再起動は以下のように行います。
Switch(config)# interface gigabitethernet1/0/1 Switch(config-if)# shutdown Switch(config-if)# no shutdown Switch(config-if)# exit
TRAPとshutdownの設定は同時に有効にする事が出来ます。
ストーム制御設定時の考慮点
上記ではブロードキャストに対するストーム制御を説明しましたが、ストーム制御はマルチキャストについても設定可能で、ユニキャストについても設定可能な機種もあります。マルチキャストフレームやユニキャストフレームが閾値を越えるとそれぞれのフレームを転送しないようになります。
パソコンから大量にフレームの送信があったり、動画の配信が他の通信に影響を与えるような場合は検討も必要ですが、ループ検知が目的の場合、ストーム制御はブロードキャストに対して設定しておけば良いと思います。ループが発生するとブロードキャストは通常、大量にループするためです。
又、インターフェースをerr-disableにしない場合は転送・転送不可を繰り返す可能性があります。転送しない間に閾値を下回り、再開後に再度閾値を越えて転送しない状態になるのを繰り返すためです。
自動的に復旧した方が手間がかからなくて良いと思いますが、ループ状態で転送・転送不可を繰り返すと不安定な状態になるため、余計なトラブルを避けたい場合はstorm-control action shutdownの設定も検討が必要です。
ストーム制御は一般的に端末や居室用のスイッチが接続されるエッジスイッチのインターフェースに対して設定します。
尚、閾値を決める際は、応用編「ループ対策」の「ストーム制御」も参考にして下さい。
- 応用編「ループ対策」