Cisco IOS Layer2 – STP PVST+の設定方法

スポンサーリンク

STPには様々な実装の規格がありますが、Cisco機はPVST+, raipd PVST+, MSTの3つの中から実装を選ぶ必要があります。このページではPVST+について説明します。

概要

cisco機器がサポートするSTPには、PVST+, rapid-PVST, MSTが存在します。このページではPVST+についてまとめます。

mode standard uplink fast
backbone fast
describe
PVST+ IEEE802.1d 実装あり
デフォルト無効
純粋なSTP(IEEE802.1d)ではなくPVST(vlan毎のSTP)です。PVSTに加え、uplink fast, backbone fastなどCisco独自の拡張機能も実装されています。
rapid PVST+ IEEE802.1w 実装あり
デフォルト有効
vlan毎のRSTP(IEE802.1w)が実装されています。vlan毎にSTPインスタンスが存在するため、vlan数が増大するとSTP計算が追いつかなくなるデメリットがあります。
MST IEEE802.1s 実装あり
デフォルト有効
複数vlanを1つのSTPインスタンスとして処理します。機能に関しては、rapid PVST+と同じです。

コマンド一覧

このシナリオで重要なコマンド一覧は以下の通りです。

Switch(config)# spanning-tree vlan <vlan> priorty <priority>
Switch(config)# spanning-tree vlan <vlan> root primary
Switch(config)# spanning-tree vlan <vlan> root secondary
Switch(config-if)# spanning-tree [ vlan <vlan> ] cost <cost>
Switch(config-if)# spanning-tree [ vlan <vlan>cost ] <cost>
Switch(config-if)# spanning-tree [ vlan <vlan> ] port-priority <priority>

構成図

以下の物理構成で動作確認を行います。

[物理構成]
                 f0/13-15+------------+f0/16-18
         ┌--------------+            +--------------┐
         │┌------------+    SW 2    +------------┐│
         ││┌----------+            +----------┐││
         │││          +---+-+-+----+          │││
 f0/13-15│││              │││f0/19-21      │││f0/16-18
     +---+-+-+----+f0/16-18  │││          +---+-+-+----+
     |            +--------------------------+            |
     |    SW 1    +--------------------------+    SW 3    |
     |            +--------------------------+            |
     +---+-+-+----+          │││  f0/13-15+---+-+-+----+
 f0/19-21│││      f0/16-18│││              │││f0/19-21
         │││          +---+-+-+----+          │││
         ││└----------+            +----------┘││
         │└------------+    SW 4    +------------┘│
         └--------------+            +--------------┘
                 f0/13-15+------------+f0/19-21

shutdownコマンドおよびswitchport trunk allowed vlanコマンドを用いて、以下のような論理構成を再現します。

 [vlan 30]
                 f0/13-15+------------+f0/16-18
         ┌--------------+            +--------------┐
         │┌------------+    SW 2    +------------┐│
         ││┌----------+            +----------┐││
         │││          +---+-+-+----+          │││
 f0/13-15│││              │││f0/19-21      │││f0/16-18
     +---+-+-+----+          │││          +---+-+-+----+
     |           |           │││          |           | 
     |    SW 1   |           │││          |    SW 3   | 
     |           |           │││          |           | 
     +---+-+-+----+          │││          +---+-+-+----+
 f0/19-21│││      f0/16-18│││              │││f0/19-21
         │││          +---+-+-+----+          │││
         ││└----------+            +----------┘││
         │└------------+    SW 4    +------------┘│
         └--------------+            +--------------┘
                 f0/13-15+------------+f0/19-21


 [vlan 60,90]
                 f0/13-15+------------+f0/16-18
         ┌--------------+            +--------------┐
         │┌------------+    SW 2    +------------┐│
         ││┌----------+            +----------┐││
         │││          +------------+          │││
 f0/13-15│││                                  │││f0/16-18
     +---+-+-+----+                          +---+-+-+----+
     |            |                          |            |
     |    SW 1    |                          |    SW 3    |
     |            |                          |            |
     +---+-+-+----+                          +---+-+-+----+
 f0/19-21│││                                  │││f0/19-21
         │││          +------------+          │││
         ││└----------+            +----------┘││
         │└------------+    SW 4    +------------┘│
         └--------------+            +--------------┘
                 f0/13-15+------------+f0/19-21
 [SW1]
