You are on page 1of 15

Iset Kairouan Routage et commutation

Le protocole VTP

I. Présentation du protocole VTP


Le truncking sert dans l'extension d'un domaine VLAN sur d'autres switch.
Pour ce faire CISCO utilise le protocole VTP (VLAN Trunking Protocol). Un lien qui relie deux
interfaces configurées en mode Trunk permet d’étendre les VLANs entre deux switchs (transporte
le trafic de plusieurs VLANs) et aussi permet de transporter les messages VTP véhiculés
automatiquement entre les switchs pour signaler la mise à jour de la liste des n VLANs.
1. Versions
→ VTP Version 1 : Version d’origine
→ VTP Version 2 :
• Ajout du support des VLANs token-ring fddi, ...
• Mode transparent ne tient pas compte du domaine VTP
• lors de la propagation des messages VTP.
2. Mode VTP
Le switch possède 3 modes VTP: client, transparent ou server (actif 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

1/15
Iset Kairouan Routage et commutation

Pour vérifier l'état (le mode) de vtp employé sur un switch :

3. 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.

4. 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

2/15
Iset Kairouan Routage et commutation

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)

5. Configuration

Pour configurer le VTP, voici les étapes:

1. obligatoire: configurer un domaine VTP qui permet à tous les switchs d’être dans le même
« groupe d’amis »
2. obligatoire: configurer le mode de votre switch (client, transparent ou server)
3. optionnel: activer la fonction pruning
4. optionnel: configurer un mot de passe pour sécuriser les messages VTP
5. optionnel: activer la version 2 ou 3 de VTP (version 1 active par défaut)

6. Quelques commandes :

• Définir un port (interface) en tant que port de Trunking


RI_Switch(config-if)#switchport mode trunk

3/15
Iset Kairouan Routage et commutation

• Ajouter ou supprimer un vlan à la liste des VLANs


RI_Switch(config-if)#switchport trunk allowed vlan remove numéro_vlan
RI_Switch(config-if)#switchport trunk allowed vlan add numéro_vlan
• Définir un serveur VTP
RI_Switch(config) #vtp mode server
RI_Switch(config) #vtp domain domain-name
• Définir un client VTP
RI_Switch(config) #vtp mode client
RI_Switch(config) #vtp domain domain-name
• Définir un mot de passe
RI_Switch(config) #vtp password password
• Activer version 2 de VTP
RI_Switch(config) #vtp version 2
• Activer le pruning
RI_Switch#vtp pruning
• Désactiver VTP : passer en mode transparent
RI_Switch (config) #vtp mode transparent
• Affichage de la configuration VTP
RI_Switch#show vtp status

7. Exemple

On veut effectuer les actions suivantes:

1. activer le mode Server sur switch_A et le mode client sur switch_B


2. activer la version 2 sur switch_A et switch_B
3. définir le domaine VTP = TEST
4. créer les VLAN 3 et 4 sur switch_A
5. 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)#

4/15
Iset Kairouan Routage et commutation

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

5/15
Iset Kairouan Routage et commutation

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

6/15
Iset Kairouan Routage et commutation

Le protocole STP (Spanning Tree)


I.Mise en situation
Dans une architecture informatique, il arrive que le réseau comporte des boucles :plusieurs chemins
possibles pour aller d'un point à un autre. Ce système présente un avantage certain : la redondance
permet de pallier une éventuelle coupure d'un lien.
Mais cette redondance, si elle est mal gérée, peut entraîner des problèmes très importants.
I.1.Tempête de Broadcast

1. PC1 envoie une requête ARP (en Broadcast).


