AccueilCCNACCNA coursVTP (ou comment se simplifier la vie avec les VLAN)

VTP (ou comment se simplifier la vie avec les VLAN)

A quoi sert ce pro­to­cole ? Ima­gi­nons que vous devez confi­gu­rer plu­sieurs VLANs dans votre réseau :

  • Créer 3 VLANs sur un switch est une opé­ra­tion de confi­gu­ra­tion rapide
  • Créer 5 VLANs sur 4 switchs devient une opé­ra­tion de confi­gu­ra­tion plus longue
  • Créer 70 VLANs sur 100 switchs est alors une opé­ra­tion de confi­gu­ra­tion fas­ti­dieuse avec une pro­ba­bi­li­té d’erreur/oubli très élevée !

Et c’est là que le VTP prend toute son impor­tance. Il sert à la pro­pa­ga­tion de création/suppression/modification de VLAN sur tous les switchs de votre réseau à par­tir d’un seul switch.

Propriétés

C’est un pro­to­cole pro­prié­taire Cis­co de niveau 2. De part sa sim­pli­ci­té et sa puis­sance, l’IEEE a sor­ti un pro­to­cole simi­laire afin de per­mettre cette fonc­tion­na­li­té entre switchs de construc­teurs dif­fé­rents : GVRP (GARP VLAN Regis­tra­tion Pro­to­col). La norme est IEEE 802.1ak

Fonctionnement

Les mes­sages VTP dif­fuse des annonces de créa­tion, de sup­pres­sion ou de modi­fi­ca­tion de VLAN. Cette dif­fu­sion s’ef­fec­tue à tra­vers tous les switchs grâce à une trame niveau 2 avec une adresse de des­ti­na­tion MAC mul­ti­cast bien par­ti­cu­lière qui est 01 – 00-0C-CC-CC-CC.

Architecture du VTP

Le switch pos­sède 3 modes VTP : client, trans­pa­rent ou ser­ver (acitf par défaut):

  • VTP Ser­ver : switch qui crée les annonces VTP
  • VTP Client : switch qui reçoit, se syn­chro­nise et pro­page les annonces VTP
  • VTP Trans­pa­rent : switch qui ne traite pas les annonces VTP

Switch en mode VTP Server

Le switch en mode Ser­ver per­met à l’ad­mi­nis­tra­teur de faire toute modi­fi­ca­tion sur les VLANs et de pro­pa­ger auto­ma­ti­que­ment ses modi­fi­ca­tions vers tous les switchs du réseau.

Mind à télécharger :

Switch en mode VTP Client

Le switch en mode Client ne per­met pas à l’ad­mi­nis­tra­teur de faire des modi­fi­ca­tions sur les VLANs. Vous rece­vez un mes­sage d’er­reur quand vous essayez de créer un VLAN.

Mind à télécharger :

Switch en mode VTP Transparent

Le switch en mode Trans­pa­rent per­met à l’ad­mi­nis­tra­teur de faire toute modi­fi­ca­tion sur les VLANs en local uni­que­ment et donc ne pro­page pas ses modi­fi­ca­tions vers tous les switchs du réseau. Très pra­tique pour des maquettes !

Mind à télécharger :

Synchronisation

A chaque création/suppression/modification de VLAN, une variable appe­lée RN – Revi­sion Num­ber – s’incrémente (ini­tia­le­ment 0 puis 1 puis 2 puis 3…). A chaque création/suppression/modification de VLAN, le switch Ser­ver envoi un mes­sage VTP avec la nou­velle valeur du RN. Les autres switchs com­pare le RN reçu du switch Ser­ver avec le RN qu’ils stocke en local, si ce der­nier est plus petit (logi­que­ment) alors les switchs se syn­chro­nisent avec le Ser­ver et récu­père la nou­velle base de don­nées des VLANs.

Par défaut, le RN est envoyé auto­ma­ti­que­ment dès une création/suppression/modification de VLAN puis envoyé toutes les 5 minutes.

VTP Pruning

Cette com­mande option­nelle per­met de faire des éco­no­mies de bande passante.