vlan 30,60,90
!
interface range FastEthernet 0/13-21
 switchport mode dynamic desirable
interface range FastEthernet 0/16-18
 shutdown

 [SW2]
vlan 30,60,90
!
interface range FastEthernet 0/13-21
 switchport mode dynamic desirable
interface range FastEthernet 0/19-21
 switchport trunk allowed vlan 30

 [SW3]
vlan 30,60,90
!
interface range FastEthernet 0/13-15
 shutdown

 [SW4]
vlan 30,60,90
!
interface range FastEthernet 0/16-18
 switchport trunk allowed vlan 30

設定全文は下記ファイルです。詳細設定は下記を参照ください。

SW1
! rsrack15, sw1, 2012-05-25 04:39:50
do undebug all
no logging console
no service config
no ip domain-lookup
vtp file vlan.dat
! VTP interface control currently not supported
vtp mode Server
no vtp pruning
vtp version 1
! VTP traps generation control currently not supported
vtp domain cisco
do show vtp status
do show vlan brief
!
no vtp password
vlan 30
 name VLAN0030
vlan 60
 name VLAN0060
vlan 90
 name VLAN0090
!
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW1
!
boot-start-marker
boot-end-marker
!
no logging console
!
no aaa new-model
system mtu routing 1500
ip subnet-zero
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface FastEthernet0/1
 no shutdown
!
interface FastEthernet0/2
 no shutdown
!
interface FastEthernet0/3
 no shutdown
!
interface FastEthernet0/4
 no shutdown
!
interface FastEthernet0/5
 no shutdown
!
interface FastEthernet0/6
 no shutdown
!
interface FastEthernet0/7
 no shutdown
!
interface FastEthernet0/8
 no shutdown
!
interface FastEthernet0/9
 no shutdown
!
interface FastEthernet0/10
 no shutdown
!
interface FastEthernet0/11
 no shutdown
!
interface FastEthernet0/12
 no shutdown
!
interface FastEthernet0/13
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/14
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/15
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/16
 no shutdown
 shutdown
!
interface FastEthernet0/17
 no shutdown
 shutdown
!
interface FastEthernet0/18
 no shutdown
 shutdown
!
interface FastEthernet0/19
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/20
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/21
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/22
 no shutdown
!
interface FastEthernet0/23
 no shutdown
!
interface FastEthernet0/24
 no shutdown
!
interface GigabitEthernet0/1
 no shutdown
!
interface GigabitEthernet0/2
 no shutdown
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
control-plane
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
!
service password-recovery
!
do show ip interface brief
!
!
end
SW2
! rsrack15, sw2, 2012-05-25 04:39:50
do undebug all
no logging console
no service config
no ip domain-lookup
vtp file vlan.dat
! VTP interface control currently not supported
vtp mode Server
no vtp pruning
vtp version 1
! VTP traps generation control currently not supported
vtp domain cisco
do show vtp status
do show vlan brief
!
no vtp password
vlan 30
 name VLAN0030
vlan 60
 name VLAN0060
vlan 90
 name VLAN0090
!
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW2
!
boot-start-marker
boot-end-marker
!
no logging console
!
no aaa new-model
system mtu routing 1500
ip subnet-zero
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface FastEthernet0/1
 no shutdown
!
interface FastEthernet0/2
 no shutdown
!
interface FastEthernet0/3
 no shutdown
!
interface FastEthernet0/4
 no shutdown
!
interface FastEthernet0/5
 no shutdown
!
interface FastEthernet0/6
 no shutdown
!
interface FastEthernet0/7
 no shutdown
!
interface FastEthernet0/8
 no shutdown
!
interface FastEthernet0/9
 no shutdown
!
interface FastEthernet0/10
 no shutdown
!
interface FastEthernet0/11
 no shutdown