2. SW1 reçoit sur le port 1 et diffuse sur les ports 12 et 24
3a. SW2 reçoit sur le port 4 et diffuse vers 2 et 8
3b. En même temps, SW2 reçoit sur le port 8 et diffuse vers 4 et 2.
4a. SW1 reçoit sur le port 24 et diffuse vers 1 et 12.
4b. En même temps, SW1 reçoit sur le port 12 et diffuse sur 1 et 24
5.Répétition de 3a et 3b.
6. Répétition de 4a et 4b
Ce phénomène, appelé tempête de Broadcast (Broadcast storm) génère un trafic (inutile) très
important.
I.2.Trames reçues en double
1. PC1 envoie un ping vers PC2.
2. SW1 reçoit sur le port 1 et diffuse (ports 12 et 24) car il ne connaît pas la position de PC2
3a.SW2 reçoit sur la demande ping sur le port 4 et envoie PC2.
3b. En même temps, SW2 reçoit sur la demande sur le port 8 et envoie vers PC2.
PC2 aura donc reçu deux demandes identiques.
I.3.Tables d'adresses MAC imparfaites.
Du fait des diffusions en double, les tables des switchs se remplissent de manière imparfaites ou
erronées.
Par exemple, SW2 "pensera" que PC1 est connecté sur son port 4 ou 8 ? Avec des architectures plus
complexes, une trame pourrait ainsi emprunter un chemin plus long que nécessaire.

7/15
Iset Kairouan Routage et commutation

II. Présentation du Spanning-Tree


Afin d'éviter les problèmes cités plus haut, on utilise un système chargé de détecter les boucles et de
désactiver les liens redondants. C'est le protocole Spanning-Tree, ou Arbre de Recouvrement.

Il existe plusieurs protocoles de Spanning-Tree. Le plus connu est le STP ou 802.1D


III. Fonctionnement du protocole STP (802.1D)
III.1. 1ère étape : Sélection du Root bridge
Le Root Bridge, ou switch racine, est celui qui a la plus petite Bridge Identity (BID). Il s'agit d'un
nombre composé de :
- Une priorité, comprise entre 1 et 655356 (par défaut à 32768).
- L'adresse MAC du switch, pour départager en cas d'égalité sur la priorité.
III.2. 2ème étape : Sélection du meilleur chemin
L'étape suivante consiste à sélectionner le meilleur chemin depuis les Switchs vers le Root Bridge.
Chaque liaison a un "coût". Le coût le plus faible l'emporte.

En cas d'égalité parfaite (coût, puis @MAC), c'est le numéro de port le plus faible qui détermine le
"gagnant".

8/15
Iset Kairouan Routage et commutation

Configuration :
- Changer le coût d'un port
Switch(config-if)#spanning-tree cost number
- Revenir à coût par défaut
Switch(config-if)#no spanning-tree cost
- Vérifier l'état du spanning-tree sur un switch
Switch#show spanning-tree
Permet de connaître le Root ID, le BID du switch et le cout de chaque port vers le Root Bridge
III.3.3ème étape : Activation des ports
En fonction des deux étapes précédentes, les ports sont activés ou désactivés. On dit qu'ils sont :
- Actif, ou Forwarding : C'est le fonctionnement habituel d'un port de commutateur
- Inactif ou Blocking : Le port est désactivé mais lit/transmet les trames STP pour être informé en
cas de défaillance
III.4. Les instances STP
- Une instance de spanning tree est définit de la façon suivante :
→ Quand tous les switchs participant aux échanges de BPDU et à la négociation du spanning tree
sont associés à une unique racine
- Si c'est fait pour tous les VLAN, on parle de Common Spanning Tree (CSP), sinon, quand c'est
effectué par VLAN, on parle de Per VLAN Spanning Tree (PVST)
→ Avec PVST, nous avons donc une racine par VLAN
- Par VLAN, cela nécessite d'avoir l'information de l'identifiant du VLAN concerné (le VID) dans la
trame

9/15
Iset Kairouan Routage et commutation

→ Le BID est donc étendu pour pouvoir contenir le VID


III.5. Le BID

- Avant l'apparition des VLAN, la priorité était codé sur 16 bits


