ルート・ブリッジの設定
・各スイッチにプライオリティ値を設定して,SwitchAをルート・ブリッジにする
・プライオリティ値を変えることによって,ポートの状態が変わることを確認する
ネットワーク構成(画像を別ウインドウで表示)
SwitchAのコンフィグ
!
version 12.1
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname SwitchA
!
spanning-tree mode pvst
no spanning-tree optimize bpdu transmission
spanning-tree extend system-id
spanning-tree vlan 1 priority 0 ←プライオリティ値を0に設定
!
interface FastEthernet0/1
no ip address
!
interface FastEthernet0/3
no ip address
!
interface Vlan1
no ip address
no ip route-cache
shutdown
!
line con 0
line vty 0 4
login
line vty 5 15
login
!
end
SwitchBのコンフィグ
!
version 12.1
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname SwitchB
!
spanning-tree mode pvst
no spanning-tree optimize bpdu transmission
spanning-tree extend system-id
spanning-tree vlan 1 priority 4096 ←プライオリティ値を4096に設定
!
interface FastEthernet0/1
!
interface FastEthernet0/2
!
interface Vlan1
no ip address
no ip route-cache
shutdown
!
line con 0
line vty 0 4
login
line vty 5 15
login
!
end
SwitchCのコンフィグ
!
version 12.1
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname SwitchC
!
spanning-tree mode pvst
spanning-tree extend system-id
spanning-tree vlan 1 priority 8192  ←プライオリティ値を8192に設定
!
interface FastEthernet0/2
switchport mode access
no ip address
!
interface FastEthernet0/3
switchport mode access
no ip address
!
interface Vlan1
no ip address
shutdown
!
line con 0
line vty 0 4
login
line vty 5 15
login
!
end
確認
スパニング・ツリーを運用するときに大事なのが,「どのスイッチをルート・ブリッジにするか」です。
これによってブロッキング・ポートが決まってくるからです。
ルート・ブリッジを設定する方法を見てみましょう。

●ルート・ブリッジとは?
ルート・ブリッジとは,スパニング・ツリーによって作られるツリー構造の根(ルート)となるスイッチのことです。
ルート・ブリッジになったスイッチは,2秒間隔でBPDUを出し続けます。
配下のスイッチは,このルート・ブリッジの出すBPDUを受信して,ルート・ポートや代表ポートを決めます。

では,どうやってルート・ブリッジを決めるのでしょうか。
スイッチに電源を入れるとスイッチは,自分がルート・ブリッジだと思って,BPDUをマルチキャストします。
BPDUには,必ず自分のブリッジID値を書き込みます。
このブリッジIDの値を見て,一番値の小さいブリッジID値を持つスイッチがルート・ブリッジになるのです。

ブリッジIDは,「プライオリティ」と「MACアドレス」の二つの値によって成り立っています。
プライオリティは,何も設定しなければ32768という値がデフォルトで入ります。
もう一方のMACアドレスは,スイッチが確保している最小のMACアドレスになります(たいていはVLAN1の仮想インタフェースに割り当てられるMACアドレス)。
つまり,プライオリティ値を最も小さく設定したスイッチが,ルート・ブリッジになるわけです。

●設定の確認
では,3台のスイッチを三角形につなげた状態で,SwitchAをルート・ブリッジにしてみましょう。
SwitchAにプライオリティ値を設定します。
設定できる最小値の0にします。

SwitchA(config)#
spanning-tree vlan 1 priority 0

同様に,SwichBには4096を設定します。

SwitchB(config)#spanning-tree vlan 1 priority 4096

SwitchCは,8192を設定します。

SwitchC(config)#spanning-tree vlan 1 priority 8192

設定は以上です。
これで,プライオリティ値が一番小さいSwitchAがルート・ブリッジになっているはずです。

●動作の確認
それでは,どのスイッチがルート・ブリッジになっているか確認してみましょう。
SwitchAでshow spanning-treeコマンドを入力します。

SwitchA#show spanning-tree

VLAN0001
 Spanning tree enabled protocol ieee
 Root ID  Priority  1
        Address   000a.8a7e.ebc0
        This bridge is the root
        Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec

 Bridge ID Priority  1   (priority 0 sys-id-ext 1)
        Address   000a.8a7e.ebc0
        Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec
        Aging Time 15

Interface       Role Sts  Cost     Prio.Nbr  Type
---------------- ---- --- --------- -------- -------------------
Fa0/1         Desg FWD 19       128.1   P2p
Fa0/3         Desg FWD 19       128.3   P2p


「This bridge is the root」という表示があります。
このスイッチ(SwitchA)がルート・ブリッジになったことが確認できました。