!
interface FastEthernet0/12
 no shutdown
!
interface FastEthernet0/13
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/14
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/15
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/16
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/17
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/18
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/19
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/20
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/21
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/22
 no shutdown
!
interface FastEthernet0/23
 no shutdown
!
interface FastEthernet0/24
 no shutdown
!
interface GigabitEthernet0/1
 no shutdown
!
interface GigabitEthernet0/2
 no shutdown
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
control-plane
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
!
service password-recovery
!
do show ip interface brief
!
!
end
SW3
! rsrack15, sw3, 2012-05-25 04:39:50
do undebug all
no logging console
no service config
no ip domain-lookup
vtp file vlan.dat
! VTP interface control currently not supported
vtp mode Server
no vtp pruning
vtp version 1
! VTP traps generation control currently not supported
vtp domain cisco
do show vtp status
do show vlan brief
!
no vtp password
vlan 30
 name VLAN0030
vlan 60
 name VLAN0060
vlan 90
 name VLAN0090
!
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW3
!
no logging console
!
no aaa new-model
ip subnet-zero
!
vtp file vlan.dat
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface FastEthernet0/1
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/2
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/3
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/4
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/5
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/6
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/7
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/8
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/9
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/10
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/11
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/12
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/13
 no shutdown
 switchport mode dynamic desirable
 shutdown
!
interface FastEthernet0/14
 no shutdown
 switchport mode dynamic desirable
 shutdown
!
interface FastEthernet0/15
 no shutdown
 switchport mode dynamic desirable
 shutdown
!
interface FastEthernet0/16
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/17
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/18
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/19
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/20
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/21
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/22
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/23
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/24
 no shutdown
 switchport mode dynamic desirable
!
interface GigabitEthernet0/1
 no shutdown
 switchport mode dynamic desirable
!
interface GigabitEthernet0/2
 no shutdown
 switchport mode dynamic desirable
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
control-plane
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
!
service password-recovery
!
do show ip interface brief
!
!
end
SW4
! rsrack15, sw4, 2012-05-25 04:39:50
do undebug all
no logging console
no service config
no ip domain-lookup
vtp file vlan.dat
! VTP interface control currently not supported
vtp mode Server
no vtp pruning
vtp version 1
! VTP traps generation control currently not supported
vtp domain cisco
do show vtp status
do show vlan brief
!
no vtp password
vlan 30
 name VLAN0030
vlan 60
 name VLAN0060
vlan 90
 name VLAN0090
!
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW4
!
no logging console
!
no aaa new-model
ip subnet-zero
!
vtp file vlan.dat
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface FastEthernet0/1
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/2
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/3
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/4
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/5
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/6
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/7
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/8
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/9
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/10
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/11
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/12
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/13
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/14
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/15
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/16
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/17
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/18
 no shutdown
 switchport trunk allowed vlan 30
 switchport mode dynamic desirable
!
interface FastEthernet0/19
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/20
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/21
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/22
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/23
 no shutdown
 switchport mode dynamic desirable
!
interface FastEthernet0/24
 no shutdown
 switchport mode dynamic desirable
!
interface GigabitEthernet0/1
 no shutdown
 switchport mode dynamic desirable
!
interface GigabitEthernet0/2
 no shutdown
 switchport mode dynamic desirable
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
control-plane
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
!
service password-recovery
!
do show ip interface brief
!
!
end

Root Bridge Election

仕様説明

以下のコマンドで、Root Bridgeとしてのbrige priorityを定義する事ができます。priorityはvlan毎の定義が可能で、bridge priorityが小さいswitchが優先されます。

Switch(config)# spanning-tree vlan <vlan> priorty <priority>

より正確な言い方をすれば、bridge IDが最も小さいスイッチがRoot Bridgeとして選出されます。Bridge IDは以下のようなフォーマットで定義されていますので、bridge priorityが未定義の状態ではMACアドレスが最も小さいbridgeがRoot Bridgeとして選出されます。

   |  4 |     12     |                  48 bits                   |
   +----+------------+--------------------------------------------+
   |    |   vlan id  |                  mac address               |
   +----+------------+--------------------------------------------+
   <----------------->
    bridge priority
   <-------------------------------------------------------------->
                          bridge id