Expli­ca­tion : ima­gi­nons qu’un switch reçoit les VLANs 1 et 2 mais qu’au­cunes de ses inter­faces appar­tiennent au VLAN 2. Lorsque le switch voi­sin lui enver­ra des trames du VLAN 2, ce switch les sup­pri­me­ra car aucune de ses inter­faces appar­tiennent à ce VLAN. Il est donc inutile que le switch voi­sin lui envoi du tra­fic pour le VLAN 2.

On active alors la fonc­tion VTP pru­ning pour aver­tir le switch voi­sin de ne pas lui envoyer de tra­fic pour ce VLAN. La fonc­tion s’ac­tive à par­tir du switch Server.

Impor­tant : si un switch client pos­sède un RN plus éle­vé que le switch Ser­ver (ima­gi­nons qu’il était dans un autre réseau puis bran­ché au notre), contrai­re­ment à ce qu’on peut pen­ser, le client ne va pas récu­pé­rer la base de don­nées de VLAN du Ser­ver mais l’inverse !

Pour­quoi ? Parce que quelque soit le mode du switch, Ser­ver ou Client, il se syn­chro­nise tou­jours sur celui qui a le RN le plus éle­vé. Dans notre cas, c’est le Ser­ver qui va se syn­chro­ni­ser et récu­pé­rer la base de don­nées de VLAN du Client. Il est donc très impor­tant de remettre le RN à zéro. Pour cela, effec­tuer un simple bas­cu­le­ment en mode Trans­pa­rent puis en mode Client (exemple plus bas)

Remarques importantes

  • Les mes­sages VTP se pro­pagent sur les liens confi­gu­rés en Trunk (norme 802.1Q) et pas en Access
  • VTP ne gère que la plage de VLAN com­prise entre 1 et 1005. La plage éten­due 1006 à 4096 n’est pas sup­por­tée. Pour cela, il faut bas­cu­ler en mode Trans­pa­rent sur tous les switchs et créer ses VLANS éten­dus à la mano
  • Il existe 3 ver­sions de VTP, bien véri­fier qu’une et une seule ver­sion est active sur son réseau pour évi­ter les sur­prises (v1 et v2 incom­pa­tibles entre elles)
  • La confi­gu­ra­tion VTP n’est pas visua­li­sable dans la run­ning-config mais est sto­ckée dans le fichier vlan.dat situé dans la flash (faites un show flash : pour voir le fichier)

Configuration

Pour confi­gu­rer le VTP, voi­ci les étapes :

  1. obli­ga­toire : confi­gu­rer un domaine VTP qui per­met à tous les switchs d’être dans le même « groupe d’amis »
  2. obli­ga­toire : confi­gu­rer le mode de votre switch (client, trans­pa­rent ou server)
  3. option­nel : acti­ver la fonc­tion pruning
  4. option­nel : confi­gu­rer un mot de passe pour sécu­ri­ser les mes­sages VTP
  5. option­nel : acti­ver la ver­sion 2 ou 3 de VTP (ver­sion 1 active par défaut)

Mind à télécharger :

1. confi­gu­ra­tion 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. confi­gu­ra­tion du mode Server :

Switch(config)#vtp mode server
Device mode already VTP SERVER.

On remarque que le switch est déjà en mode Ser­ver par défaut, ce qui est pra­tique car on peut créer des VLANs une fois le switch sor­ti du carton.

3. acti­va­tion de la fonc­tion pru­ning (à par­tir du switch Server):

Switch(config)#vtp pruning
Pruning switched on

4. confi­gu­ra­tion d’un mot de passe VTP (cisco123):

Switch(config)#vtp password cisco123
Setting device VLAN database password to cisco123

5. acti­va­tion de la ver­sion 2 de VTP (à faire sur tous les switchs!):

Switch(config)#vtp version 2

Vérification

Pour véri­fier que le VTP est bien confi­gu­ré, voi­ci les étapes :

  1. visua­li­ser si le mot de passe a bien été tapé
  2. véri­fier si on envoi et on reçoit bien des mes­sages VTP avec les switchs voisins
  3. véri­fier la confi­gu­ra­tion glo­bale du VTP (com­mande la plus utilisée)

