====== VTP - VLAN Trunking Protocol (cisco)======
* (Podobný - GARP VLAN Registratiron Protocol, GVRP - non Cisco(802.1D, 802.1Q), not supported)
* Umožňuje centrální správu VLAN v L2 síti
==== VTP Domain ====
* Switch může být členem jen jedné domény
* Jen Switche v rámci stejné VTP domény sdílejí VTP informace
* Vyměňované informace obsahují: //VTP Domain, Revision num., known VLANs, ...//
==== VTP modes ====
* **Server** - umožňuje provádět operace s VLAN (mazat,přidávat), šíří změny v rámci domény ostatním switchům, musí být alespoň jeden v doméně. V případě více serverů v doméně je funkce serveru zálohovaná. Jakmile nastane na jakémkoliv serveru změna, ostatní servery se o ní dozví a synchonizují si databázi.
* **Client** - neumožňuje administrátorovi provádět změny s VLAN, synchonizuje VLAN databázi se serverem a přeposílá zprávy ostatní
* **Transparent** - umožňuje změny ve VLAN, nezávisle na VTP, VTP zprávy přeposílá dál
==== VTP Advertisements ====
* Multicast 0100.0CCC.CCCC
* Odesílají se __jen přes trunky__
* Propagují jen VLAN 1-1005
* Lze je zabezpečit heslem, které musí být zadáno na všech switchích v doméně
* Obsahují //configuration revision number//, které určuje čerstvost informace. Číslo začíná od nuly a s každou změnou se zvyšuje.
* Pozor na přidání nového switche do sítě, může mít z dřívějška vyšší rev.num. a může nadělat paseku ve VLANách, nezáleží natom jestli je nastaven jako server nebo klient. (klient po zapnutí odešle hromadný update dle své databáze!!!)
* Novému switchi se doporučuje rev.num. vynulovat před přidáním do sítě.
* Nulování rev.num lze provést změnou VTP módu na transparent a pak na server, nebo změnou názvu VTP domény na nesmysl a zpět.
* Switch v client režimu si také ukládá aktuální VLAN databázi (vlan.dat) a revision number v NVRAM, proto po restartu není jeho konfigurace "čistá".
=== Summary Advertisements ===
* server je odesílá každých 300s nebo po každé změně ve VLAN databázi.
* Při změně jsou následovány Subset adv.
^0^1^2^3^
|Version\\ (1 byte)|Type\\ (Summary Adv)\\ (1 byte)|Nuber of subset adv to follow\\ (1 byte)|Domain name length\\ (1 byte)|
|Management Domain Name (doplněno nulami na 32byte)||||
|Configuration Rev. Number (4 byte)||||
|Updater Identity (IP adr. 4 byte)||||
|Update Time Stamp (12 byte)||||
|MD5 Digest hash code (16 byte)||||
=== Subset advertisements ===
Upozorňují na změnu (vytvoření, smazání, přejmenování, změna MTU) ve VLAN databázi
^0^1^2^3^
|Version\\ (1 byte)|Type\\ (Subset Adv)\\ (1 byte)|Nuber of subset adv to follow\\ (1 byte)|Domain name length\\ (1 byte)|
|Management Domain Name (doplněno nulami na 32byte)||||
|Configuration Rev. Number (4 byte)||||
|VLAN Info Field 1||||
|VLAN Info Field .||||
|VLAN Info Field N||||
== VLAN Info ==
^0^1^2^3^
|Info Length|VLAN Status|VLAN Type|VLAN Name Length|
|VLAN ID||MTU Size||
|802.10 SAID Security Association ID||||
|VLAN Name (doplněno nulami na násobek 4 bytů)||||
=== Advertisement requests from clients ===
Požadavky klientů o aktualizaci VTP informace (např.po rebootu)
===== VTP Configuration =====
* Defaultně je switch v režimu **server** a VTP doména je **NULL** (prázdný řetězec), bez hesla.
* Jestliže switch zachytí přes trunk VTP summary advertisement, "naučí" se VTP doménu, VLANy a conf.reg.number.
* Přecho na ver.2 - stačí nakonfigurovat na serveru, ostatní se pak taky přepnou
__Takto vypadá switch, který lze bezpečně připojit do sítě:__
Switch# show vtp status
VTP Version : 2
Configuration Revision : 0
Maximum VLANs supported locally : 1005
Number of existing VLANs : 5
VTP Operating Mode : Server
VTP Domain Name :
VTP Pruning Mode : Disabled
VTP V2 Mode : Disabled
VTP Traps Generation : Disabled
MD5 digest : 0x57 0xCD 0x40 0x65 0x63 0x59 0x47 0xBD
Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00
>Switch(config)# **vtp domain** //domain-name// ...(max.32 znaků)
>Switch(config)# **vtp mode** {**server** | **client** | **transparent**}
>Switch(config)# **vtp version** {**1** | **2**} ...(def.1)
>Switch(config)# **vtp password** //password//
* //password// - max.32 znaků, case-sensitive, používá se k výpočtu MD5
>Switch# **show vtp status**
>Switch# **show vtp password**
>Switch# **show vtp counters**
Switch# show vtp counters
VTP statistics:
Summary advertisements received : 1
Subset advertisements received : 2
Request advertisements received : 1
Summary advertisements transmitted : 1630
Subset advertisements transmitted : 0
Request advertisements transmitted : 4
Number of config revision errors : 0
Number of config digest errors : 0
Number of V1 summary errors : 0
VTP pruning statistics:
Trunk Join Transmitted Join Received Summary advts received from
non-pruning-capable device
----------------- ---------------- --------------- -------------------------------
Gi0/1 82352 82931 0
===== VTP Pruning =====
* Broadcast se obvykle síří na všechny access porty ve VLAN a zároveň skrz trunky
* Není-li na sousedním switchi žádný port v dané VLANě, je zbytečné tam pro tuto VLAN šířit broadcast.
* VTP Pruning zajišťuje aby se broadcasty šířili skrz trunky jen na ty switche, které mají v dané VLAN ukočené access porty
* Nakonfiguruje-li se na VTP serveru, zapne se díky advertisementům v celé VTP doméně
* Nefunguje na switche v transparent módu, zde se řeší ručně
>Switch(config)# **vtp pruning**
>Switch(config)# **interface** //type mod/num//
>Switch(config-if)# **switchport trunk pruning vlan** {{{**add** | **except** | **remove**} //vlan-list//} | **none**}
VLAN 1,1002-1005 - nikdy nepodléhají pruningu (VLAN 1-kontrolní provoz)