また、PVSTはvlan毎にtreeを作成しなければならない都合上、全てのvlanに対して一意のbridge IDを付与しなければなりません。そこで、bridge priorityの下位12bitはvlan idを使用する事でbridge IDの重複を避けています。そのため、bridge IDとして操作できるのは実質上位4bitとなるので、bridge priorityは4096の倍数で指定しなければなりません

以下のコマンドを使用するとRoot Bridge, Backup Root Bridgeとなるbridge priorityを自動的に設定してくれます。

Switch(config)# spanning-tree vlan <vlan> root primary
Switch(config)# spanning-tree vlan <vlan> root secondary

Root Bridge Election

以下のようにroot bridgeを定義します。

vlan role host
30,60 Root Bridge SW1
30,60 Backup Root Bridge SW2
90 Root Bridge SW1
90 Backup Root Bridge SW3
 [SW1]
spanning-tree vlan 30,60,90 priority 0

 [SW2]
spanning-tree vlan 30,60 priority 4096

 [SW3]
spanning-tree vlan 90 priority 4096

Root brigeはshow spanning treeコマンドにより確認する事ができます。このコマンドを実行すると、自身のbridge IDとRoot Bridgeの bridge IDが表示されます。もし、自身のIDとRoot BridgeのIDが一致していれば、そのスイッチはRoot Bridgeであると判断できます。

vlan 30の設定を確認するため、vlan 30についてのBridge IDを表示させます。SW1がRoot Bridge、SW2がBackup Root Bridgeである事が読み取れます。(vlan 60,90についての出力は省略します。)

SW1#show spanning-tree vlan 30

VLAN0030
  Spanning tree enabled protocol ieee
  Root ID    Priority    30
             Address     001e.bee7.0880
             This bridge is the root
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    30     (priority 0 sys-id-ext 30)
             Address     001e.bee7.0880
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time 15

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Desg FWD 19        128.15   P2p
Fa0/14              Desg FWD 19        128.16   P2p
Fa0/15              Desg FWD 19        128.17   P2p
Fa0/19              Desg FWD 19        128.21   P2p
Fa0/20              Desg FWD 19        128.22   P2p
Fa0/21              Desg FWD 19        128.23   P2p

SW1#

Port Election

仕様説明 Root Port Election

STPは、以下の手順で各ポートの役割を決定し、Blocking portからのフレームを転送を止めることでLayer 2のループを防止します。

  • Root Bridgeを除く各スイッチについてRoot Brigeに最も近いポートをRoot Portとして選出します。
  • 各リンクについてRoot Bridgeに近いポートをDesignated Portとして選出します。
  • 上記で選ばれなかったポートをBlocking portとしてます

Root Portの選出について、もう少し詳しく考察しましょう。Root Brigeに近いかどうかの判断基準は以下の通りです。

  • Root Bridgeへのcostが最も小さいポートを選出します。
  • 上記が等しい場合は、対向機器のbridge idが最も小さいポートを選出します。
  • 上記が等しい場合は、対向機器のport priorityが最も小さいポートを選出します。

vlan 30の構成を例にとり、Root Portの選出について考察しましょう。Root BridgeではないSW2, SW3, SW4はRoot Portを選出しなければなりません。SW3のRoot Bridge選定について詳しく説明すると以下の通りです。

  • 全てのポートについてRoot Bridgeへのコストが等しいので、Root Portを選出できません。
  • SW2とSW4のbridge idを比較するとSW2の方が小さいので、f0/16-18をRoot Portの候補とします。
  • f0/16-18について対向のport priorityを比較するとf0/16が最も小さいので、f0/16をRoot Portとします。