さらに表示を見てみると,このスイッチのPriorityは,0ではなくて「1」になっています。
これは,CatalystはデフォルトでPVSTで動作するためです。
PVSTは,VLANごとにスパニング・ツリーを動作させる機能です。
PVSTでは,従来16ビットあったプライオリティ値のうちの上位12ビットを「拡張システムID」として,ここにVLAN番号を記述するように再定義しました。
そのため,プライオリティ値の0に,VLAN番号の1が加わっているわけです。

シスコのスイッチがプライオリティ値を4096刻みでしか設定できないは,この拡張システムIDのためです。
例えば,プライオリティ値に2を設定しようとすると,以下のように「4096刻みでしか設定できない」という表示が出ます。

SwitchB(config)#spanning-tree vlan 1 priority 2
% Bridge Priority must be in increments of 4096.
% Allowed values are:
 0    4096  8192 12288 16384 20480 24576 28672
 32768 36864 40960 45056 49152 53248 57344 61440


プライオリティ値と拡張システムIDについての詳細は,シスコのWebページに詳しく書いてあります。

●代表ポートもブリッジIDによって決まる
ここで,SwitchBとSwitchCをつなぐLANセグメント(リンク)に注目してみます。
SwitchBの状態を見ると,Fa0/2がこのLANセグメントの代表ポートになっているのがわかります(赤字の部分)。

SwitchB#show spanning-tree

VLAN0001
 Spanning tree enabled protocol ieee
 Root ID  Priority  1
        Address   000a.8a7e.ebc0
        Cost    19
        Port    1 (FastEthernet0/1)
        Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec

 Bridge ID Priority  4097  (priority 4096 sys-id-ext 1)
       Address   000a.8a0d.4180
       Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec
       Aging Time 300

Interface        Role Sts Cost     Prio.Nbr  Type
---------------- ---- --- --------- -------- --------------------
Fa0/1         Root FWD 19      128.1   P2p
Fa0/2         Desg FWD 19      128.2   P2p


代表ポートになるのは,そのLANセグメントからルート・ブリッジに一番近い(コストが小さい)ポートです。
SwitchBとSwitchCをつなぐLANセグメントを考えてみると,SwitchBのFa0/2とSwitchCのFa0/2は,ルート・ブリッジへのコストは同じ19です。
では,なぜSwitchBのポートが代表ポートになったのでしょうか。
それは,ルート・ブリッジへのパス・コストが同じ場合は,ブリッジIDの小さいスイッチが代表ポートになるからです。

●SwitchCのプライオリティを12288へ変更
では,SwitchBのプライオリティをSwitchCより大きい12288に変更してみましょう。
すると,SwitchB-SwitchCの間にあるLANセグメントの代表ポートは,SwitchCのFa0/2になるはずです。
スパニング・ツリーによる状態変化を見るために,SwitchBにdebugコマンドを入れます。

SwitchB#debug spanning-tree events
Spanning Tree event debugging is on

そして,SwitchBのプライオリティ値を12288に変更します。

SwitchB(config)#spanning-tree vlan 1 priority 12288
SwitchB(config)#
00:12:41: setting bridge id (which=1) prio 12289 prio cfg 12288 sysid 1 (on) id 3001.000a.8a0d.4180
00:12:59: STP: VLAN0001 sent Topology Change Notice on Fa0/1
00:12:59: STP: VLAN0001 Fa0/2 -> blocking


すると,これまでフォワーディングだったFa0/2がブロッキングになったことが表示されました。
show spanning-treeでSwitchBのポートの状態を確認してみましょう。

SwitchB#show spanning-tree

VLAN0001
 Spanning tree enabled protocol ieee
 Root ID  Priority  1
        Address   000a.8a7e.ebc0
        Cost    19
        Port    1 (FastEthernet0/1)
        Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec

 Bridge ID Priority  12289 (priority 12288 sys-id-ext 1)
        Address   000a.8a0d.4180
        Hello Time  2 sec Max Age 20 sec Forward Delay 15 sec
        Aging Time 15

Interface       Role Sts  Cost     Prio.Nbr  Type
---------------- ---- --- --------- -------- --------------------
Fa0/1         Root FWD 19       128.1   P2p
Fa0/2          Altn  BLK  19      128.2   P2p


ブリッジIDが12289(プライオリティ12288+VLAN番号1)で,Fa0/2がブロックされていることがわかります。
SwitchBのブリッジIDをSwitchCより大きくしたことによって,今度はSwitchCのFa0/2のポートが代表ポートになって,代わりにSwitchBのFa0/2がブロッキングになったわけです。
スパニングツリー・ラボ
STPの基本動作
ルート・ブリッジの設定
パス・コストの設定
PortFast
UplinkFast
BackboneFast
PVST
RSTP
MSTP