VTPの設定
・VTPを使ってVLAN情報を他のスイッチに通知する
・VTPサーバー,VTPクライアント,VTPトランスペアレントの動作を確認する
ネットワーク構成(画像を別ウインドウで表示)
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
!
interface FastEthernet0/1
switchport access vlan 10 ←この(アクセスリンクの)ポートをVLAN10に所属させる
switchport mode access
no ip address
!
interface FastEthernet0/12
switchport mode trunk ←このポートをトランク・ポートにする
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
!
interface FastEthernet0/12
switchport mode trunk ←このポートをトランク・ポートにする
!
interface FastEthernet0/24
switchport mode trunk ←このポートをトランク・ポートにする
!
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
!
interface FastEthernet0/1
switchport access vlan 10 ←この(アクセスリンクの)ポートをVLAN10に所属させる
switchport mode access
no ip address
!
interface FastEthernet0/24
switchport trunk encapsulation dot1q ←このスイッチはIEEE802.1QとISLを選べるのでIEEE802.1Qを指定する
switchport mode trunk ←このポートをトランク・ポートにする
no ip address
!
interface Vlan1
no ip address
shutdown
!
line con 0
line vty 0 4
login
line vty 5 15
login
!
end
確認
VTPを使うと複数台のスイッチでVLAN情報を共有させることができます。
スイッチの台数が多くなると,いちいち1台ずつVLAN番号を設定しなくてよくなります。
VTPの動作を確認してみましょう。

●VTPとは?
VTP(VLAN trunking protocol)は,スイッチに設定したVLAN情報をほかのスイッチに通知するプロトコルです。
なぜ「トランキング」なのかというと,VTPはトランクリンクでやりとりされるからです。
トランクでつながったスイッチ同士で,VLAN情報をやりとりするわけです。

VTPを利用する際には,三つのモードがあります。

【VTPの三つのモード】
・サーバー・モード
 VLANの作成・変更・削除が可能。その情報を他のスイッチに通知
・トランスペアレント・モード
 VLANの作成・変更・削除が可能。自分のVLAN情報は通知しない。ほかのVTP情報はスルー。
・クライアント・モード
 VLANの作成・変更・削除はできない。他のスイッチから通知されたVLAN情報を使う。

デフォルトは,サーバー・モードです。
なお,VTPでVLAN情報をやりとりするためには,「VTPドメイン名」を一致させておく必要があります。
また,「VTPパスワード」を設定することができます。この場合もすべてのVTPパスワードを一致させます。

●スイッチにVTPを設定する
ネットワークの構成は,スイッチ3台が一列につながった構成です。
スイッチ同士がつながるポートはトランクリンクになっています。

それぞれのスイッチにVTPの設定をしましょう。
SwitchAにVTPドメイン名を設定します。
ここでは,VTPドメイン名を「ccstudy」とします。

SwitchA(config)#vtp domain ccstudy
Changing VTP domain name from NULL to ccstudy


VTPの状態を見てみましょう。
デフォルトで,VTPサーバー・モードになっているのがわかります。

SwitchA#show vtp status
VTP Version            : 2
Configuration Revision     : 34
Maximum VLANs supported locally : 64
Number of existing VLANs   : 5
VTP Operating Mode       : Server
VTP Domain Name         : ccstudy
VTP Pruning Mode        : Disabled
VTP V2 Mode            : Disabled
VTP Traps Generation      : Disabled
MD5 digest             : 0x5E 0x93 0x72 0xBC 0xA1 0x88 0x25 0x07
Configuration last modified by 0.0.0.0 at 3-1-93 00:39:02
Local updater ID is 0.0.0.0 (no valid interface found)


続いて,SwitchBを設定します。
SwitchBはVTPトランスペアレント・モードにします。

SwitchA(config)#vtp domain ccstudy
Changing VTP domain name from NULL to ccstudy

SwitchB(config)#vtp mode transparent
Setting device to VTP TRANSPARENT mode.


SwitchBのVTP設定を確認すると,確かにトランスペアレント・モードになっていますね。