Root Portとなるポートを図示すると以下の通りです。Root Portには”R”の記号を付与します。

 [vlan 30]
                 f0/13-15+------------+f0/16-18
         ┌------------R+            +--------------┐
         │┌------------+    SW 2    +------------┐│
         ││┌----------+  (Backup)  +----------┐││
         │││          +---+-+-+----+          │││
 f0/13-15│││              │││f0/19-21      ││Rf0/16-18
     +---+-+-+----+          │││          +---+-+-+----+
     |           |           │││          |           | 
     |    SW 1   |           │││          |    SW 3   | 
     |   (Root)  |           │││          |           | 
     +---+-+-+----+          │││          +---+-+-+----+
 f0/19-21│││      f0/16-18│││              │││f0/19-21
         │││          +---+-+-+----+          │││
         ││└----------+            +----------┘││
         │└------------+    SW 4    +------------┘│
         └------------R+            +--------------┘
                 f0/13-15+------------+f0/19-21

仕様説明 Designated Port Election

Designated Brigeに近いかどうかの判断基準もRoot Portと同じです。Cost, Bridge Priority, port priorityで判断します。

Designated Portとなるポートを図示すると以下の通りです。Designated Portには”D”の記号を付与します。SW2, SW4間リンクの判断がやや難しいですが、SW2とSW4を比較するとSW2の方がbridge idが小さいので、SW2に隣接したポートがDesignated Portになります。

 [vlan 30]
                 f0/13-15+------------+f0/16-18
         ┌------------R+            +D------------┐
         │┌------------+    SW 2    +D----------┐│
         ││┌----------+  (Backup)  +D--------┐││
         │││          +---+-+-+----+          │││
 f0/13-15DDD              DDDf0/19-21      ││Rf0/16-18
     +---+-+-+----+          │││          +---+-+-+----+
     |           |           │││          |           | 
     |    SW 1   |           │││          |    SW 3   | 
     |   (Root)  |           │││          |           | 
     +---+-+-+----+          │││          +---+-+-+----+
 f0/19-21DDD      f0/16-18│││              │││f0/19-21
         │││          +---+-+-+----+          │││
         ││└----------+            +D--------┘││
         │└------------+    SW 4    +D----------┘│
         └------------ R+            +D------------┘
                 f0/13-15+------------+f0/19-21

仕様説明 Blocking Port Election

Root PortにもDesignated Portにも選ばれなかったポートがBlocking Portとなります。vlan 30についてBlocking Portを図示すると以下の通りです。Designated Portには”×”の記号を付与します。

 [vlan 30]
                 f0/13-15+------------+f0/16-18
         ┌--------------+            +--------------┐
         │┌----------×+    SW 2    +------------┐│
         ││┌--------×+  (Backup)  +----------┐││
         │││          +---+-+-+----+          │││
 f0/13-15│││              │││f0/19-21      ××│f0/16-18
     +---+-+-+----+          │││          +---+-+-+----+
     |           |           │││          |           | 
     |    SW 1   |           │││          |    SW 3   | 
     |   (Root)  |           │││          |           | 
     +---+-+-+----+          │││          +---+-+-+----+
 f0/19-21│││      f0/16-18×××              ×××f0/19-21
         │││          +---+-+-+----+          │││
         ││└--------×+            +----------┘││
         │└----------×+    SW 4    +------------┘│
         └--------------+            +--------------┘
                 f0/13-15+------------+f0/19-21

動作確認

各ポートの役割を確認するには、show spanning-treeコマンドを使用します。Role欄がRoot, Desg, Altnとなっているのが、それぞれRoot Port, Designated Port, Blocking Portです。(なお、RSTPではBlocking Portは、役割に応じてAlternative PortとBackup Portに分かれます。紛らわしい表記なのですが、STPにおけるBlocking PortはAltnと表示させてしまうようです。)

role欄表記 説明
Root Root Port
Desg Designated Port
Altn Blocking Port
SW2#show spanning-tree vlan 30

 <omitted>

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Root FWD 19        128.15   P2p
Fa0/14              Altn BLK 19        128.16   P2p
Fa0/15              Altn BLK 19        128.17   P2p
Fa0/16              Desg FWD 19        128.18   P2p
Fa0/17              Desg FWD 19        128.19   P2p
Fa0/18              Desg FWD 19        128.20   P2p
Fa0/19              Desg FWD 19        128.21   P2p
Fa0/20              Desg FWD 19        128.22   P2p
Fa0/21              Desg FWD 19        128.23   P2p

