A quoi sert ce protocole ? Imaginons que vous devez configurer plusieurs VLANs dans votre réseau :
- Créer 3 VLANs sur un switch est une opération de configuration rapide
- Créer 5 VLANs sur 4 switchs devient une opération de configuration plus longue
- Créer 70 VLANs sur 100 switchs est alors une opération de configuration fastidieuse avec une probabilité d’erreur/oubli très élevée !
Et c’est là que le VTP prend toute son importance. Il sert à la propagation de création/suppression/modification de VLAN sur tous les switchs de votre réseau à partir d’un seul switch.
Propriétés
C’est un protocole propriétaire Cisco de niveau 2. De part sa simplicité et sa puissance, l’IEEE a sorti un protocole similaire afin de permettre cette fonctionnalité entre switchs de constructeurs différents : GVRP (GARP VLAN Registration Protocol). La norme est IEEE 802.1ak
Fonctionnement
Les messages VTP diffuse des annonces de création, de suppression ou de modification de VLAN. Cette diffusion s’effectue à travers tous les switchs grâce à une trame niveau 2 avec une adresse de destination MAC multicast bien particulière qui est 01 – 00-0C-CC-CC-CC.
Architecture du VTP
Le switch possède 3 modes VTP : client, transparent ou server (acitf par défaut):
- VTP Server : switch qui crée les annonces VTP
- VTP Client : switch qui reçoit, se synchronise et propage les annonces VTP
- VTP Transparent : switch qui ne traite pas les annonces VTP
Switch en mode VTP Server
Le switch en mode Server permet à l’administrateur de faire toute modification sur les VLANs et de propager automatiquement ses modifications vers tous les switchs du réseau.
Mind à télécharger :
Switch en mode VTP Client
Le switch en mode Client ne permet pas à l’administrateur de faire des modifications sur les VLANs. Vous recevez un message d’erreur quand vous essayez de créer un VLAN.
Mind à télécharger :
Switch en mode VTP Transparent
Le switch en mode Transparent permet à l’administrateur de faire toute modification sur les VLANs en local uniquement et donc ne propage pas ses modifications vers tous les switchs du réseau. Très pratique pour des maquettes !
Mind à télécharger :
Synchronisation
A chaque création/suppression/modification de VLAN, une variable appelée RN – Revision Number – s’incrémente (initialement 0 puis 1 puis 2 puis 3…). A chaque création/suppression/modification de VLAN, le switch Server envoi un message VTP avec la nouvelle valeur du RN. Les autres switchs compare le RN reçu du switch Server avec le RN qu’ils stocke en local, si ce dernier est plus petit (logiquement) alors les switchs se synchronisent avec le Server et récupère la nouvelle base de données des VLANs.
Par défaut, le RN est envoyé automatiquement dès une création/suppression/modification de VLAN puis envoyé toutes les 5 minutes.
VTP Pruning
Cette commande optionnelle permet de faire des économies de bande passante.
Explication : imaginons qu’un switch reçoit les VLANs 1 et 2 mais qu’aucunes de ses interfaces appartiennent au VLAN 2. Lorsque le switch voisin lui enverra des trames du VLAN 2, ce switch les supprimera car aucune de ses interfaces appartiennent à ce VLAN. Il est donc inutile que le switch voisin lui envoi du trafic pour le VLAN 2.
On active alors la fonction VTP pruning pour avertir le switch voisin de ne pas lui envoyer de trafic pour ce VLAN. La fonction s’active à partir du switch Server.
Important : si un switch client possède un RN plus élevé que le switch Server (imaginons qu’il était dans un autre réseau puis branché au notre), contrairement à ce qu’on peut penser, le client ne va pas récupérer la base de données de VLAN du Server mais l’inverse !
Pourquoi ? Parce que quelque soit le mode du switch, Server ou Client, il se synchronise toujours sur celui qui a le RN le plus élevé. Dans notre cas, c’est le Server qui va se synchroniser et récupérer la base de données de VLAN du Client. Il est donc très important de remettre le RN à zéro. Pour cela, effectuer un simple basculement en mode Transparent puis en mode Client (exemple plus bas)
Remarques importantes
- Les messages VTP se propagent sur les liens configurés en Trunk (norme 802.1Q) et pas en Access
- VTP ne gère que la plage de VLAN comprise entre 1 et 1005. La plage étendue 1006 à 4096 n’est pas supportée. Pour cela, il faut basculer en mode Transparent sur tous les switchs et créer ses VLANS étendus à la mano
- Il existe 3 versions de VTP, bien vérifier qu’une et une seule version est active sur son réseau pour éviter les surprises (v1 et v2 incompatibles entre elles)
- La configuration VTP n’est pas visualisable dans la running-config mais est stockée dans le fichier vlan.dat situé dans la flash (faites un show flash : pour voir le fichier)
Configuration
Pour configurer le VTP, voici les étapes :
- obligatoire : configurer un domaine VTP qui permet à tous les switchs d’être dans le même « groupe d’amis »
- obligatoire : configurer le mode de votre switch (client, transparent ou server)
- optionnel : activer la fonction pruning
- optionnel : configurer un mot de passe pour sécuriser les messages VTP
- optionnel : activer la version 2 ou 3 de VTP (version 1 active par défaut)
Mind à télécharger :
1. configuration domaine VTP qu’on appelle TEST :
Switch>enable Switch#configure terminal Switch(config)#vtp domain TEST Changing VTP domain name from NULL to TEST
2. configuration du mode Server :
Switch(config)#vtp mode server Device mode already VTP SERVER.
On remarque que le switch est déjà en mode Server par défaut, ce qui est pratique car on peut créer des VLANs une fois le switch sorti du carton.
3. activation de la fonction pruning (à partir du switch Server):
Switch(config)#vtp pruning Pruning switched on
4. configuration d’un mot de passe VTP (cisco123):
Switch(config)#vtp password cisco123 Setting device VLAN database password to cisco123
5. activation de la version 2 de VTP (à faire sur tous les switchs!):
Switch(config)#vtp version 2
Vérification
Pour vérifier que le VTP est bien configuré, voici les étapes :
- visualiser si le mot de passe a bien été tapé
- vérifier si on envoi et on reçoit bien des messages VTP avec les switchs voisins
- vérifier la configuration globale du VTP (commande la plus utilisée)
1. visualisation du mot de passe configuré
Switch#show vtp password VTP Password: cisco123
2. vérification des compteurs des messages VTP envoyés et reçus :
Switch#show vtp counters VTP statistics: Summary advertisements received : 0 Subset advertisements received : 0 Request advertisements received : 0 Summary advertisements transmitted : 0 Subset advertisements transmitted : 0 Request advertisements transmitted : 0 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 ---------------- ---------------- ---------------- ---------------------------
On remarque que tous les compteurs sont à 0, ce qui est logique car pour le moment, je n’ai pas encore créer/supprimer/modifier des VLANs. On revérifiera ces compteurs un peu plus tard.
3. vérification de la configuration globale du VTP :
Switch#show vtp status VTP Version : 2 Configuration Revision : 1 Maximum VLANs supported locally : 255 Number of existing VLANs : 5 VTP Operating Mode : Server VTP Domain Name : TEST VTP Pruning Mode : Disabled VTP V2 Mode : Enabled VTP Traps Generation : Disabled MD5 digest : 0xCD 0x24 0x5F 0xE3 0xF2 0x01 0xFF 0x6B Configuration last modified by 0.0.0.0 at 3-1-11 00:15:36
Explication de chaque ligne :
- VTP Version : affiche quelle est la version maximum supportée par le switch (ici le switch supporte les versions 1 et 2). Attention, ce n’est pas forcément celle active !
- Configuration Revision : en mode server, elle débute à 1. En mode transparent, elle ne sert pas et donc mise à 0.
- Maximum VLANs supported locally : nombre maximum de VLAN que le switch supporte. Dépend du type de switch (ici un 2960)
- Number of existing VLANs : nombre de VLANs présents dans le switch (par défaut, les VLANs 1, 1002 à 1005 sont présents donc = 5)
- VTP Operating Mode : Server, Client ou Transparent
- VTP Domain Name : nom de votre « groupe » d’amis
- VTP Pruning Mode : activation/désactivation de la fontion de pruning
- VTP V2 Mode : c’est ici qu’on peut vérifier si la version 2 est bien activée (ou la version 3 si le switch la supporte)
- VTP Traps Generation : permet d’envoyer des traps SNMP vers un serveur pour prévenir les administrateurs lorsqu’il y a un changement au niveau VTP (par exemple lors de la création d’un VLAN)
- MD5 digest : affiche le hash du mot de passe précédent (cisco123 dans notre exemple)
- Configuration last modified by : affiche quel est le dernier switch qui a fait une modification de VLANs (on peut avoir plusieurs switch Server dans un réseau)
Exemple
On veut effectuer les actions suivantes :
- activer le mode Server sur switch_A et le mode client sur switch_B
- activer la version 2 sur switch_A et switch_B
- définir le domaine VTP = TEST
- créer les VLAN 3 et 4 sur switch_A
- vérifier que tout est bon
configuration de switch_A :
switch_A(config)#vtp mode server Setting device to VTP SERVER mode. switch_A(config)#vtp version 2 switch_A(config)#vtp domain TEST Changing VTP domain name from NULL to TEST switch_A(config)#vlan 3 switch_A(config-vlan)#exit switch_A(config)#vlan 4 switch_A(config-vlan)#exit switch_A(config)#
configuration de switch_B :
Avant de brancher physiquement switch_B avec swich_A, je bascule en mode Transparent pour mettre son RN à zéro avant de le rebasculer en mode Client
switch_B(config)#vtp mode transparent Setting device to VTP TRANSPARENT mode. switch_B(config)#vtp mode client Setting device to VTP CLIENT mode. switch_B#show vtp status VTP Version : 2 Configuration Revision : 0 Maximum VLANs supported locally : 255 Number of existing VLANs : 5 VTP Operating Mode : Client VTP Domain Name : VTP Pruning Mode : Disabled VTP V2 Mode : Disabled VTP Traps Generation : Disabled MD5 digest : 0x7D 0x5A 0xA6 0x0E 0x9A 0x72 0xA0 0x3A Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00
Maintenant, je peux configurer mon switch_B avec les paramètres VTP demandés :
switch_B(config)#vtp version 2 Cannot modify version in VTP client mode switch_B(config)#vtp domain TEST Changing VTP domain name from NULL to TEST
Vérification de la configuration VTP sur les deux switchs :
Sur switch_A :
switch_A#show vtp status VTP Version : 2 Configuration Revision : 3 Maximum VLANs supported locally : 255 Number of existing VLANs : 7 VTP Operating Mode : Server VTP Domain Name : TEST VTP Pruning Mode : Disabled VTP V2 Mode : Enabled VTP Traps Generation : Disabled MD5 digest : 0xA0 0x0E 0x63 0xE1 0xB0 0xAE 0xDF 0x2C Configuration last modified by 10.1.1.1 at 1-22-12 16:29:28 Local updater ID is 10.1.1.1 on interface Vl1 (lowest numbered VLAN interface found) switch_A# switch_A#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, Fa0/24, Gig1/1 Gig1/2 3 VLAN0003 active 4 VLAN0004 active 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active
Sur switch_B :
switch_B#show vtp status VTP Version : 2 Configuration Revision : 3 Maximum VLANs supported locally : 255 Number of existing VLANs : 7 VTP Operating Mode : Client VTP Domain Name : TEST VTP Pruning Mode : Disabled VTP V2 Mode : Enabled VTP Traps Generation : Disabled MD5 digest : 0xA0 0x0E 0x63 0xE1 0xB0 0xAE 0xDF 0x2C Configuration last modified by 10.1.1.1 at 1-22-12 16:29:28 switch_B# switch_B#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, Fa0/24, Gig1/1 Gig1/2 3 VLAN0003 active 4 VLAN0004 active 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active switch_B#
Vous pouvez visualiser les messages envoyés/reçus avec la commande suivante :
switch_A#show vtp counters VTP statistics: Summary advertisements received : 9 Subset advertisements received : 5 Request advertisements received : 1 Summary advertisements transmitted : 10 Subset advertisements transmitted : 7 Request advertisements transmitted : 1 Number of config revision errors : 3 Number of config digest errors : 1 Number of V1 summary errors : 0
merci pour tout les informations de configuration VTP
Avec un grand plaisir !
Bonjour,
si jamais vous lisez ce post. Quel sont les bonne pratiques chez Cisco, VTP ou pas de VTP ?
Sur notre infra, nous avons un VTP Domain. Les nouveaux VLANS sont donc tous crée sur le core switch avant de se diffuser aux switch de distributions. Donc, ça marche, c’est en place.
Mais on me demande de faire l’inverse, de supprimer le VTP.
Quel serait la procédure ? Tout passer en VTP transparent ? Et puis, à chaque création de nouveaux vlan, de la faire à la main sur les différents switch. Mais quid des Vlan préexistant ? Le VLAN.dat sera encore existant ? Donc logiquement, je n’aurai pas à les recréer ?
Bonjour Aurélien,
La bonne pratique aujourd’hui est de ne plus utiliser le VTP. Tous les switchs en mode transparent ou si possible juste désactiver le VTP.
la commande vtp pruning n’accepte pas, j’utilise le logiciel cisco packet tracert version 7.2
Quel modèle de switch utilises-tu avec PacketTracer ?
bonjour ..j ai une question
la config de vtp est stocké ou ?
nvram ou bien vlan.dat
Bonjour,
La configuration par défaut de VTP est stockée dans le fichier VLAN.DAT qui se trouve dans la NVRAM. Pour la suite, je te laisse lire cet excellent article de Cisco sur ce point particulier : https://www.cisco.com/c/m/en_us/techdoc/dc/reference/cli/nxos/commands/l2/vtp-file.html
la configuration est stocké dans la nvram sous le nom de vlan avec l’extension .dat
J’ai bcp aimé votre tuto c’est bien détaillé. je viens de finir mon master 2 en réseaux et multimédia et mon objectif est de réussir le ccna.
Merci à vous !
j’ai trop aimé ce tuto..merci bcp
Merci !
Bonne lecture des autres articles sur le CCNA 🙂
salut a tous comment faire si je veux creer neuf vlans sur des switchs differents étant donné que chaque vlan doit avoir au moins 20 machines et aussi doivent communiquer ensemble grace à un routeur cisco ? merci d’avance pour vos reponses
Bonjour,
Au lieu de te donner la réponse tout de suite, je t’invite à lire les articles de ce blog relative au VLAN et au Trunk. Tu dois pouvoir trouver la solution par toi même 😉
MERCI POUR LE COURS ET J’AIMRAIS APPRENDRE ENCORE UN PEU PLUS
dans le switch B on n’a pas mis le mot de passe du domaine.
Bonjour Ahmed,
En effet on n’a pas mis de mot de passe car cela n’est pas demandé (dans l’exemple) et n’est pas obligatoire. Mais dans la vraie vie, il est fortement recommandé de mettre un mot de passe VTP.
Impressionant je souhaite passer la CCNA, je suis des cours en anglais mais c’est assez chaud ! Tu as peut-être sauver 2 ou 3 questions voir plus pour l’examen ! Merci
Merci à toi et bonne lecture de ce blog !
vriament bien le tuto
Merci beaucoup 🙂
Bonjour,
Merci pour cet article très détaillé, petite précision sur les Vlan étendus, le VTP les supportent bien en V3.
Source Cisco :
VTP version 3 supports these features that are not supported in version 1 or version 2 :
•Enhanced authentication — You can configure the authentication as hidden or secret. When hidden, the secret key from the password string is saved in the VLAN database file, but it does not appear in plain text in the configuration. Instead, the key associated with the password is saved in hexadecimal format in the running configuration. You must reenter the password if you enter a takeover command in the domain. When you enter the secret keyword, you can directly configure the password secret key.
•Support for extended range VLAN (VLANs 1006 to 4094) database propagation. VTP versions 1 and 2 propagate only VLANs 1 to 1005. If extended VLANs are configured, you cannot convert from VTP version 3 to version 1 or 2.
Cordialement.
Merci Omar pour la précision, en effet à partir de la version 3, les VLAN étendus sont supportés. subtilité à savoir pour le CCNA !
J’aimerais avoir la procédure de configuration complète des vlans avec VTP car j’aimerais voir cmt le server intègre les machines dans les différents VLAN. Svp c’est vraiment urgent merci
Bonjour,
Attention le protocole VTP sert à la déclaration (création, suppression, modification) des VLAN dans le switch. Mais il n’intervient pas dans l’attribution des ports du switch dans les VLANs souhaités.
Hello, merci pour cet article.
Je ne savais pas qu’on pouvait « reset » le revision number en passant en mode transparent.
J’avais appris à changer le domain name ou sinon supprimer le fichier “vlan.dat”. Ca m’a l’air plus simple comme ça 🙂
merci pour le tuto. il m’a fort inspire
Merci enormement pour cette veritable source d information.
Merci pour ce site, très bien fait et compréhensif pour un novice que je suis.
pour répondre à Yamine Ze,il suffit de cliquer sur l’article en clic droit pour imprimer et choisir dans les imprimantes « PDF Creator » tout simplement.
on choisit aussi le dossier de destination et voilà.
Merci encore Cyril
Bonjour Cyril,
Merci pour ce site et les supports très pédagogique surtout pour les débutants 🙂
J’ai eu un problème pour remplacer un swittch 2950 par un 3560, voici le cas :
Je n’arrive pas a récupéré les Vlans avec le VTP sur des switchs 3560 connecté en cascade sur des 2960 et 2950 . Y a t’il autre chose a rajouter au trunk autre que encapsulation dotq1 ?
merci
Bonjour Salem,
- Vérifie que les ports entre les switchs sont bien en Trunk : tape « show interface trunk » et vérifie que tes ports y sont bien présents.
– Vérifie toujours avec cette commande que le VLAN natif est le meme sur chaque switch car les messages VTP passe par ce VLAN là.
– Vérifie qu’au niveau VTP, les informations suivantes entre les switchs (en faisant un « show vtp status »):
– domain VTP : identique sur tous les switchs
– VTP mode : server ou client (et pas transparent)
– VTP version et VTP V2/V3 Mode : Verifie que la version activee est la meme partout !
– MD5 digest : c’est le hash du mot de passe, il doit etre identique partout
Si certains de ces paramètres ne sont pas bons, corrige les.
Bonne chance !
Bonjour, certes le sujet date un peu mais je tiens à te remercier, ca fait deux jours que je me tire les cheveux avec le VTP, et j’avais oublié de vérifier le MD5 digest, en effet j’ai entré le MDP sur un switch et non sur l’autre donc rien ne fonctionnait merciiiiiiii !!!!!!
Mais avec plaisir !
merci bcp pour ce cours
super merci
Bonjour super cour merci. Y aurait il une possibilité de les avoirs en PDF ?
Pour le moment, le blog ne dispose pas de fonctionnalité d’exportation en PDF. Désolé 🙂 Mais je vais devoir y penser. Bonne lecture !
[…] VLAN), comment propager cette création de VLAN sur tous les switchs du réseau (cf chapitre VTP) et comment attribuer un port dans un VLAN (cf fin du chapitre […]
[…] VLAN), comment propager cette création de VLAN sur tous les switchs du réseau (cf chapitre VTP) et comment attribuer un port dans un VLAN (cf fin du chapitre […]
Sur Packet tracer, j’ai connecté deux 2960 et le VTP ne fonctionne pas alors que j’ai suivi pas à pas ton article. Sais-tu pourquoi ?
Sinon, les explications de l’article sont claires, merci !
Bonjour Adrien,
Pour que les messages VTP se propagent entre les switchs, il faut que les liens soient configurés en Trunk (par exemple 802.1Q).
– sur les switchs 2950, les liens Trunk montent automatiquement grâce au protocole DTP (Dynamic Trunking Protocol) que je détaillerai prochainement
– sur les switchs 2960, il faut activer le DTP (désactivé par défaut) ou créer un trunk en statique entre les deux switchs.
Voici la configuration que tu peux ajouter sur tes interfaces entre les deux switchs :
interface fasterthenet 0/0
shut
switchport mode trunk
switchport trunk nonegociate
no shut
Très bon article et pédagogique !
Merci pour ces informations, en espérant voir d’autres articles comme celui-ci !