スパニングツリーの概要 〜STP設定編〜
今回の授業は、『Cisco機器でスパニングツリー(STP)を設定してみよう』です。STPを理解できていない方は、前回までの授業をしっかり受けてから設定しましょうね。コマンドだけ覚えてもダメですよ~!
今回、使用するコマンドは以下となります。
【設定コマンド】
【確認コマンド】
検証構成
今回の授業で使用する構成は以下となります。皆さんも実機があれば同じように構成図を書いて検証してみてもらえるとわかりやすくなると思います。
【物理構成】
【論理構成】
VLANの作成
それではまず、STPを動作するVLANを作成していきましょう!昔のIOSの場合は、Vlanデータベースを作成してからになるのですが、最近のIOSはグローバルコンフィグレーションモードで以下のコマンドを入力するだけで、大丈夫になっています。
【SW1】
SW1(config)#vlan 10
SW1(config-vlan)#name xxx
SW1(config-vlan)#exit
SW1(config)#vlan 20
SW1(config-vlan)#name yyy
これでSW1にVlanが作成されました。今回使用するVLAN10には『xxx』という名前を、VLAN20は『yyy』という名前を付けておきました。これと同じ設定をSW2、SW3にもしてください。
※仕事でスイッチ使用する時は、業務で使用する名前などを付けるようにして、わかりやすいようにしておきましょうね。
インターフェイスのVLANアサイン方法
スイッチのポート設定は2種類あります。1つは『アクセスポート』で、もう1つは『トランクポート』となります。
アクセスポート
アクセスポートとは、一言で言うと1つのVlanだけをアサインするポートとなります。一般的にスイッチとパソコンなどを接続する場合などに使用する設定となりますが、1つのVLAN専用スイッチとして用意された場合などにも使用することがあります。今回の構成では使用しませんが、設定例として紹介させていただきます。
【Switch】
Switch(conifg)#interface GigabitEthernet 0/1
Switch(conifg-if)#swicthport mode access
Switch(conifg-if)#switchport access vlan 10
トランクポート
トランクポートとは、前述のアクセスポートと異なり複数のVlanを通すことが出来るポートとなります。10個のVlanをアクセス設定でスイッチ間を繋げようとすると、それぞれ10個のポートを使って繋がる必要があります。しかし、トランク設定にすることで、1個のポートで10個のVlanを通すことが出来るのです。
その代わり、接続させるスイッチ同士で同じVlan番号でなければいけないので、設定には注意が必要となります。今回は、このトランク設定を使用してみたいと思います。設定は、以下のようになります。
【SW1】
SW1(config)#interface GigabitEthernet 0/1
SW1(config-if)#switchport encapsulation dot1q
SW1(config-if)#switchport mode trunk
SW1(config-if)#switchport trunk allowed vlan 10,20
SW1(config-if)#exit
SW1(config)#interface GigabitEthernet 0/2
SW1(config-if)#switchport encapsulation dot1q
SW1(config-if)#switchport mode trunk
SW1(config-if)#switchport trunk allowed vlan 10,20
これと同じ設定をSW2、SW3にもしてくれれば、準備完了です。いよいよSTPの設定に入っていきますね。
※『switchport encapsulation dot1q』の設定は表示されないこともありますが、それは、以前までISL(Inter Switch Link)というCISCO独自のプロトコルがあったからで、最近のIOSではISLはサポートしておりません。そのため、Dot1qしかないので表示されないことがありますが、無視してもらって問題ありません。
STPの設定
今回のSTP構成は、以下のようにしようと考えているので、順番に設定していきましょう!
【SW#1】
SW1(config)#spanning-tree vlan 10 priority 4096
SW1(config)#spanning-tree vlan 20 priority 4096
【SW#2】
SW2(config)#spanning-tree vlan 10 priority 8192
SW2(config)#spanning-tree vlan 20 priority 8192
【SW#3】
SW3(config)#spanning-tree vlan 10
SW3(config)#spanning-tree vlan 20
ここまで設定が出来たらケーブル接続していきましょう。今回はポートの設定をautoにしているので、スイッチ同士だけどストレートで接続出来ますね。ケーブルの種類が不明の方は、こちらを読んでくださいね。
設定の確認
設定したら、おしまいではないですよ。想定通りの結果になっていることを確認しましょう。使用するコマンドは以下です。
show spanning-tree
show spanning-tree brief
show spanning-tree blockedports
出力結果が以下の通りになっていたらOKですね!
【SW1】
~show spanning-tree~
~省略~
VLAN10 is executing the ieee compatible Spanning Tree protocol
Bridge Identifier has priority 4096, address xxxx.xxxx.xxxx
Configured hello time 2, max age 20, forward delay 15
We are the root of the spanning tree
Topology change flag not set, detected flag not set
Number of topology changes 1 last change occurred 00:19:09 ago
from FastEthernet0/1
Times: hold 1, topology change 35, notification 2
hello 2, max age 20, forward delay 15
Timers: hello 1, topology change 0, notification 0, aging 300Port 1 (FastEthernet0/1) of VLAN10 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.1.
Designated root has priority 4096, address xxxx.xxxx.xxxx
Designated bridge has priority 4096, address xxxx.xxxx.xxxx
Designated port id is 128.1, designated path cost 0
Timers: message age 0, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 593, received 3Port 2 (FastEthernet0/2) of VLAN10 is forwarding
Port path cost 19, Port priority 128, Port Identifier 128.2.
Designated root has priority 4096, address xxxx.xxxx.xxxx
Designated bridge has priority 4096, address xxxx.xxxx.xxxx
Designated port id is 128.2, designated path cost 0
Timers: message age 0, forward delay 0, hold 0
Number of transitions to forwarding state: 1
BPDU: sent 568, received 0~省略~
『We are the root of the spanning tree』と表示されている通り、この機器(SW1)がルートブリッジであることがわかりますね。
~show spanning-tree brief~
~省略~
VLAN10
Spanning tree enabled protocol ieee
Root ID Priority 4096
Address xxxx.xxxx.xxxx
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 secBridge ID Priority 4096
Address xxxx.xxxx.xxxx
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300Interface Designated
Name Port ID Prio Cost Sts Cost Bridge ID Port ID
——————– ——- —- —– — —– ——————– ——-
FastEthernet0/1 128.1 128 19 FWD 0 4096 xxxx.xxxx.xxxx 128.1
FastEthernet0/2 128.2 128 19 FWD 0 4096 xxxx.xxxx.xxxx 128.2~省略~
ここにも『This bridge is the root』と表示されていますね。これもこの機器がルートブリッジであることが記載されていますね。また、
~show spanning-tree blockedports~
Name Blocked Interfaces List
——————– ————————————Number of blocked ports (segments) in the system : 0
このSW1は、ブロッキングポートは持たない設計をしているので、このように表示されるはずです。今回、SW3がブロッキングポートを所有するので、SW3ではこのように表示されます。
【SW3】
~show spanning-tree blockedports~
Name Blocked Interfaces List
——————– ————————————
VLAN10 Fa0/2
VLAN20 Fa0/2Number of blocked ports (segments) in the system : 2
障害時のステータス確認
スイッチ#1とスイッチ#2間のLANケーブルを抜線してみてください。正常時ではブロッキングポートとなっていた、スイッチ3のポートFa0/2がフォワーディングポートに移行されているはずです。以下のようなステータスになっていれば合格ですね!
【SW3】
Name Blocked Interfaces List
——————– ————————————Number of blocked ports (segments) in the system : 0
まとめ
みなさん、いかがだったでしょうか?今回はSTPの基本設定について書いてみましたが、理解出来ましたでしょうか?授業の中ではすべての機器のステータスを取り上げることは出来ませんでしたが、自宅ラボがある方はちゃんと確認してみるようにしてください。
sw3に対しては、priority値の設定は不要なのですか?
華梨さん
コメントありがとうございます!
設計次第とはなりますが、今回の授業ではsw3にpriority値の設定は不要になります。
それはsw3をルートブリッジにしようとしていないからになります。
たくさんの授業を読んでいただいているようですね。ありがとうございます。
他にも気になることがあれば、お問い合わせページからでも、ツイッターのDMからでもご連絡ください。出来るだけ丁寧に説明させていただきます。