Manipulate Port Election

仕様説明

STPは、costやport priorityを操作する事によってRoot portやDesignated portの位置を変更する事ができます。トラフィックがvlan毎に異なる経路を通るようにすれば負荷分散を実装する事ができます。(ただし、メンテナンス性が著しく低下するので、実践ではあまりお勧めはしません。)

以下のコマンドでSTPにおけるコストを定義すると、BPDUを受信する際に下記コマンドで定義されたコストを加算します。(BPDUを送信するタイミングではなくBPDUを受信するタイミングでコストを加算している事に注意して下さい。)

Switch(config-if)# spanning-tree [ vlan <vlan> ] cost <cost>

以下のコマンドでSTPにおけるport briorityを定義する事ができます。

Switch(config-if)# spanning-tree [ vlan <vlan> ] port-priority <priority>

cost manipulation

vlan 60について考えます。costやport priorityの特別な設定がなされていない場合、SW4のトラフィックはSW1へ直接転送されます。

 [SW4]
SW4#show spanning-tree vlan 60

 <omitted>

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Root FWD 19        128.13   P2p
Fa0/14              Altn BLK 19        128.14   P2p
Fa0/15              Altn BLK 19        128.15   P2p
Fa0/19              Desg FWD 19        128.19   P2p
Fa0/20              Desg FWD 19        128.20   P2p
Fa0/21              Desg FWD 19        128.21   P2p
 [vlan 60]
                 f0/13-15+------------+f0/16-18
         ┌------------R+            +D------------┐
         │┌----------×+    SW 2    +D----------┐│
         ││┌--------×+  (Backup)  +D--------┐││
         │││          +------------+          │││
 f0/13-15DDD                                  ××Rf0/16-18
     +---+-+-+----+                          +---+-+-+----+
     |           |                           |           | 
     |    SW 1   |                           |    SW 3   | 
     |   (Root)  |                           |           | 
     +---+-+-+----+                          +---+-+-+----+
 f0/19-21DDD                                  ×××f0/19-21
         │││          +------------+          │││
         ││└--------×+            +D--------┘││
         │└----------×+    SW 4    +D----------┘│
         └------------R+            +D------------┘
                 f0/13-15+------------+f0/19-21

このSW4からSW1へのトラフィックを、敢えてSW3, SW2経由にする方法について考えて見ます。SW4に以下のようなcost設定を投入します。

 [SW4]
interface range FastEthernet 0/13-15
 spanning-tree vlan 60 cost 100

Root Portの位置が変わり、SW3, SW2経由になった事が読み取れます。また、この状態を図示すると以下のようになります。

 [SW4]
SW4#show spanning-tree vlan 60

 <omitted>

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Altn BLK 100       128.13   P2p
Fa0/14              Altn BLK 100       128.14   P2p
Fa0/15              Altn BLK 100       128.15   P2p
Fa0/19              Root FWD 19        128.19   P2p
Fa0/20              Altn BLK 19        128.20   P2p
Fa0/21              Altn BLK 19        128.21   P2p

SW4#
 [vlan 60]
                 f0/13-15+------------+f0/16-18
         ┌------------R+            +D------------┐
         │┌----------×+    SW 2    +D----------┐│
         ││┌--------×+  (Backup)  +D--------┐││
         │││          +------------+          │││
 f0/13-15DDD                                  ××Rf0/16-18
     +---+-+-+----+                          +---+-+-+----+
     |           |                           |           | 
     |    SW 1   |                           |    SW 3   | 
     |   (Root)  |                           |           | 
     +---+-+-+----+                          +---+-+-+----+
 f0/19-21DDD                                  DDDf0/19-21
         │││          +------------+          │││
         ││└--------×+            +×--------┘││
         │└----------×+    SW 4    +×----------┘│
         └------------×+            +R------------┘
                 f0/13-15+------------+f0/19-21

