CCNA勉強 STPについて詳しく
STP(スパニングツリープロトコル)とは、レイヤ2ネットワークでレイヤ2のループを防ぐためのプロトコル。IEEE802.1D で標準化されたプロトコル。STPでは、ループが発生しないようにSTA (スパニングツリーアルゴリズム)を使用する。
ブロッキングポートと呼ばれるポートを作成する。ブロッキングポートは、データフレームを転送しないことによりループを防ぐ。
リンクの障害児時に、自動で経路を切り替えるという機能もある。
対象 | 選出場所 | 選出方法 |
---|---|---|
ルートブリッジ | L2ネットワークに1つ | 最小ブリッジID |
DP 指定ポート | 各セグメントに1つ | 最小ルートパスコスト |
RP (ルートポート) | 各スイッチに1つ | 最小ルートパスコスト |
BP ブロッキングポート | L2ループ毎に1つ | RP、DP以外のポート |
ルートブリッジ
定期的にBPDU(デフォルトでは2秒間隔)をマルチキャストする。ブリッジID
STPが有効なスイッチは、一意のブリッジIDを持つ
最小のプライオリティを持つスイッチがルートブリッジに選定される。
ルートパスコストの出し方
ルートポート(RP)はルーとパスコストの値によって決まる。ルートブリッジから足して行って、一番コストの低いルートをコストを算出する。「例:スイッチ4までのルートが2つあって、ルートパスコストが19と4のものがあったら4の方を選択する」
RP(ルートポート)
ルートブリッジに最も近いポート。ルートブリッジに対して、パスコストが最も小さいものルートポートの決定方法
①ルートパスコストを比較
②送信元ブリッジIDを比較
③送信元ポートIDを比較
DP(指定ポート)
各セグメントでルートブリッジに最も近いポート。ルートブリッジの全てのポートは必ず指定ポートになる。最も小さいルートパスコストのRPを持つスイッチ側のポート
非指定ポート
ルートポート、指定ポートにも選出されなかった残りのポート代替ポート
非指定ポートのこと。MACアドレスの学習やデータ転送を行わない状態のことをディスカーニング状態という。ブリッジプライオリティの設定
構文 (config)#spanning-tree vlan {vlan ID} priority {priority}ルートブリッジにしたい
特定のスイッチをルートブリッジに指定する。 構文 (config)#spanning-tree vlan {vlan ID} root priority直でvlanを指定できるところが賢い。
STPポートの状態「」内は人間のタイプで表現しています。
ブロッキング BPDUを受信し、データフレームを送受信しない状態、アドレス学習もしない「完全拒否野郎」リスニング BPDUを送受信し、データフレームを送受信しない状態、アドレス学習もしない「消極的だが、空気は読む人間」
ラーニング MACアドレスの学習はするものの、データフレームを送受信しない状態「超人見知り人間」
フォワーディング 通信できる状態。データの転送をおこなう。「何でもかんでも受け入れる人間」
通信できるようにするためには、「ブロッキング」→「リスニング」→「ラーニング」→「フォワーディング」というような状態遷移をする必要がある。
このような遷移をすると、フォワーディングになるまで50秒かかってしまうので、非常に遅い。
通信できる状態にすることを「コンバージェンスを安定させる」という。
Portfast
即座にコンバージェンスを安定させるためのCisco独自の拡張機能。欠点:計算なしにフォワーディング状態にするので、接続を間違えるとループが発生する。端末が接続されているポートなど、ループが発生しないことがわかっているポートに設定する。
スイッチ間のポートでPortfastを有効にしたら、ループが発生しちゃう!
なので、スイッチ間の通信で使うトランクポートには設定することがないが、WLCとの接続点では、設定できる。
トランクポートでPortfastを有効化する。 構文 (config-if)#spanning-tree portfast trunk
全てのアクセスポートでPortfastを有効化する 構文 (config)#spanning-tree portfast default
特定のポート上でPortfastを有効化する 構文 (config-if)#spanning-tree portfast
エッジポート
RSTPでスイッチに接続されていないポートのこと。誤ってスイッチが接続されるとループが起こる可能性があるので、BDPUを受信した瞬間に標準ポートに変身する。このとき、トポロジが変わったことを認識して、TCNBDPUを生成して、ほかのスイッチに通知します
エッジポートの設定 構文 (config-if)#spanning-tree portfast edge
ディスカーニング状態 MACアドレスの学習やデータ転送を行わないポート BDPUガード Portfastが有効なポートでBDPUを受信した時、そのポートを無効にする機能。誤って、スイッチのポートでPortfastを有効にしてしまった場合に起こるループを防ぐことができる
全てのPortFastポートでBDPUガードを有効化する 構文 (config)#spanning-tree portfast bdpuguard default
特定のポートでBDPUガードを有効化する 構文 (config)#spanning-tree portfast bdpuguard enable
BDPUフィルタ portfastが有効なポートでBDPUを受信しないようにする機能。
Uplinkfast ブロッキングポートを持つスイッチで障害が発生した場合、ブロッキングになっているポートを即座にフォワーディングに切り替えるという機能。
Backbonefast ブロッキングポート以外のスイッチ(間接リンク)で障害が発生した場合、最大エージタイマーを待たずに即座に再計算を始める機能。不良BDPUを受信した時に、ルートブリッジに確認して再計算をする。
あらゆるスパニングツリープロトコル
また別名でRapid-PVSTともいう。 RSTPの有効化 構文 (config)#spanning-tree mode rapid-pvst
PVST+
VLANごとに異なるスパニングツリーを構成することができる。ルーとブリッジの位置を最適化でき、負荷分散することができる。ルートブリッジの位置を瞬時に変更でき、処理を分散できる。(あちこち移動することで、データを受けやすい位置に移動)
あちこち移動することで、CPUに負担がかかるデメリットもある。
コメントや要望があれば、下記のツイッターにDMをください。
Tweets by wallofmind2
-
CCNA メモ4
参考サイト
ネットワークエンジニアとして
TCP/IPとは?通信プロトコルの階層モデルを図解で解説
3分ネットワーキング
CCNA学習
CCNA 本まとめCCNA メモ 0
CCNAメモ 1
CCNAメモ 2
CCNAメモ 3
CCNAメモ 4
CCNAメモ 5
他のサイト
AWS クラウドプラクティショナー
クラウドプラクティショナー 自宅受験(PSI)AWS ソリューションアーキテクト アソシエイト
ソリューションアーキテクト(SAA) メモ1
ソリューションアーキテクト(SAA) メモ2
AWS アドミニストレーター アソシエイト
アドミニストレータ メモ1
アドミニストレータ メモ2
アドミニストレータ オリジナルテスト01 10問
アドミニストレータ オリジナルテスト02 10問
アドミニストレータ オリジナルテスト03 10問
アドミニストレータ オリジナルテスト04 10問
アドミニストレータ オリジナルテスト05 10問
アドミニストレータ サンプル問題2
AWS デベロッパー アソシエイト
デベロッパー メモ1
デベロッパー メモ2
デベロッパー メモ3
デベロッパー範囲 Code〇〇
デベロッパー範囲 ElasticBeantalk
デベロッパー範囲 X-Ray
デベロッパー範囲 Cognito
デベロッパー範囲 Lambda
デベロッパー オリジナルテスト01 10問
デベロッパー オリジナルテスト02 10問
デベロッパー オリジナルテスト03 10問
デベロッパー オリジナルテスト04 10問
デベロッパー オリジナルテスト05 10問
デベロッパー オリジナルテスト06 10問
デベロッパー オリジナルテスト07 10問
デベロッパー オリジナルテスト08 10問
デベロッパー オリジナルテスト09 10問
その他
Route53 独自ドメイン購入 エラー独自ドメイン CloudFront エラー
著者の他のサイト
駆け出しインフラエンジニアおすすめサイト
DynamoDBのキーをわかりやすく。育児の合間に認定デベロッパー アソシエイト