1. visua­li­sa­tion du mot de passe configuré

Switch#show vtp password
VTP Password: cisco123

2. véri­fi­ca­tion des comp­teurs des mes­sages 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 comp­teurs sont à 0, ce qui est logique car pour le moment, je n’ai pas encore créer/supprimer/modifier des VLANs. On revé­ri­fie­ra ces comp­teurs un peu plus tard.

3. véri­fi­ca­tion de la confi­gu­ra­tion glo­bale 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

Expli­ca­tion de chaque ligne :

  • VTP Ver­sion : affiche quelle est la ver­sion maxi­mum sup­por­tée par le switch (ici le switch sup­porte les ver­sions 1 et 2). Atten­tion, ce n’est pas for­cé­ment celle active !
  • Confi­gu­ra­tion Revi­sion : en mode ser­ver, elle débute à 1. En mode trans­pa­rent, elle ne sert pas et donc mise à 0.
  • Maxi­mum VLANs sup­por­ted local­ly : nombre maxi­mum de VLAN que le switch sup­porte. Dépend du type de switch (ici un 2960)
  • Num­ber of exis­ting VLANs : nombre de VLANs pré­sents dans le switch (par défaut, les VLANs 1, 1002 à 1005 sont pré­sents donc = 5)
  • VTP Ope­ra­ting Mode : Ser­ver, Client ou Transparent
  • VTP Domain Name : nom de votre « groupe » d’amis
  • VTP Pru­ning Mode : activation/désactivation de la fon­tion de pruning
  • VTP V2 Mode : c’est ici qu’on peut véri­fier si la ver­sion 2 est bien acti­vée (ou la ver­sion 3 si le switch la supporte)
  • VTP Traps Gene­ra­tion : per­met d’en­voyer des traps SNMP vers un ser­veur pour pré­ve­nir les admi­nis­tra­teurs lors­qu’il y a un chan­ge­ment au niveau VTP (par exemple lors de la créa­tion d’un VLAN)
  • MD5 digest : affiche le hash du mot de passe pré­cé­dent (cisco123 dans notre exemple)
  • Confi­gu­ra­tion last modi­fied by : affiche quel est le der­nier switch qui a fait une modi­fi­ca­tion de VLANs (on peut avoir plu­sieurs switch Ser­ver dans un réseau)

Exemple

On veut effec­tuer les actions suivantes :

  1. acti­ver le mode Ser­ver sur switch_A et le mode client sur switch_B
  2. acti­ver la ver­sion 2 sur switch_A et switch_B
  3. défi­nir le domaine VTP = TEST
  4. créer les VLAN 3 et 4 sur switch_A
  5. véri­fier que tout est bon

confi­gu­ra­tion 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)#

confi­gu­ra­tion de switch_B :

Avant de bran­cher phy­si­que­ment switch_B avec swich_A, je bas­cule en mode Trans­pa­rent pour mettre son RN à zéro avant de le rebas­cu­ler 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

Main­te­nant, je peux confi­gu­rer mon switch_B avec les para­mè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éri­fi­ca­tion de la confi­gu­ra­tion 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 pou­vez visua­li­ser les mes­sages envoyés/reçus avec la com­mande 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

