VTP(VLAN中繼協議/虛擬局域網干道協議 VLAN Trunking Protocol),它是思科私有協議。在稍微大型一點的網絡中,會有多個交換機,同時也會有多個VLAN,如果在每個交換機上分別把VLAN創建一遍,這會是一個工作量很大的任務。
假設網絡中有M個交換機,共劃分了N個VLAN,則為了保證網絡正常工作,需要在每個交換機上都創建N個VLAN,共M×N個VLAN,隨著M和N的增大,這項任務將會枯燥而繁重。VTP協議可以幫助我們減少這些枯燥繁重的工作。
管理員在網絡中設置一個或者多個VTP Server,然后在Server上創建和修改VLAN,VTP協議會將這些修改通告其它交換機上,這些交換機更新VLAN信息(VLAN ID和VLAN Name)。VTP使得VLAN的管理自動化得多了。
VTP原理
VTP Domain(VTP域):
由需要共享相同VLAN信息的交換機組成,只有在同一個VTP域(即VTP域的名字相同)的交換機才能同步VLAN信息。
根據交換機在VTP域中的作用不同,VTP可以分為以下三種模式:
Server(服務器模式):在VTP服務器上能創建、修改和刪除VLAN,同時這些信息會在Trunk鏈路上通告給域中的其它交換機;VTP服務器收到其它交換機的VTP通告后會更改自己的VLAN信息,并進行轉發。
VTP服務器會把VLAN信息保存在NVRAM(即flash:vlan.dat文件)中,就是重新啟動交換機這些VLAN還會存在。默認情況下,交換機是服務器模式。每個VTP域必須至少有1臺服務器,當然也可以有多臺。
Client(客戶機模式):在VTP客戶機上不允許創建、修改和刪除VLAN,但它會監聽來自其它交換機的VTP通告并更改自己的VLAN信息,接收到的VTP信息也會在Trunk鏈路上向其它交換機轉發,因此這種交換機還能充當VTP中繼;VTP Client把VLAN信息保存在RAM中,交換機重啟動后這些信息會丟失。
Transparent(透明模式):的交換機不完全參與VTP。可以在這種模式的交換機上創建、修改和刪除VLAN,但是這些VLAN信息并不會通告給其它交換機,它也不接受其它交換機的VTP通告而更新自己的VLAN信息。然而,它會通過Trunk鏈路轉發收到的VTP通告從而充當了VTP中繼的絕色,因此完全可以把該交換機看成是透明的。VTP Transparent僅會把本交換機上的VLAN信息保存在NVRAM中。
說明:根據Cisco資料,VTP Client不會在flash:vlan.dat文件存放VLAN信息,然而多次試驗并不是這樣的。
VTP通告
VLAN信息的同步是通過VTP通告來實現的,VTP通告只能在Trunk鏈路上傳輸(因此交換機之間的鏈路必須成功配置Trunk)。VTP通告是以組播幀的方式發送的,VTP通告中有一個字段稱為修訂號(Revision),代表VTP幀的修訂級別,它是一個32位的數字。交換機的默認修訂號為0。每次添加或刪除VLAN時,修訂號都會遞增。修訂號用于確定從另一臺交換機收到的VLAN信息是否比儲存在本交換機上的信息更新。
如果收到的VTP通告修訂號更高,則本交換機將根據此通告更新自身的VLAN信息。如果交換機收到的修訂號更低的通告,會用自己的VLAN信息反向覆蓋。需要注意的是:高Revision的通告會覆蓋低Revision的通告,而不管自己或者對方是Server還是Client。
VTP通告包含以下三種通告類型:
總結通告:
觸發總結通告的情況:VTP服務器或客戶機每300s發送一次給鄰居交換機;執行配置操作后也會立即發送。
總結通告包含的信息:VTP域名、當前修訂版號、VTP配置詳細信息等。
子集通告:
觸發子集通告的情況:創建或刪除VLAN、暫停或激活VLAN、更改VLAN名稱和更改VLAN的MTU。
子集通告包含的信息:VLAN信息。
請求通告:
當向VTP域中的VTP服務器發送請求通告時,VTP服務器的響應方式是:先發送總結通告,接著送出子集通告。
觸發請求通告的情況:VTP域名變動、交換機收到的總結通告包含比自身更高的修訂號、子集通告消息由于某些原因丟失、交換機被重置。
VTP通告說明:
①使用組播發送,地址為01-00-0C-CC-CC-CC;
②只通過中繼端口傳遞;
③VTP消息通過Native VLAN(默認Vlan 1)傳送。
VTP修剪
VTP修剪功能會自動計算哪些鏈路應該修剪哪些VLAN的數據包,管理員只需要啟用該功能即可。
實驗
命令:
sw1#delete flah:vlan.dat
sw1#erase startup-config
sw1#reload
sw1(config)#vtp mode server //配置VTP為Server模式,默認即為Server
sw1(config)#vtp domain VTP-Test //配置VTP域名,默認為空
sw1(config)#vtp password cisco //配置VTP密碼
sw1(config)#vtp version 2 //配置VTP版本,只需在Server上配置
sw1(config)#vtp pruning //啟用VTP修剪,只需在Server上配置
sw2#delete flah:vlan.dat
sw2#erase startup-config
sw2#reload
sw2(config)#vtp mode transparent //配置VTP為Transparent模式
sw2(config)#vtp domain VTP-Test
sw2(config)#vtp password cisco
sw3#delete flah:vlan.dat
sw3#erase startup-config
sw3#reload
sw3(config)#vtp mode client //配置VTP為Client模式
sw3(config)#vtp domain VTP-Test
sw3(config)#vtp password cisco
說明:
①重啟3臺交換機的時間不能相差太長,要保證任何交換機重啟之前另一交換機沒有啟動完畢,避免重新啟動的交換機從未重新啟動的交換機上學到舊的VTP信息。
②VTP可以在全局模式下配置,也可以在vlan database模式下配置。
③VTP默認修訂號為0,每當VLAN信息變化時修訂號會增加1(當為Transparent時,修訂號始終為0)。
④默認VTP信息:模式為Server,域名為空,版本1。
⑤在一個VTP域中可以有多個VTP Server,在任何一個VTP Server上都可以創建和修改VLAN信息,并通告到其它交換機上;不同的VTP域之間是不能傳播VLAN信息的。
⑥Transparent交換機上可以轉發VTP通告,但是并不會根據VTP通告更新自己的任何信息,Transparent交換機上也可以更改VLAN信息,但是這些VLAN信息并不會通告出去。
⑦Client交換機上不僅可以轉發VTP通告,并且會根據VTP通告更新自己的VLAN信息。
⑧配置VTP的密碼為了防止不明身份的交換機加入到域中,任何密碼都是區分大小寫的。
⑨VTP的版本只需要在Server上啟用,其它交換機會自動學習并啟用該功能,但是Transparen模式是不會學習到的,Client模式是不能配置版本的。
⑩配置VTP修剪的時候只需在其中域中的一個Server上啟用即可,其它交換機會自動學習并啟用。
注意:
①當交換機的VTP域名為空時,如果它收到的VTP通告中帶有域名,該交換機將把VTP域名自動更改為VTP通告中的域名。即沒有VTP域名的交換機能從鄰居自動學習VTP域名;VTP域名不為空時交換機就不會學習了。
②如果相鄰的交換機處于不同的VTP域中,將導致交換機之間的鏈路Trunk自動協商失敗不能成為Trunk模式,并會提示不匹配消息;除非強制Trunk模式,但仍會提示不匹配消息:
③在準備向網絡添加非剛出廠的交換機時,應先把交換機的配置清除干凈,否則有可能會使VLAN信息反向覆蓋。
④黑客很容易在現有網絡中接入一臺交換機或者用軟件模擬一臺交換機,通告高修訂號的VTP通告來破壞網絡,可以配置VTP密碼防止黑客的破壞,但是VTP密碼是不能被加密的。
sw1#delete flah:vlan.dat
sw1#erase startup-config
sw1#reload
sw1(config)#int f0/15
sw1(config-if)#switchport trunk encapsulation dot1q
sw1(config-if)#switchport mode trunk
sw1(config)#vtp mode server
sw1(config)#vtp domain VTP-Test
sw1(config)#vtp password cisco
sw1(config)#vlan 2
sw1(config-vlan)#name two
sw2#delete flah:vlan.dat
sw2#erase startup-config
sw2#reload
sw2(config)#int range f0/1 - 2
sw2(config-if-range)#switchport trunk encapsulation dot1q
sw2(config-if-range)#switchport mode trunk
sw2(config)#vtp mode transparent
sw2(config)#vtp domain VTP-Test
sw2(config)#vtp password cisco
sw3#delete flah:vlan.dat
sw3#erase startup-config
sw3#reload
sw3(config)#int f0/15
sw3(config-if)#switchport trunk encapsulation dot1q
sw3(config-if)#switchport mode trunk
sw3(config)#vtp mode client
sw3(config)#vtp domain VTP-Test
sw3(config)#vtp password cisco
sw1#show vtp status //查看VTP域的狀態
sw1#show vtp password //查看VTP的密碼
sw1#show vtp counters //查看VTP的統計
-
RAM
+關注
關注
8文章
1369瀏覽量
114897 -
交換機
+關注
關注
21文章
2656瀏覽量
99997 -
虛擬局域網
+關注
關注
0文章
40瀏覽量
9733 -
VLAN技術
+關注
關注
0文章
45瀏覽量
6400 -
VTP
+關注
關注
0文章
4瀏覽量
2311
發布評論請先 登錄
相關推薦
評論