SwitchB#show vtp status
VTP Version            : 2
Configuration Revision     : 0
Maximum VLANs supported locally : 250
Number of existing VLANs   : 5
VTP Operating Mode       : Transparent
VTP Domain Name         : ccstudy
VTP Pruning Mode        : Disabled
VTP V2 Mode            : Disabled
VTP Traps Generation      : Disabled
MD5 digest             : 0xA1 0xC4 0x52 0xC5 0x54 0x0E 0x72 0x4C
Configuration last modified by 0.0.0.0 at 3-1-93 00:17:53


最後に,SwitchCにVTPを設定します。
SwitchCはVTPクライアント・モードにします。

SwitchA(config)#vtp domain ccstudy
Changing VTP domain name from NULL to ccstudy

SwitchC(config)#vtp mode client
Setting device to VTP CLIENT mode.


SwitchBのVTP設定を確認すると,確かにクライアント・モードになりました。

SwitchC#show vtp status
VTP Version            : 2
Configuration Revision     : 34
Maximum VLANs supported locally : 1005
Number of existing VLANs   : 5
VTP Operating Mode       : Client
VTP Domain Name         : ccstudy
VTP Pruning Mode        : Disabled
VTP V2 Mode            : Disabled
VTP Traps Generation      : Disabled
MD5 digest             : 0x5E 0x93 0x72 0xBC 0xA1 0x88 0x25 0x07
Configuration last modified by 0.0.0.0 at 3-1-93 00:39:02


●VLAN情報を通知する
それでは,SwitchAのVLAN情報を他のスイッチへ通知してみましょう。
すべてのスイッチは,VLAN情報は設定されておらず,すべてのポートがデフォルトのVLAN1に所属している状態です。
その状態で,SwitchAにVLAN10を作ります。

SwitchA(config)#vlan 10
SwitchA(config-vlan)#exit


SwitchAのVLANの状態を確認してみます。
すると,もともと設定されていたコマンドが有効になり,VLAN10がFa0/1に割り当てられました。

SwitchA#show vlan brief

VLAN Name               Status  Ports
---- --------------------- --------- -------------------------------
1  default               active  Fa0/2, Fa0/3, Fa0/4, Fa0/5
                             Fa0/6, Fa0/7, Fa0/8, Fa0/9
                             Fa0/10, Fa0/11
10  VLAN0010             active   Fa0/1
1002 fddi-default            active
1003 token-ring-default       active
1004 fddinet-default         active
1005 trnet-default          active


続いて,SwitchBのVLAN状態を見てみます。
SwitchBにはVLAN10は出来ておらず,変化はありません。
これは,SwitchBがVTPトランスペアレント・モードだからです。

SwitchB#show vlan brief

VLAN Name               Status   Ports
---- --------------------- --------- -------------------------------
1  default               active   Fa0/1, Fa0/2, Fa0/3, Fa0/4
                              Fa0/5, Fa0/6, Fa0/7, Fa0/8
                              Fa0/9, Fa0/10, Fa0/11, Fa0/13
                              Fa0/14, Fa0/15, Fa0/16, Fa0/17
                              Fa0/18, Fa0/19, Fa0/20, Fa0/21
                              Fa0/22, Fa0/23, Gi0/1, Gi0/2
1002 fddi-default            act/unsup
1003 token-ring-default       act/unsup
1004 fddinet-default         act/unsup
1005 trnet-default          act/unsup


SwitchCのVLAN状態を見てみると,VLAN10が出来ています。
SwitchCはクライアント・モードです。
VTPによってSwtchAからVLAN10の情報が流れて来たわけです。

SwitchC#show vlan brief

VLAN Name               Status   Ports
---- ---------------------- --------- -------------------------------
1  default               active   Fa0/2, Fa0/3, Fa0/4, Fa0/5
                              Fa0/6, Fa0/7, Fa0/8, Fa0/9
                              Fa0/10, Fa0/11, Fa0/12, Fa0/13
                              Fa0/14, Fa0/15, Fa0/16, Fa0/17
                              Fa0/18, Fa0/19, Fa0/20, Fa0/21
                              Fa0/22, Fa0/23, Gi0/1, Gi0/2