- Depuis l'existence des VLAN, la priorité est codé sur 4 bits auquel on ajoute 12 bits pour
l'identifiant du VLAN sur lequel se construit le Spanning Tree
→ La priorité ne peut donc prendre que des valeurs multiples de 4096 (212)
- Pour configurer cette priorité 2 solutions
1ère solution :
Switch(config)#spanning-tree vlan 1 root primary
→ Fixe la priorité à la valeur de 24576
Puis éventuellement
Switch(config)#spanning-tree vlan 1 root secondary
→ Fixe la priorité à la valeur de 28672
2ème solution:
Switch(config)#spanning-tree vlan 1 priority number

10/15
Iset Kairouan Routage et commutation

Exemple

En cas de coût égaux vers le root, le plus petit BID gagne.


F0/2 de S2 sera donc designated et F0/2 de S3 Non designated

III.6. Nom des ports


Chaque port faisant partie de la topologie STP est nommé :
- Root Port : Ce sont les ports qui mènent au Root Bridge. Le Root Port reçoit les messages émis
pas le Root Bridge.
- Designated Ports : Ce sont les ports qui émettent les trames 802.1D à destination des différents
commutateurs.
- Non désignated Port :Ou Blocking Port, représente les ports qui n'émettent pas de données. Ces
ports lisent quand même les messages 802.1D

11/15
Iset Kairouan Routage et commutation

IV. Trame BPDU


Chaque "Designated Port" émet une trame BPDU (Bridge Protocol Data Unit) en Multicast. Tous
les switchs prenant en charge le protocole STP en sont les destinataires. Cette trame contient les
informations suivantes.

•Protocole, Version : Valeur toujours à 0


•Type Message (1 octet) :
–0 pour un message de configuration,
–128 pour un message de changement de topologie
•Flags : (1 octet) mais seulement 2 bits utilisés
–TC : Topology-Change
–TCA : Topology-Change Acknowledgment, Acquittement en réception d'un message de
configuration avec le bit TC à 1.
•Root ID et Port ID : 2 octets pour la priorité et 6 pour l'@ Mac
•Coût du port : alloue un coût à un port, pour privilégier un port par rapport à un autre et la
transmission de trame (1 à 65535)
• Age Max: temps maximum d'attente pour qu'un pont considère la topologie caduque (recalcul de
la topologie) (6 à 40 s, 20 s recommandé)

12/15
Iset Kairouan Routage et commutation

• Hello Time : intervalle entre chaque envoi de trames (hello) par le pont maître (1 à 10s, 2 s
recommandé)
• Forward Delay : durée de l'état écoute et de l'état apprentissage (4 à 30 s, 15 s recommandé).
Suite à la détection d'une panne, la nouvelle configuration met environ 50secondes à se mettre en
place (Age Max + 2 x Forward Delay)
V. Configuration de STP
Par défaut, le spanning-tree est activé sur les commutateurs Cisco sur le Vlan 1 (qui contient
tous les ports).

- Pour le diagnostic :
switch#show spanning-tree [?]
- Désactivation de STP :
switch(config)#no spanning-tree vlan vlan-id
- Priorité du switch :
switch(config)#spanning-tree [vlan vlan-id] priority priority

13/15
Iset Kairouan Routage et commutation

VI. Exercice
Soit la topologie de réseaux suivante :

14/15
Iset Kairouan Routage et commutation

Travail demandé :
1. Exécuter des tâches de configuration de base sur un routeur et un réseau local commuté
2. Configurer des VLAN et le protocole VTP (VLAN Trunking Protocol) sur tous les commutateurs
3. Configurer le protocole STP en spécifiant comme Racine le switch comm1 (lui affecté la priorité
100)
4. Configurer un routeur pour prendre en charge les agrégations 802.1q sur une interface Fast
Ethernet
5. Configurer un routeur avec des sous-interfaces correspondant aux VLAN configurés
6. Expliquer le routage entre réseaux locaux virtuels

15/15

You might also like