Le VLAN Trunking protocol permet de faciliter la configuration des VLAN au sein d’un réseau.
Grâce à VTP, l’ajout ou la modification d’un VLAN sera automatiquement répliqué sur les switchs de notre réseau.
Voyons ensemble comment le protocole fonctionne, avant d’apprendre à le mettre en place.
1) Qu’est-ce que le VTP
Tout d’abord, VTP signifie VLAN Trunking Protocol (et non Virtual Trunking Protocol).
Il ne s’agit pas vraiment d’un protocole de Trunking.
Le rôle de VTP est de propager les configurations de VLAN.
Pour faire simple, nous configurons un VLAN sur un switch serveur VTP, et tous les switchs clients vont récupérer la configuration.
Pour le réseau suivant, nous n’aurions qu’à créer les VLAN sur S1 :
VTP propage les paramètres suivants :
- Création d’un VLAN
- Modification d’un VLAN (changement de nom)
- Suppression d’un VLAN
Cela permet déjà de simplifier la configuration des VLAN. En plus, VTP réduit les probabilités d’incohérences.
Attention, il faudra toujours configurer sois même les ports Access et les Trunk.
VTP ne se charge que de répliquer les VLAN.
2) Modes Client, Serveur, et Transparent
VTP peut fonctionner en 3 modes : Client, Serveur, et Transparent.
Sur un switch VTP Serveur, nous pouvons ajouter, modifier, et supprimer des VLAN.
La configuration sera stockée dans le fichier vlan.dat.
Ensuite, le switch enverra une MAJ VTP aux autres switchs.
Sur un switch Client, il n’est pas possible de modifier la configuration VLAN. Seules des MAJ VTP peuvent changer la configuration.
Un switch Client ne conserve pas les VLAN dans le fichier VLAN.dat.
Les VLAN seront donc perdus à l’extension du switch.
Enfin, un switch en mode Transparent ne participe pas au processus VTP.
Il faudra lui configurer les VLAN à la main, et ceux-ci seront stockés dans le fichier VLAN.dat.
Par contre, il sera capable de faire suivre les MAJ aux autres switchs.
Si nous reprenons notre schéma, S1 est un Serveur VTP, S3 et S5 des Clients, et S4 est en mode Transparent.
Nous pourrons donc créer des VLAN sur S1, et ceux-ci seront automatiquement répliqués sur S3 et S5.
S4 ne fera que transmettre la MAJ à S5. Si nous souhaitons que S4 possède des VLAN dans sa configuration, nous devrons les créer à la main.
3) Numéro de révision et nom de domaine
Le numéro de révision correspond à la version de la base de donnée des VLAN.
Quand nous ajoutons, modifions, ou supprimons un VLAN, le numéro de révision augmente.
Au départ il est de 0. Il augmentera à chaque changement.
Le nom de domaine VTP, doit être le même sur tous les swtichs pour qu’ils s’échangent des MAJ.
De plus, il est possible de configurer un mot de passe pour le domaine.
4) Processus de MAJ
Les MAJ VTP sont envoyées automatiquement à chaque changement.
Par exemple, la création d’un VLAN entrainera l’envoie d’une MAJ.
De plus, une MAJ est envoyée toutes les 300 secondes.
Dans la MAJ est inclus le numéro de révision.
Si le switch qui reçoit la MAJ possède un numéro de révision plus élevé ou égal que celui inclus dans la MAJ, alors il ne retransmettra pas la MAJ. De même si le nom de domaine n’est pas le même.
Il est important de noter que les MAJ VTP ne passent qu’à travers les liens Trunk.
Seuls les VLAN du range standard sont annoncés (ID allant de 1 à 1005). Les VLAN du range étendu (ID allant de 1006 à 4096) ne sont pas annoncés.
Les différents messages
Summary Advertisements
Le message de résumé est envoyé toutes les 300 secondes (5 minutes).
Il contient le nom de domaine VTP, ainsi que le numéro de révision.
Quand un switch reçoit un message Summary, si le numéro de révision est plus élevé que celui du switch (et que le nom de domaine VTP est le même), alors le switch va émettre une Advertisement request
Voici comment se compose un message Summary Advertisement :
En détail :
- Version : version de VTP (1 à 3)
- Type or Code : type de message (0×01 pour un Summary Advertisement)
- Followers : indique si le message est suivi par un Subset Advertisement
- Mgmt Domain Length : permet de connaitre la longueur du nom dans le champ Mgmt Domain Name (car le champ est complété par des 0)
- Mgmt Domain Name : nom de domaine VTP
- Configuration Revision Number : numéro de révision
- Updater Identity : IP du dernier switch à avoir incrémenté le numéro de révision
- Update Timestamp : date du dernier changement
- MD5 Digest : Hash du mot de passe du domaine
Advertisement Request
Ce message permet de demander une MAJ (Subset Advertisement) à un switch serveur.
Ce message est envoyé quand :
- Le switch reçoit un Summary Advertisement avec un numéro de révision supérieur
- Le switch a été redémarré
- Le nom de domaine a été changé
Voici comment se compose un message Advertisement Request :
En détail :
- Type or Code : type de message (0×03 pour un Advertisement Request)
- Starting Advertisement : ID de la dernière MAJ reçue. Le serveur doit donc envoyer des MAJ à partir du numéro de révision n + 1
Subset Advertisements
Ce message permet les MAJ VTP.
Il est envoyé suite à une modification de VLAN, ou une Advertisement Request.
Le Subset Advertisement est toujours précédé d’un Summary Advertisement.
S’il y a beaucoup de VLAN à annoncer, il est possible qu’il faille plusieurs Subset Advertisement.
Voici comment se compose un message Subset Advertisement :
En détail :
- Type or Code : type de message (0×02 pour un Subset Advertisement)
- VLAN-Info Field : contient toutes les infos d’un VLAN (ID, nom, MTU, etc…)
5) VTP Pruning
Faisons simple : le VTP Pruning permet d’empêcher les Broadcast de se propager vers des switchs qui n’ont pas de ports Access dans le VLAN concerné par du Broadcast.
En effet, un Broadcast va se propager dans tout le VLAN. Par défaut, un lien Trunk supporte tous les VLAN. Ce qui fait qu’un Broadcast va forcément se répandre dans tout le domaine VTP.
Le VTP Pruning aura pour but de permettre au switchs de discuter entre aux, afin de dire quels VLAN ils utilisent (donc si ils ont des ports Access dans ce VLAN).
Avec le VTP Pruning d’activé, voici comment se propagerai un Broadcast dans le VLAN 20 :
6) Désavantage du VTP
Le VTP peut sembler bien intéressant au premier abord.
Néanmoins, il faut être conscient que le VTP présente aussi des désavantages.
Nous avons vu que ce protocole permet de propager une configuration VLAN sur tout le réseau.
Les créations et modifications de VLAN seront automatiquement propagées. La suppression aussi.
C’est-à-dire que si nous supprimons (par erreur) tous les VLAN sur notre serveur VTP, l’intégralité du réseau (tous les switchs dans le domaine VTP) va tomber.
En effet, les VLAN seront supprimés de tous les switchs.
Autre scénario, nous intégrons dans le réseau, un switch VTP Serveur avec le même domaine VTP, et un numéro de révision plus élevé. Il va alors répliquer sa configuration partout.
Cela peut arriver si nous sortons un switch du réseau, pour travailler dessus en labo. Il faudra alors remettre son numéro de révision à 0 avant de le réintégrer.
Pour cela, il faut le passer en mode client, puis le remettre en mode serveur (donc changer son mode VTP).
7) Configuration
Voici la topologie sur laquelle nous allons travailler :
Les PC seront facultatifs pour les manipulations.
Les étapes de configuration sont les suivantes :
- Remettre à zéro le numéro de révision (s’il y avait déjà une configuration VTP)
- Configurer le nom de domaine et le MDP
- Choisir le mode de fonctionnement (Server, Client, Transparent)
- Choisir la version VTP
- Vérifier le bon fonctionnement
Commençons par S1 :
Switch-1(config)#vtp password cisco Switch-1(config)#vtp mode server Switch-1(config)#vtp version 2 Switch-1(config)#vtp domain NetworkLab Switch-1(config)#vtp pruning
Passons à S3.
Switch-3(config)#vtp password cisco Switch-3(config)#vtp mode client
En utilisant la commande « Show VTP status », vous pourrez constater que S3 connait déjà le nom de domaine :
Or, nous n’avons pas encore configuré S3 !
Quand un switch ne possède pas de configuration VTP, il va automatiquement se placer dans le domaine VTP des MAJ qu’il reçoit. Ensuite, il va utiliser les paramètres du serveur, tel que la version de VTP, le Pruning, etc…
Par contre, le reste devra être configuré à la main.
Vous pouvez constater qu’il n’est pas possible de configurer la version VTP sur un client :
Il en est de même pour la configuration de VLAN.
S5 peut être configuré de la même manière :
Switch-5(config)#vtp password cisco Switch-5(config)#vtp mode client
Quant à S4, la configuration sera un peu différente :
Switch-4(config)#vtp password cisco Switch-4(config)#vtp mode transparent
Nous pouvons voir que S4 est maintenant à part. Son numéro de révision est revenu à 0 :
Bien, notre réseau est configuré.
Testons maintenant la réplication de VLAN.
8) Tests
Ajout de VLAN
Actuellement, il n’y a que 6 VLAN sur notre réseau :
Avant de faire un ajout sur S1, relevons son numéro de révision :
Procédons à l’ajout :
Switch-1(config)#vlan 10 Switch-1(config-vlan)#name Student
Le numéro de révision a augmenté de 1 :
S3 a-t-il apprit le VLAN ?
En effet.
Normalement, S4 ne devrait pas le connaitre, à cause du mode transparent :
Quant à S5, normalement il connait le VLAN 10 :
Parfait !
Normalement, si nous ajoutons un VLAN sur S4, celui ne devrait pas être redistribué :
Switch-4(config)#vlan 50 Switch-4(config-vlan)#name Marketing
En effet.
Il n’est effectivement pas possible de configurer des VLAN sur un client :
VTP à travers un lien Access, Native VLAN Mismatch
Les switchs d’un même domaine VTP doivent normalement être reliés par un lien Trunk.
Et si ce n’est pas le cas ?
Changeons le lien S4 – S5 :
Switch-4(config)#interface fastEthernet 0/9 Switch-4(config-if)#switchport mode access
Switch-5(config)#interface fastEthernet 0/10 Switch-5(config-if)#switchport mode access
Réinitialisons le processus VTP sur S5 :
Switch-5(config)#vtp mode transparent Switch-5(config)#vtp mode client
S4 arrive-t-il toujours à se synchroniser avec les autres switchs ?
La réponse est non.
Quand est-il d’un lien Trunk sur lequel le VLAN natif n’est pas le même des deux côtés ?
Switch-5(config)#interface fastEthernet 0/10 Switch-5(config-if)#switchport mode trunk Switch-5(config-if)#switchport trunk native vlan 666
Switch-4(config)#interface fastEthernet 0/9 Switch-4(config-if)#switchport mode trunk Switch-4(config-if)#switchport trunk native vlan 999
Réinitialisons encore une fois le procdesus VTP :
Switch-5(config)#vtp mode transparent Switch-5(config)#vtp mode client
Aucun problème.
Effacer la configuration VTP
Vous remarquerez que la configuration VTP n’est pas stockée dans la startup-config.
Elle est en fait stockée dans le fichier VLAN.dat
Supprimer la configuration VTP nécessite de supprimer ce fichier.
Switch-5#delete flash:vlan.dat
9) Conclusion
Le moins que l’on puisse dire, c’est que nous avons bien décortiqué le protocole VTP.
Voici un rapide résumé de ce que nous avons vu :
- Qu’est-ce que le VTP
- Modes de fonctionnement : Server, Client, Transparent
- Processus de MAJ, ainsi que domaine VTP et numéro de révision
- VTP Pruning
- Configuration
Reste maintenant à savoir si vous souhaitez mettre en place VTP dans un réseau, sachant le risque qu’il représente en cas de mauvaise utilisation.
Néanmoins, une chose est sûre, il n’est pas nécessaire d’utiliser le VTP sur un petit réseau.
merci