10  VLAN0010             active   Fa0/1
1002 fddi-default            act/unsup
1003 token-ring-default       act/unsup
1004 fddinet-default         act/unsup
1005 trnet-default          act/unsup



●パソコン同士が通信できるようにする
しかしこのままでは,SwitchAにつながったパソコンとSwitchBにつながったパソコン同士が通信できません。
というのも,間にあるSwitchBにVLAN10がないからです。
VTPでは,自分に設定されているVLANのトラフィックをトランクリンクに流します。
SwitchBにはVLAN10が存在しないため,VLAN10のトラフィックは流れないのです。

SwitchBのトランク・ポート状態を見てみましょう。

SwitchB#show interfaces trunk

Port    Mode     Encapsulation Status    Native vlan
Fa0/12   on      802.1q     trunking   1
Fa0/24   on      802.1q     trunking   1

Port    Vlans allowed on trunk
Fa0/12   1-4094
Fa0/24   1-4094

Port    Vlans allowed and active in management domain
Fa0/12   1
Fa0/24   1


Port    Vlans in spanning tree forwarding state and not pruned
Fa0/12   1
Fa0/24   1


「Vlans allowed and active in management domain」の部分が「1」になっています(上の赤字の部分)。
これは,現在トランクリンク上に実際に流れているVLANのトラフィックを示しています。
つまり,トランクリンクにはVLAN1のトラフィックしか流れていないわけです。
これではパソコン同士は通信できませんね。

そこで,パソコン同士を通信できるようにするために,SwitchBにVLAN10を追加します。

SwitchB(config)#vlan 10
SwitchB(config-vlan)#exit


SwitchBにVLAN10が設定されたか確認してみましょう。

SwitchB#show interfaces trunk

Port    Mode     Encapsulation Status    Native vlan
Fa0/12   on      802.1q     trunking   1
Fa0/24   on      802.1q     trunking   1

Port    Vlans allowed on trunk
Fa0/12   1-4094
Fa0/24   1-4094

Port    Vlans allowed and active in management domain
Fa0/12   1,10
Fa0/24   1,10


Port    Vlans in spanning tree forwarding state and not pruned
Fa0/12   1
Fa0/24   1


SwitchBにVLAN10を作ったので,トランクリンク上にVLAN10のトラフィックも流れるようになりました。

●おまけ(トランクリンクに流れるVLANトラフィックを指定する)
設定で明示的に,トランクリンクに流れるVLANトラフィックを指定することができます。
switchport trunk allowed vlanコマンドを使います。

SwichA(config)#interface fastEthernet 0/12
SwichA(config-if)#switchport trunk allowed vlan 10


設定後に,トランクリンクの状態を確認してみます。

SwichA#show interfaces trunk

Port    Mode     Encapsulation Status    Native vlan
Fa0/12   on      802.1q     trunking   1

Port   Vlans allowed on trunk
Fa0/12   10


Port    Vlans allowed and active in management domain
Fa0/12   10

Port    Vlans in spanning tree forwarding state and not pruned
Fa0/12   10


「Vlans allowed on trunk」が「1-4094」だったのが「10」になりました。
これで,トランクリンクには,VLAN10のトラフィックだけが流れるようになったわけです。

上の表示はちょっとややこしいので,まとめておきます。
Vlans allowed on trunk…管理者がトランクリンクに通過を許可したVLANのトラフィック
Vlans allowed and active in management domain…上のうち,実在しているVLANのトラフィック
Vlans in spanning tree forwarding state and not pruned…上のうち,スパニング・ツリーでフォワーディングになっており,かつ,プルーニングされていないVLANのトラフィック(現在トランクリンク上に流れているVLANのトラフィック

VLANラボ
ポートVLAN
トランク接続(タグVLAN)
VLAN間ルーティング(トランク非対応ルーター)
VLAN間ルーティング(トランク対応ルーター)
VLAN間ルーティング(レイヤー3スイッチ)
VTP
VTPプルーニング
プライベートVLAN
プライベートVLANエッジ(保護ポート)