42 Commentaires

  1. Bon­jour,

    si jamais vous lisez ce post. Quel sont les bonne pra­tiques chez Cis­co, VTP ou pas de VTP ?
    Sur notre infra, nous avons un VTP Domain. Les nou­veaux VLANS sont donc tous crée sur le core switch avant de se dif­fu­ser aux switch de dis­tri­bu­tions. Donc, ça marche, c’est en place.
    Mais on me demande de faire l’in­verse, de sup­pri­mer le VTP.
    Quel serait la pro­cé­dure ? Tout pas­ser en VTP trans­pa­rent ? Et puis, à chaque créa­tion de nou­veaux vlan, de la faire à la main sur les dif­fé­rents switch. Mais quid des Vlan pré­exis­tant ? Le VLAN.dat sera encore exis­tant ? Donc logi­que­ment, je n’au­rai pas à les recréer ?

  2. J’ai bcp aimé votre tuto c’est bien détaillé. je viens de finir mon mas­ter 2 en réseaux et mul­ti­mé­dia et mon objec­tif est de réus­sir le ccna.
    Mer­ci à vous !

  3. salut a tous com­ment faire si je veux creer neuf vlans sur des switchs dif­fe­rents étant don­né que chaque vlan doit avoir au moins 20 machines et aus­si doivent com­mu­ni­quer ensemble grace à un rou­teur cis­co ? mer­ci d’a­vance pour vos reponses

  4. Impres­sio­nant je sou­haite pas­ser la CCNA, je suis des cours en anglais mais c’est assez chaud ! Tu as peut-être sau­ver 2 ou 3 ques­tions voir plus pour l’exa­men ! Merci

  5. Bon­jour,

    Mer­ci pour cet article très détaillé, petite pré­ci­sion sur les Vlan éten­dus, le VTP les sup­portent bien en V3.

    Source Cis­co :

    VTP ver­sion 3 sup­ports these fea­tures that are not sup­por­ted in ver­sion 1 or ver­sion 2 :

    •Enhan­ced authen­ti­ca­tion — You can confi­gure the authen­ti­ca­tion as hid­den or secret. When hid­den, the secret key from the pass­word string is saved in the VLAN data­base file, but it does not appear in plain text in the confi­gu­ra­tion. Ins­tead, the key asso­cia­ted with the pass­word is saved in hexa­de­ci­mal for­mat in the run­ning confi­gu­ra­tion. You must reen­ter the pass­word if you enter a takeo­ver com­mand in the domain. When you enter the secret key­word, you can direct­ly confi­gure the pass­word secret key.

    •Sup­port for exten­ded range VLAN (VLANs 1006 to 4094) data­base pro­pa­ga­tion. VTP ver­sions 1 and 2 pro­pa­gate only VLANs 1 to 1005. If exten­ded VLANs are confi­gu­red, you can­not convert from VTP ver­sion 3 to ver­sion 1 or 2.

    Cor­dia­le­ment.

  6. J’ai­me­rais avoir la pro­cé­dure de confi­gu­ra­tion com­plète des vlans avec VTP car j’ai­me­rais voir cmt le ser­ver intègre les machines dans les dif­fé­rents VLAN. Svp c’est vrai­ment urgent merci

  7. Hel­lo, mer­ci pour cet article.
    Je ne savais pas qu’on pou­vait « reset » le revi­sion num­ber en pas­sant en mode transparent.
    J’a­vais appris à chan­ger le domain name ou sinon sup­pri­mer le fichier “vlan.dat”. Ca m’a l’air plus simple comme ça 🙂

  8. Mer­ci pour ce site, très bien fait et com­pré­hen­sif pour un novice que je suis.
    pour répondre à Yamine Ze,il suf­fit de cli­quer sur l’ar­ticle en clic droit pour impri­mer et choi­sir dans les impri­mantes « PDF Crea­tor » tout simplement.
    on choi­sit aus­si le dos­sier de des­ti­na­tion et voilà.

    Mer­ci encore Cyril

  9. Bon­jour Cyril,

    Mer­ci pour ce site et les sup­ports très péda­go­gique sur­tout pour les débutants 🙂

    J’ai eu un pro­blème pour rem­pla­cer un swittch 2950 par un 3560, voi­ci le cas :

    Je n’ar­rive pas a récu­pé­ré les Vlans avec le VTP sur des switchs 3560 connec­té en cas­cade sur des 2960 et 2950 . Y a t’il autre chose a rajou­ter au trunk autre que encap­su­la­tion dotq1 ?

    mer­ci

  10. Sur Packet tra­cer, j’ai connec­té deux 2960 et le VTP ne fonc­tionne pas alors que j’ai sui­vi pas à pas ton article. Sais-tu pourquoi ?

    Sinon, les expli­ca­tions de l’ar­ticle sont claires, merci !

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Les plus populaires