port priority manipulation

vlan 60について考えます。SW2のRoot portは、現在f0/13になっています。このRoot portをf0/15に変更する方法について考えます。

 [SW2]
SW2#show spanning-tree vlan 60

 <omitted>

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Root FWD 19        128.15   P2p
Fa0/14              Altn BLK 19        128.16   P2p
Fa0/15              Altn BLK 19        128.17   P2p
Fa0/16              Desg FWD 19        128.18   P2p
Fa0/17              Desg FWD 19        128.19   P2p
Fa0/18              Desg FWD 19        128.20   P2p


SW2#

このような経路変更の方法は、cost調節とport priority調節の2通りの方法が可能です。もし、トポロジに大きな影響を与えたくないならば、port priorityを操作します。Root Bridgeは対向機器のport priorityを元に選出されますので、SW2のRoot Portを操作したいならば対向のSW1のport priorityを操作します。

 [SW1]
interface FastEthernet 0/14
 spanning-tree vlan 60 port-priority 16
interface FastEthernet 0/15
 spanning-tree vlan 60 port-priority 0

Root Portがf0/13からf0/15に変わった事を確認します。

 [SW2]
SW2#show spanning-tree vlan 60

 <omitted>

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/13              Altn BLK 19        128.15   P2p
Fa0/14              Altn BLK 19        128.16   P2p
Fa0/15              Root FWD 19        128.17   P2p
Fa0/16              Desg FWD 19        128.18   P2p
Fa0/17              Desg FWD 19        128.19   P2p
Fa0/18              Desg FWD 19        128.20   P2p


SW2#

対向機器のbridge priorityやport priorityを確認したい場合はshow spanning-treeコマンドにdetailを付与する事で確認する事ができます。RootBridgeがどのように選ばれたかを分析したい場合はお勧めのコマンドです。

 [SW2]
SW2#show spanning-tree vlan 60 detail

 VLAN0060 is executing the ieee compatible Spanning Tree protocol
  Bridge Identifier has priority 4096, sysid 60, address 0017.0e3f.3380
  Configured hello time 2, max age 20, forward delay 15
  Current root has priority 60, address 001e.bee7.0880
  Root port is 17 (FastEthernet0/15), cost of root path is 19
  Topology change flag not set, detected flag not set
  Number of topology changes 12 last change occurred 00:02:00 ago
          from FastEthernet0/15
  Times:  hold 1, topology change 35, notification 2
          hello 2, max age 20, forward delay 15
  Timers: hello 0, topology change 0, notification 0, aging 300

 Port 15 (FastEthernet0/13) of VLAN0060 is alternate blocking
   Port path cost 19, Port priority 128, Port Identifier 128.15.
   Designated root has priority 60, address 001e.bee7.0880
   Designated bridge has priority 60, address 001e.bee7.0880
   Designated port id is 128.15, designated path cost 0
   Timers: message age 2, forward delay 0, hold 0
   Number of transitions to forwarding state: 1
   Link type is point-to-point by default
   BPDU: sent 11, received 796

 Port 16 (FastEthernet0/14) of VLAN0060 is alternate blocking
   Port path cost 19, Port priority 128, Port Identifier 128.16.
   Designated root has priority 60, address 001e.bee7.0880
   Designated bridge has priority 60, address 001e.bee7.0880
   Designated port id is 16.16, designated path cost 0
   Timers: message age 1, forward delay 0, hold 0
   Number of transitions to forwarding state: 0
   Link type is point-to-point by default
   BPDU: sent 2, received 789

 Port 17 (FastEthernet0/15) of VLAN0060 is root forwarding
   Port path cost 19, Port priority 128, Port Identifier 128.17.
   Designated root has priority 60, address 001e.bee7.0880
   Designated bridge has priority 60, address 001e.bee7.0880
   Designated port id is 0.17, designated path cost 0
   Timers: message age 1, forward delay 0, hold 0
   Number of transitions to forwarding state: 1
   Link type is point-to-point by default
   BPDU: sent 2, received 789
タイトルとURLをコピーしました