Protocole Spanning-Tree Thomas Moegli Ing. HES Télécommunications - Réseaux et Sécurité IT
1
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
Fonctionnement
2
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Problématique
Gi1/0
Fa0/0
๏
Gi0/0
PC-A
SW2
SW1
Fa0/0 PC-B
Dans une topologie réseau, la présence de boucles engendre de nombreux problèmes
3
Thomas Moegli
3
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Problématique PC-A via Gi1/0 Gi1/0
Fa0/0
SW1
SW2
Fa0/0 PC-B
Gi0/0
PC-A
PC-A via Gi0/0 Gi1/0
Fa0/0
SW1
SW2 Gi0/0
PC-A
Fa0/0 PC-B
Conséquences ๏
Surcharge du processeur des switchs : Le fait de changer constamment la table CAM fait charger inutilement le processeur. Les trames provenant d’interfaces différentes pour la même entité source fait que la table CAM est modifiée constamment 4
Thomas Moegli
4
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Problématique TTL = 2
๏
Soit une topologie de routeurs avec présence d’une boucle
๏
Lorsqu’un paquet circule, une valeur nommée TTL (Time To Live) est associée au paquet
๏
Cette valeur diminue d’une unité à chaque passage sur une interface d’un routeur
๏
Si un paquet est pris dans une boucle, le mécanisme de TTL permettra de supprimer ce paquet TTL = 1 5
Thomas Moegli
5
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Problématique
Gi1/0
Fa0/0
๏
Gi0/0
PC-A
SW2
SW1
Fa0/0 PC-B
Toutefois, dans un environnement Layer 2, les trames ne disposent pas de TTL
Conséquences ๏
Charge importante du réseau : Les paquets tournent indéfiniment (pas de TTL dans les trames) et surchargent le réseau
6
Thomas Moegli
6
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Problématique Conséquences ๏
Charge importante du réseau : Les paquets tournent indéfiniment (pas de TTL dans les trames) et surchargent
๏
Surcharge du processeur des switchs : Le fait de changer constamment la table CAM fait charger inutilement le processeur
๏
Déni de service : Vu que le switch change constamment de port entre les liens redondants (ports Fa0/2 et Fa0/3), il ne choisit jamais le bon port de destination (dans notre exemple, Fa0/1) et les paquets ne peuvent jamais arriver sur le client final.
๏
Trames dupliquées : Le fait que les paquets de diffusion soient diffusées sur l’ensemble des liens fait que le client reçoit plusieurs copies de la même trame. Il y a une surcharge sur le client à cause de la réception de trames multiples.
7
Thomas Moegli
7
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Spanning-Tree 802.1d
๏
Algorithme original décrit par Radia Perlman et appelé DEC STP
๏
1990 : Publication du standard 802.1D
๏
1998 et 2004 : Nouvelles versions
๏
DEC STP et 802.1D sont incompatibles entre eux
๏
Avec les variantes, le protocole original est souvent appelé CST (Common Spanning Tree)
8
Thomas Moegli
8
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Spanning-Tree 802.1d S1
๏
Empêcher les boucles de réseau entre switchs (liens
Boucle
redondants) ๏
Couche OSI 2
๏
Création d’une topologie avec l’algorithme Spanning-
S2
S3
Sans
Spanning-Tree
Tree (STA) ๏
Désactivation des liens redondants
๏
Lors d’une défaillance d’un lien actif, réactivation
S1
automatique du lien de secours
Avec
Spanning-Tree
Pas de boucle S2
S3
9
Thomas Moegli
9
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Etapes principales Election du Root Bridge
Désignation d’un switch « Maître » ou Root Bridge
๏ ๏
Tous les calculs se feront sur la base du Root Bridge
๏
Echange de messages entre switchs (trames BPDU)
Pour chaque switch, calcul du meilleur chemin vers le Root Bridge
๏ ๏
Chaque interface possède un coût
๏
Coût du chemin : Somme du coût de chaque interface traversée
Calcul de l’arbre STP
Chaque switch place ses interfaces dans un mode STP
๏ ๏
Certains modes autorisent la transmission de données, d’autres bloquent
Définition de l’état STP par interface
10
Thomas Moegli
10
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Désignation du Root Bridge Priority : 32768 000A.41D5.7937
1 Gb/s A
B
2 octets Bridge Priority Bridge Priority 0-65535
6 octets MAC Address Adresse MAC Unique
Priority : 32768 0030.F222.2794
Bridge ID
Chaque switch possède un identifiant appelé Bridge ID (BID) de 64 bits
๏ ๏
Composé de la priorité définie et de l’adresse MAC
๏
Priorité possible : 0-65’535
๏
Par défaut, tous les switchs ont une priorité de 32’768 (65535 ÷ 2)
Déterminer le Root Bridge
๏ ๏
Combinaison de la priorité de chaque switch et de l’adresse MAC
๏
Sélection du switch ayant la valeur de priorité la plus basse
๏
Si priorité équivalente, sélection d’après l’adresse MAC ayant la plus petite valeur
๏
Attention à privilégier un switch relativement performant comme Root Bridge (en modifiant manuellement la priorité) 11
Thomas Moegli
11
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Terminologie Spanning-Tree Switch/Pont ayant le Bridge ID le plus bas (meilleur priorité). Dans une topologie réseau, les switchs communiquent entre eux et désignent un Root Bridge. Root Bridge Toutes les décisions (placer le port en mode Blocked ou Forward par ex.) se font en fonction du Root Bridge. L’interface (ou port) ayant le coût le plus faible vers le Root Bridge est appelé Root Port
Non-Root Bridge
Tous les switchs qui ne sont pas Root Bridge. Ils échangent des informations entre eux et mettent à jour leur topologie STP en fonction des évenements survenus.
Chaque switch possède un Bridge ID qui est une combinaison du Bridge Priority (configuré par défaut à 32768) et l’adresse MAC. Le switch ayant le Bridge ID le plus petit devient le Root Bridge du réseau. Bridge ID Pour forcer un switch en particulier à devenir Root Switch, il faut configurer manuellement une valeur de priorité basse.
Port Cost
Détermine le chemin à utiliser lorsque plusieurs liens sont présents entre deux switchs. Le coût d’un port est déterminé par la bande passante.
Il s’agit toujours de calculer le chemin le plus court vers le Root Bridge afin de déterminer quels ports doivent être Path Cost désactivés dans le cas de chemins multiples. Le coût d’un lien est déterminé par la somme des coûts de port de chaque switch. 12
Thomas Moegli
12
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
BPDU ๏
Bridge Protocol Data Unit
๏
Messages échangés entre switchs pour STP
๏
Requis pour déterminer et maintenir la topologie STP
๏
Types de BPDU ๏
Configuration BPDUs : utilisé pour l’algorithme STP
๏
TCN BPDUs - (Topology Change Notification BPDU) : utilisé pour informer les équipements d’un changement réseau
2 Protocol Identifier
1
1
Version
Msg Type
1 Flags
8
4
8
2
Root ID
Root Path Cost
Bridge ID
Port ID
2
2
Msg Age Max Age
2
2
Hello Time
Forward Delay
13
Thomas Moegli
13
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Ports d’un switch : Rôles ๏
STP attribue un rôle à chaque port d’un switch
๏
3 rôles possibles Port sur lequel se trouve le lien le plus direct vers le Root Bridge Root Port Si plusieurs liens sont connectés avec le Root Bridge, élection du Root Port en sélectionnant le port avec le coût le plus bas.
RP
Pour chaque segment, le Designated Port est celui ayant le meilleur coût vers le Root Bridge. Un Designated Port Designated Port est marqué également comme Forwarding Port, et il ne peut y avoir qu’un seul Forwarding port par segment réseau.
DP
BP
Non-Designated Port
Un port Non-Designated est un port ayant un coût plus élevé qu’un Designated Port. Ils sont / Blocked Port également marqués comme Blocked Port et sont par conséquent désactivés.
14
Thomas Moegli
14
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Etats d’un port Spanning-Tree ๏
Chaque port d’un switch passe par plusieurs états STP avant d’être opérationnel
๏
Sur un switch Cisco, lumière orange sur le port (Transition STP) puis, si le port est en mode Forwarding, lumière devient verte
DI
Disabled Port qui a été désactivé de manière administrative (commande shutdown) n’est pas un état de transition Ne participe pas à l’algorithme STP
B
Ne transmet pas les trames de données, uniquement réception des BPDU (pas d’envoi) Blocage pour prévenir des boucles de réseau.
Blocking Aucune donnée utilisateur ne peut être envoyé ou reçu dans cet état
(Exception des protocoles de couche 2 tels que DTP, VTP, CDP) Tous les ports sont à l’état Blocking par défaut au démarrage du switch
LI
Listening
LE
Apprentissage de tous les chemins du réseau. Ecoute et envoie des trames BPDU Learning Remplissage de la table CAM mais ne transmet pas encore de données
Aucune donnée utilisateur ne peut être envoyé ou reçu dans cet état
Ecoute et envoie des trames BPDU pour être sûr qu’il n’y ait pas de boucles
Aucune donnée utilisateur ne peut être envoyé ou reçu dans cet état
Forwarding Envoi ou réception de données utilisateurs sur le port
F
15
Thomas Moegli
15
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Etats d’un port Spanning-Tree
Etat du port Reçoit des Envoie des STP BPDUs BPDUs
Apprend les Reçoit des MAC données
Envoi de données
Durée de l’état
B
Blocking
Non défini (si présence d’une boucle)
LI
Listening
Délai (env 15 secondes)
LE
Learning
Délai (env 15 secondes)
F
Forwarding
Non défini (tant qu’aucune boucle détecté)
DI
Disabled
Non défini (tant que l’admin ne l’active pas)
16
Thomas Moegli
16
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Timers STP LE
Ag
LI
ax
BPDU
M
BPDU
e
He llo
Forward Delay
Forward Delay
BPDU
F
Timer
Hello Forward Delay Max Age
Description ๏ ๏ ๏ ๏ ๏ ๏
Temps entre chaque BPDU envoyé sur le port Par défaut : 2 secondes, peut être configuré entre 1 à 10 secondes Temps passé à l’état Listening et Learning Par défaut : 15 secondes, peut être configuré entre 4 à 30 secondes Contrôle la durée maximale avant laquelle un port Bridge sauve sa configuration BPDU 20 secondes par défaut, peut être configuré entre 6 à 40 secondes 17
Thomas Moegli
17
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Etats d’un port Spanning-Tree Initialisation Démarrage
B
Etat Blocking
Après 20 secondes LI Etat Transitoire
Etat Listening
DI
Etat Disabled
Après 15 secondes LE Etat Transitoire
Etat Learning
Après 15 secondes F
Etat Etat
Learning Forwarding 18
Thomas Moegli
18
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP
๏
Terme utilisé lorsque les ports passent d’un état STP à un autre
๏
Convergence complète : Lorsque les ports ont atteint l’état Forwarding ou Blocking (état final) ๏
Aucune donnée ne transite tant que la convergence n’est pas complète
๏
Convergence doit s’effectuer rapidement pour qu’un réseau soit efficace
๏
Possibilité (déconseillé) de modifier les timers STP
๏
Plusieurs variantes STP disponibles
19
Thomas Moegli
19
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP PC A
100Mbps
Bridge ๏
MAC Addr: 0018.b9ad.2d00 Priorité: 32768
Fa1/0/2 de SW A est le port à l’état Blocking
DP
RP
SW A
SW B DP
BP
Gi0/10
A l’état stable, SW B est désigné comme Root
Fa1/0/2
๏
Fa1/0/1
Soit la topologie ci-contre
๏
Gi0/9
19
MAC Addr: 000d.28e4.7c80 Priorité: 32768 Root Bridge
100
10Mbps
PC B 20
Thomas Moegli
20
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP PC A
100Mbps
Durant une intervention, le lien 100 Mbps Fa1/0/1 ne reçoit plus les BPDU à cause du lien défectueux ๏
MAC Addr: 0018.b9ad.2d00 Priorité: 32768
Au delà de 20 secondes, SW A décide que le port Blocking (Fa 1/0/2) passe à l’état Listening ๏
DP
SW A Fa1/0/2
๏
Fa1/0/1
tombe
SW B
BP LI
Le port reçoit et envoie les BPDU
Gi0/9
19
DP
Gi0/10
๏
MAC Addr: 000d.28e4.7c80 Priorité: 32768 Root Bridge
15 sec 100
10Mbps
Blocking (20 sec) Listening (15 sec) PC B 21
Thomas Moegli
21
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP PC A
100Mbps
Durant une intervention, le lien 100 Mbps Fa1/0/1 ne reçoit plus les BPDU à cause du lien défectueux ๏
Au delà de 15 secondes, SW A décide que le
MAC Addr: 0018.b9ad.2d00 Priorité: 32768
port Blocking (Fa 1/0/2) passe à l’état Learning ๏
DP
SW A Fa1/0/2
๏
Fa1/0/1
tombe
SW B
BP LE LI
Le port commence à apprendre les adresses
Gi0/9
19
DP
Gi0/10
๏
MAC Addr: 000d.28e4.7c80 Priorité: 32768 Root Bridge
15 sec 100
MAC
10Mbps
Blocking (20 sec) Listening (15 sec) PC B
Learning (15 sec) 22
Thomas Moegli
22
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP PC A
Durant une intervention, le lien 100 Mbps
100Mbps
tombe défectueux Finalement, après 15 secondes, le port passe finalement à l’état Forwarding ๏
MAC Addr: 0018.b9ad.2d00 Priorité: 32768
SW A Fa1/0/2
๏
Au total, le passage du port de l’état Blocking
DP
SW B
BP F
à l’état Forwarding a duré :
Gi0/9
Fa1/0/1 ne reçoit plus les BPDU à cause du lien
Fa1/0/1
๏
19
DP
Gi0/10
๏
MAC Addr: 000d.28e4.7c80 Priorité: 32768 Root Bridge
15 sec 100
10Mbps
20 + 15 + 15 = 50 secondes
Blocking (20 sec) Listening (15 sec) PC B
Learning (15 sec) Forwarding
Thomas Moegli
23
23
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Convergence STP Lorsqu’un utilisateur connecte un laptop sur l’un des
๏
ports, la convergence STP fonctionne de manière similaire Le port passe également par les états Listening, Learning
๏
puis Forwarding ๏
Listening (15 sec) Learning (15 sec)
Du fait que le port n’était pas à l’état Blocking, il entre directement à l’état Listening sans attendre 20 secondes
๏
Blocking (20 sec)
Forwarding
Pour éviter une attente de 30 secondes, Cisco propose l’option Spanning-Tree Portfast
24
Thomas Moegli
24
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Coût d’un lien
๏
Standard IEEE
๏
Utilisé dans les calculs STP
Vitesse
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
25
Thomas Moegli
25
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
Opérations
26
Cisco - Spanning-Tree - 11 novembre 2017
Opérations Spanning Tree Election du Root Bridge ๏
Au départ, chaque switch se croît Root Bridge
๏
Echange de BPDU entre eux contenant leur Bridge ID
Priority : 32768 0000.0CA7.A603 Root Bridge Root Bridge S1
et le Root ID (eux-mêmes) ๏
Priorité identique pour tous les switchs
๏
Utilisation de l’adresse MAC pour sélectionner Root
Priority : 32768 000A.41D5.7937
Bridge ๏
1 Gb/s
1 Gb/s
1 Gb/s S2
S3
Priority : 32768 0030.F222.2794
S1 a l’adresse MAC avec valeur la plus basse : est élu RB
27
Thomas Moegli
27
Cisco - Spanning-Tree - 11 novembre 2017
Opérations Spanning Tree Priority : 32768 0000.0CA7.A603 Root Bridge Root Bridge
Calcul des coûts vers le Root Bridge S2 et S3 utilisent leur lien direct (coût : 4)
๏ ๏
DP DP
Si S3 utilise le lien transitant par S2 pour aller vers S1 :
Coût = 4 + 4 = 8 (coût supérieur au lien direct)
๏
1 Gb/s
Chaque port du Root Bridge est considéré comme
Priority : 32768 000A.41D5.7937
Designated Port ๏
RP RP
S2
Co
: st
S1
DP Co 1 Gb/s st :4 4
44
1 Gb/s Cost : 4 4
RP RP
S3
Priority : 32768 0030.F222.2794
Sur S2 et S3, le port sur lequel est connecté le lien avec le coût le plus faible vers S1 est considéré comme Root Port
28
Thomas Moegli
28
Cisco - Spanning-Tree - 11 novembre 2017
Opérations Spanning Tree Priority : 32768 0000.0CA7.A603 Root Bridge
Lien S2 – S3 : Désignation des ports Blocking et Designated
๏
DP DP
๏
S3 possède un Bridge ID plus haut que S2 (donc moins prioritaire)
๏
S2 place son port en mode Designated et S3 le place en Blocked Priority : 32768 000A.41D5.7937
Convergence STP terminée
๏ ๏
Tous les ports sont en mode Forwarding ou Blocking
1 Gb/s RP RP
S2
DP DP
Co
: st
S1
DP Co 1 Gb/s st :4 4
44
RP RP
1 Gb/s Cost : 4 4
BP
S3
Priority : 32768 0030.F222.2794
29
Thomas Moegli
29
Cisco - Spanning-Tree - 11 novembre 2017
Opérations Spanning Tree Priority : 32768 0000.0CA7.A603 Root Bridge
Lien S2 – S3 : Désignation des ports Blocking et Designated
๏
DP DP
๏
S3 possède un Bridge ID plus haut que S2 (donc moins prioritaire)
๏
S2 place son port en mode Designated et S3 le place en Blocked Priority : 32768 000A.41D5.7937
Convergence STP terminée
๏ ๏
Tous les ports sont en mode Forwarding ou Blocking
1 Gb/s RP RP F
S2
DP DP F
Co
: st
S1 F
DP
F DP
Co 1 Gb/s st :4 4
44
F RP RP
1 Gb/s Cost : 4 4
B
S3
Priority : 32768 0030.F222.2794
30
Thomas Moegli
30
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
Gi 1/ 0/ 10
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/ Gi
0/
7
SW B Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Etape 1 : Sélection du Root Bridge Parmi les 4 switchs de la topologie ci-contre,
๏
SW A et SW B ont une priorité plus faible (16384) par rapport aux switchs SW C et SW D (32768) ๏
SW A ou SW B sera élu Root Bridge par rapport à SW C et SW D selon la priorité
1
MAC Addr: 0018.c894.1a04 Priorité: 32768
Gi1/0/2
Gi1/0/11
2
0/
0/
1/
1/ Gi
SW C
Thomas Moegli
SW A finalement sera élu Root Bridge car son adresse MAC est inférieure à l’adresse MAC de
Gi
Gi1/0/10
๏
SW B
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
31
31
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
2
RP
1/ 10 DP
SW B
Te1/0/1
Gi
0/
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
4
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Vitesse
4
DP
Etape 2 : Calcul des coûts vers le Root Bridge Pour SW A ๏
Comme SW A est le Root Bridge, toutes ses
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
Gi1/0/2
Gi1/0/11
2
0/
0/
1/
1/ Gi
Gi
Gi1/0/10
interfaces ont le rôle Designated Port
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
32
32
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
2
0/
Gi
10 DP
SW B
Te1/0/1
RP
1/
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
4
4
DP
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Vitesse
Etape 2 : Calcul des coûts vers le Root Bridge Pour SW B Sur SW B, calcul du chemin le plus court vers le
๏
Root Bridge Le plus court chemin passe par Te1/0/1
Thomas Moegli
Gi1/0/2
Gi1/0/11
MAC Addr: 0018.c894.1a04 Priorité: 32768
1
SW C
0/
/2
1/
G
0 i1/
Gi
Gi1/0/10
๏
๏
๏
Interface 10Gbps
๏
Le coût d’une interface est de 2
L’interface Te1/0/1 est donc un Root Port
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
33
33
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
SW B
Te1/0/1
RP
1/
Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
DP
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Vitesse
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Etape 2 : Calcul des coûts vers le Root Bridge
DP
Pour SW D Sur SW D, calcul du chemin le plus court vers le
๏
Root Bridge Le plus court chemin passe par Gi1/0/1
๏ 4
4
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
Gi1/0/2
Gi1/0/11
2
0/
0/
1/
1/ Gi
Gi
Gi1/0/10
RP
๏
Interface 1Gbps
๏
Le coût d’une interface est de 4
๏
Le coût du chemin passant par Gi1/0/2 serait de 4 +2=6
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
34
๏
L’interface Gi1/0/1 est donc un Root Port 34
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
RP
1/
Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
DP
SW B Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Pour SW C
DP
Sur SW C, le coût du chemin le plus court est de 4 ๏
4
Le chemin par Gi1/0/10 et Gi1/0/11 ont le même coût de 4
๏
Pour choisir le chemin entre ces deux possibilités, STP utilise le Port ID le plus faible depuis l’émetteur
RP
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
Gi1/0/2
2
0/
0/
1/
1/ Gi
๏
Gi
Gi1/0/11
RP
Gi1/0/10
Coût
Etape 2 : Calcul des coûts vers le Root Bridge ๏
4
Vitesse
Dans ce cas, l’émetteur est SW A, on prend donc le Port ID le plus faible de SW A
๏
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
35
๏
Le Port ID le plus faible est Gi1/0/3
De ce fait, le port Gi1/0/10 est désigné comme RP 35
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Gi
0/ 10
4
Te1/0/1
RP
1/
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
DP
SW B Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Vitesse
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Etape 2 : Calcul des coûts vers le Root Bridge Pour SW C
DP
๏
Chaque port dispose d’une priorité ๏
Par défaut, la priorité est de 128
๏
Cette priorité peut être modifiée par la commande :
Switch(config-if)# spanning-tree vlan vlan-id port-priority value
4
๏
L’identifiant du port sous STP est majoré de 2 ๏
Autrement dit, le port Gi1/0/3 a l’ID 3 + 2 = 5
Le port Gi1/0/4 a l’ID 4 + 2 = 6
๏
RP
Priorité.ID
Thomas Moegli
Gi1/0/2
Gi1/0/11
MAC Addr: 0018.c894.1a04 Priorité: 32768
1
SW C
0/
1/0
1/
Gi
Gi
Gi1/0/10
RP
/2
Sous la commande show spanning-tree, le port est désigné par
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
36
๏
Port Gi1/0/3 : 128.5
๏
Port Gi1/0/4 : 128.6
๏
SW C peut connaitre les informations du port de SW A via les BPDU
๏
Finalement, SW C peut décider ainsi de sélectionner le port ayant la priorité + l’ID le plus petit 36
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Gi
0/ 10
4
Te1/0/1
RP
1/
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
1/
7 0/
DP
SW B
Coût
10 Mb/s
100
100 Mb/s
19
1000 Mb/s
4
10’000 Mb/s
2
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Vitesse
DP
Etape 3 : Détermination des rôles pour chaque
4
segment réseau Segment SW A - SW C ๏
RP
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
Les ports de chaque segment ont déjà un rôle attribué
Gi1/0/2
Gi1/0/11
2
0/
0/
1/
1/ Gi
Gi
Gi1/0/10
RP
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
37
37
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
RP
1/
1/ Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
0/
7
DP
SW B
Segment SW B - SW D
DP
DP
Etape 3 : Détermination des rôles pour chaque segment réseau
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
๏
Aucun de ces ports n’est RP
๏
Il est nécessaire de désigner un port comme étant Designated Port (chaque segment réseau doit disposer d’un port DP ou RP)
4
๏
RP
BP
2
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
0/
0/
1/
1/ Gi
Gi
Gi1/0/11
RP
Gi1/0/10
Pour connaitre quel port sera désigné DP, il faut regarder le coût vers le Root Bridge depuis chaque interface ๏
Depuis SW B Gi1/0/5, le coût vers le RB est de 2
๏
Depuis SW D Gi1/0/2, le coût vers le RB est de 4
(passe par Gi1/0/1 de SW D)
Gi1/0/2
4
๏
Le port SW B - Gi1/0/5 ayant un coût plus faible sur le segment SW B - SW D, il a comme rôle DP
๏
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
38
Le port SW D Gi1/0/2 a le rôle BP 38
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
RP
1/
Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
DP
1/
7 0/
SW B
DP DP
DP
Etape 3 : Détermination des rôles pour chaque segment réseau Segment SW B - SW C
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
๏
Aucun de ces ports n’est RP
๏
Il est nécessaire de désigner un port comme étant Designated Port (chaque segment réseau doit disposer d’un port DP ou RP)
4
4
๏
Coût vers le RB depuis chaque interface ๏
Depuis SW B Gi1/0/7, le coût vers le RB est de 2
(passe par SW B - Te1/0/1)
RP
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
Depuis SW C Gi1/0/2, le coût vers le RB est de 4
(passe par Gi1/0/10 de SW D)
Gi1/0/2
1
SW C
0/
Gi1/0/11
2
1/
0/
Gi
Gi1/0/10
BP
1/ Gi
๏
BP
RP
๏
Le port SW B - Gi1/0/7 ayant un coût plus faible sur le segment SW B - SW C, il a comme rôle DP
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
39
๏
Le port SW C Gi1/0/2 a le rôle BP 39
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
10 DP
0/
7
Etape 3 : Détermination des rôles pour chaque segment réseau
DP DP
DP
Segment SW A - SW C ๏
4
BP
BP
2
1
MAC Addr: 0018.c894.1a04 Priorité: 32768
0/
0/
1/
1/ Gi
Gi
Gi1/0/11
BP
SW C
Thomas Moegli
Le port Gi1/0/4 de SW A a été désigné comme DP
RP
Gi1/0/10
SW B
Gi1/0/2
RP
1/ Gi
0/
4
Te1/0/1
RP
1/
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
๏
SW C dispose déjà d’un RP. Il s’agit de Gi1/0/10
๏
Le port SW A - Gi1/0/4 a comme rôle DP
๏
Le port SW C Gi1/0/11 a le rôle BP
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
40
40
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
RP
1/
1/ Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
DP
0/
7
SW B Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
DP DP
DP
Etape 3 : Détermination des rôles pour chaque segment réseau Topologie finale BP RP
Gi1/0/11
2
MAC Addr: 0018.c894.1a04 Priorité: 32768 Thomas Moegli
1
SW C
0/
0/
1/
1/ Gi
Gi
Gi1/0/10
BP
Gi1/0/2
BP
RP
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
41
41
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Exemple pratique SW A
Te1/0/1 Gi1/0/4
Te1/0/1
RP
1/
1/ Gi
0/ 10
DP
DP
Gi
Gi1/0/3
Root Bridge
MAC Addr: 0018.b9ad.2d00 Priorité: 16384
DP
0/
7
SW B
Etape 4 : Détermination des états de chaque port
Gi1/0/5
MAC Addr: 000d.28c4.7c80 Priorité: 16384
Durant la phase de détermination des ports RP, DP et
DP DP
DP
BP, les ports sont à l’état Listening puis Learning Une fois la topologie terminée : ๏
l’état Forwarding
BP RP
Gi1/0/11
Les ports désignés comme BP sont mises à l’état Blocking
Gi1/0/2
1
MAC Addr: 0018.c894.1a04 Priorité: 32768
0/
SW C
1/
G
/2
Gi
Gi1/0/10
BP
0 i1/
๏
BP
RP
Thomas Moegli
Les ports désignés comme RP ou DP sont mises à
SW D MAC Addr: 000d.4c11.570c Priorité: 32768
42
42
Cisco - Spanning-Tree - 11 novembre 2017
Fonctionnement de Spanning-Tree
Changement de topologie Root Bridge
Root Bridge
SW1
SW1
TCN
SW3
SW2
SW3
TC
TC
SW2
SW5
SW4
SW5
TCA
Il le signale au Root Bridge
TC
TCA
SW4 détecte et annonce un changement dans sa topologie.
TC
Le Root Bridge signale le changement aux autres switchs
TCN
SW4
Changement de topologie ๏
Lors d’un changement de topologie, le switch l’annonce au Root Bridge via un BPDU TCN (Topologie Change Notification)
๏
Le Root Bridge répond par un BPDU TCA (Topology Change Ack)
๏
Le Root Bridge signale ensuite à l’ensemble des switchs un BPDU TC (Topology Change) qu’ils doivent effectuer un recalcul de l’algorithme STP 43
Thomas Moegli
43
Cisco - Spanning-Tree - 11 novembre 2017
Opérations Spanning Tree Changement de topologie Il peut arrive également ce qu’on appelle une erreur indirecte
๏ ๏
Une interface avec une connectivité partielle ou une ACL appliquée sur l’interface qui filtre certaines trames
๏
L’erreur indirecte peut être détectée si les BPDUs ne sont plus reçus par le switch
๏
Le recalcul STP peut être déclenché également après l’échéance d’un timer lié à la réception des BPDUs
๏
Il peut également arriver des changements de topologie non liées à STP ๏
Exemple : Une interface en mode Access qui modifie de status
๏
Le switch annonce le changement au Root Bridge
๏
Le Root Bridge informe les autres switchs, mais aucun recalcul STP n’est effectué
44
Thomas Moegli
44
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
Variantes
45
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree CST Common Spanning-Tree
๏ ๏
802.1d
Une instance STP pour l’ensemble du réseau Lent mais requiert peu de ressources
PVST Per VLAN Spanning-Tree
๏
Prop. Cisco ๏
PVST+ Per VLAN+ Spanning-Tree
Spanning-Tree
Prop. Cisco
RSTP Rapid Spanning-Tree
802.1w
Rapid PVST+ Rapid PVST+ Spanning-Tree
๏
Prop. Cisco
MST Multiple Spanning-Tree Thomas Moegli
Une instance STP par VLAN, aussi lent que CST, possibilité d’avoir plusieurs Root Bridge PVST est obsolète (support des trunks utilisant le protocole Cisco ISL)
802.1s
๏ ๏
๏
๏ ๏
๏ ๏
Une instance STP par VLAN, aussi lent que CST, possibilité d’avoir plusieurs Root Bridge Le « + » désigne le support des trunks 802.1Q
Une instance STP pour l’ensemble du réseau Convergence plus rapide, un seul Root Bridge,
charge plus importante que CST
Implémentation Cisco de RSTP basé sur PVST+ Charge importante, une instance STP par VLAN, plusieurs Root Bridge
Convergence plus rapide, un seul Root Bridge, charge plus importante que CST Plusieurs instance STP pour des groupe de VLANs 46
46
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree CST (Common Spanning Tree) : Protocole original - Standard IEEE 802.1d
๏ ๏
Une instance STP pour l’ensemble du réseau
๏
Lent mais requiert peu de ressources
PVST, PVST+ (Per VLAN Spanning Tree) : Protocole propriétaire Cisco
๏ ๏
Une instance STP par VLAN, aussi lent que CST, possibilité d’avoir plusieurs Root Bridge
๏
PVST est obsolète (support des trunks utilisant le protocole Cisco ISL)
๏
Le « + » désigne le support des trunks 802.1Q
MSTP (Multiple Spanning Tree ou RSTP)
๏ ๏
Plusieurs VLANs peuvent partager une même instance
RSTP (Rapid Spanning Tree) : Standard IEEE 802.1w
๏ ๏
Convergence plus rapide, un seul Root Bridge, charge plus importante que CST
Rapid PVST+ : Protocole propriétaire Cisco, identique à PVST+ mais avec RSTP
๏ ๏
Implémentation Cisco de RSTP basé sur PVST+
๏
Charge importante, une instance STP par VLAN, plusieurs Root Bridge 47
Thomas Moegli
47
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Standard
Ressources nécessaires
Convergence
Nombre d’instances STP
CST
802.1D
Peu de ressources
Lente
Une instance pour tous les VLANs
PVST
Cisco
Importante
Lente
Une instance par VLAN
PVST+
Cisco
Importante
Lente
Une instance par VLAN
RSTP
802.1W
Moyenne
Rapide
Une instance pour tous les VLANs
Cisco
Très élevé
Rapide
Une instance par VLAN
802.1S
Moyenne à élevé
Rapide
Une instance pour plusieurs VLANs
Rapid PVST+ MSTP
48
Thomas Moegli
48
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Per VLAN Spanning Tree+ Avec CST, l’élection d’un seul Root Bridge pour tout le réseau n’optimise pas tout le trafic
๏ ๏
Exemple : Supposons que SW-A soit Root Bridge. Depuis les clients situés sur les VLAN Management, Engineering, CAD, il est possible que les trames à destination des serveurs correspondants passent par SW-A pour accéder aux serveurs connectés à SW-C (alors qu’un chemin plus court existe)
Serveurs pour : - Finance - Marketing
CAD
Root Bridge
Serveurs pour :
SW-A
- Management - Engineering - CAD
SW-B
Marketing
Engineering
SW-C
Finance
Management
49
Thomas Moegli
49
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Per VLAN Spanning Tree+ Avantage d’un Root Bridge par VLAN
๏ ๏
Pour les VLAN Management, Engineering, CAD, élire SW-C comme Root Bridge optimise le trafic réseau
Serveurs pour :
Root Bridge pour - VLAN Finance - VLAN Maketing
- Finance - Marketing
Root Bridge pour - VLAN Management - VLAN Engineering - VLAN CAD
SW-A
CAD
SW-B
Marketing
Engineering
SW-C
Finance
Serveurs pour : - Management - Engineering - CAD
Management
50
Thomas Moegli
50
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Per VLAN Spanning Tree+ Root Bridge : VLAN1
Root Bridge : VLAN2
SW1
SW3
SW2
๏
PVST+ autorise la sélection d’un Root Bridge différent par VLAN
๏
Dans l’exemple :
๏
๏
SW1 est configuré comme Root Bridge pour le VLAN1
๏
SW3 est configuré comme Root Bridge pour le VLAN2
Permet l’équilibrage de charge sur des liens différents 51
Thomas Moegli
51
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Per VLAN Spanning Tree+ Bridge Priority 0-65535
Sys-ID-Ext
MAC Address Unique
4 bits
12 bits
6 bytes
Structure
๏ ๏
Champ supplémentaire Extended System ID pour gérer les multiples instances
๏
Bridge ID PVST+ composé de 3 champs (Priority, Extended System ID, MAC Address)
La valeur de la priorité par défaut (32768) dépend du numéro de Vlan
๏ ๏
Comme le champ Extended System ID désigne l’identifiant du Vlan ou de l’instance, cette valeur est à ajouté à la priorité
๏
Exemple : La valeur par défaut pour le Vlan 100 est 32768 + 100 (Vlan ID) = 32868
52
Thomas Moegli
52
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Rapid Spanning Tree Protocol 802.1w Nouveau standard IEEE 802.1w
๏ ๏
Evolution de STP pour convergence plus rapide
Améliorations
๏ ๏
Accélération du recalcul du Spanning Tree en cas de changement de topologie réseau
๏
Redéfinit les rôles des ports, états et BPDU de STP
๏
Proactif et très rapide, ne nécessite pas de timers
๏
Rétro-compatibilité avec 802.1d
Transitions entre états accéléré
๏ ๏
3 états au lieu de 5 (Discarding ➔ Learning ➔ Forwarding)
53
Thomas Moegli
53
Cisco - Spanning-Tree - 11 novembre 2017
Variantes Spanning-Tree
Rapid Spanning Tree Protocol 802.1w Rôle du port STP
Etat possible du port STP dans ce rôle
Root Port
Forwarding
Designated Port
Forwarding
NonDesignated Port
Blocking
Disabled
-
En transition
Listening
Learning
Rôle du port RSTP
Etat possible du port RSTP dans ce rôle
Root Port
Forwarding
Designated Port
Forwarding
Alternative / Backup Port
Discarding
Disabled
Discarding
En transition
Learning
54
Thomas Moegli
54
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning Tree Protocol 802.1w
Rôles d’un port Rapid Spanning-Tree Port sur lequel se trouve le lien le plus direct vers le Root Bridge Root Port Si plusieurs liens sont connectés avec le Root Bridge, élection Root Port en sélectionnant le port avec le coût le plus bas.
RP
DP
๏
Pour chaque segment, le Designated Port est celui ayant le meilleur coût vers le Root Bridge. Un Designated Designated Port Port est marqué également comme Forwarding Port, et il ne peut y avoir qu’un seul Forwarding port par RSTP définit les rôlessegment suivantsréseau. :
Alternate Port
AP
Port actuellement désactivé pour les trames de données mais permet de proposer un chemin alternatif vers le Root Bridge (Alternatif au Root Port)
Port actuellement désactivé pour les trames de données.
Backup Port Peut être un chemin alternatif vers le Root Bridge mais sert également comme chemin redondant sur un segment partagé
BaP
55
Thomas Moegli
55
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning Tree Protocol 802.1w
Rôles d’un port Rapid Spanning-Tree Root Bridge
DP
Gi1/0
SW 1 Gi
DP
1/1
Un Backup Port n’est présent uniquement
๏
lorsqu’une boucle est formé entre un switch et un hub (liens redondants)
Hub ๏
Les deux liens reliant le hub sont considérés comme un seul et même segment réseau
DP
SW 2
Gi1/1
Gi
1/1
Gi1/0 AP
BaP
Gi1/3
RP
DP
Gi1/2
RP
Gi1/0
๏
L’une des extrémités du segment prend le rôle de DP
๏
L’autre extrémité reçoit le rôle Backup Port
SW 3
56
Thomas Moegli
56
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning Tree Protocol 802.1w
Etats d’un port Rapid Spanning-Tree Etat possible dans une topologie stable ou lors d’un changement de topologie. Discarding L’état Discarding ne permet pas la transmission de trames. Cet état permet de bloquer le port pour prévenir de la formation de boucles réseaux
DIS
LE
Learning
F
Forwarding
Etat possible dans une topologie stable ou lors d’un changement de topologie. L’état Learning autorise la transmission de trames uniquement pour remplir la table MAC des switchs
Etat possible uniquement dans une topologie stable L’état Forwarding autorise la transmission de trames de données.
57
Thomas Moegli
57
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning-Tree Protocol 802.1w
Types de liens RSTP Lien Edge
Lien p2p
๏
RSTP utilise une terminologie différente pour les liens d’interconnexion entre équipements
๏
Lien p2p
Ils sont automatiquement déterminés par l’algorithme RSTP
Lien p2p
Lien p2p
Point-to- Lien sur lequel le port fonctionne en Full Duplex
Point (P2P) Lien qui connecte généralement un switch à un autre switch
Lien Shared
Lien Edge
Lien sur lequel le port fonctionne en Half Duplex
Shared Lien qui connecte généralement un switch à un média partagé (par exemple un hub) Edge
Lien sur lequel un équipement de terminaison (PC) est connecté (pas de switch, pas de hub)
58
Thomas Moegli
58
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning-Tree Protocol 802.1w
Types de liens RSTP Gi1/0
SW 1 Gi
1/1
Hub Point-to-Point
Point-to-Point
Edge
SW 2
Point-to-Point
Gi1/1
1/1
Gi1/0
Gi1/3
Gi
Gi1/2
Gi1/0
Shared
SW 3
59
Thomas Moegli
59
Cisco - Spanning-Tree - 11 novembre 2017
Rapid Spanning-Tree Protocol 802.1w
Opérations RSTP Root Bridge
SW1
๏
TC
Changement de topologie Contrairement à STP, tous les switchs participent à l’échange de BPDU TC
SW2
Le temps de convergence est
SW3 TC
๏
TC
nettement réduit TC
SW4
SW5
60
Thomas Moegli
60
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
Configuration
61
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Configuration : Priorité
Forcer à ce que le switch sera Root Bridge pour un VLAN particulier :
๏
Switch(config)# spanning-tree vlan vlan-id root primary
Définir que le switch sera Root Bridge secondaire :
๏
Switch(config)# spanning-tree vlan vlan-id root secondary
Définir la priorité du switch :
๏ ๏
Nécessaire que la priorité soit un multiple de 4096 :
Switch(config)# spanning-tree vlan vlan-id priority value
62
Thomas Moegli
62
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Configuration : Timers STP ๏
Switch(config)# spanning-tree vlan vlan-id hello-time value
๏
Switch(config)# spanning-tree vlan vlan-id forward-time value
๏
Switch(config)# spanning-tree vlan vlan-id max-age value
Timer
Hello Forward Delay Max Age
Description ๏ ๏ ๏ ๏ ๏ ๏
Temps entre chaque BPDU envoyé sur le port Par défaut : 2 secondes, peut être configuré entre 1 à 10 secondes Temps passé à l’état Listening et Learning Par défaut : 15 secondes, peut être configuré entre 4 à 30 secondes Contrôle la durée maximale avant laquelle un port Bridge sauve sa configuration BPDU 20 secondes par défaut, peut être configuré entre 6 à 40 secondes
63
Thomas Moegli
63
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Vérification : STP Root Bridge SW3# show spanning-tree VLAN0001 Spanning tree enabled protocol ieee Root ID Priority 32769 Address aabb.cc00.4500 Cost 100 Port 4 (Ethernet0/3) Hello Time 2 sec Max Age 20 sec Bridge ID
Priority Address
Forward Delay 15 sec
32769 (priority 32768 sys-id-ext 1) aabb.cc00.5000
…
SW3 possède le Bridge Priority par défaut : 32769
๏ ๏
Configuration en mode Rapid PVST+
๏
Priorité = 32768 (valeur par défaut) + 1 (VLAN ID 1) = 32769 64
Thomas Moegli
64
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Vérification : STP Root Bridge ๏
Configuration de SW2 avec la commande : SW2(config)# spanning-tree vlan 1 root primary
SW2(config)# show spanning-tree VLAN0001 Spanning tree enabled protocol ieee Root ID Priority 28673 Address aabb.cc00.4600 This bridge is the root Hello Time 2 sec Max Age 20 sec Bridge ID
Priority Address
Forward Delay 15 sec
28673 (priority 28672 sys-id-ext 1) aabb.cc00.4600
…
65
Thomas Moegli
65
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Vérification : STP Root Bridge
SW1# show spanning-tree … Interface Role ———————————————————— ———— … Et0/0 Root Et0/1 Desg …
Sts Cost ——- ———————
Prio.Nbr Type ———————— ————————————————————————————————————
FWD 100 FWD 100
128.1 128.2
Shr Shr
66
Thomas Moegli
66
Cisco - Spanning-Tree - 11 novembre 2017
Configuration Spanning-Tree
Configuration Rapid PVST+
๏
Définir le mode Rapid PVST+ :
Switch(config)# spanning-tree mode rapid-pvst
๏
Configurer le switch pour être Root Bridge pour un Vlan particulier :
Switch(config)# spanning-tree vlan vlan-id root primary
67
Thomas Moegli
67
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
MST
68
Cisco - Spanning-Tree - 11 novembre 2017
MST
Introduction
๏
Dans certains scénarios, plusieurs VLANs disposent d’une même topologie Spanning Tree
๏
Le regroupement de plusieurs instances STP identiques permettent de simplifier l’administration
๏
MST est rétro-compatible avec les autres variantes STP
69
Thomas Moegli
69
Cisco - Spanning-Tree - 11 novembre 2017
MST
Régions MST Region A
MST Region B
Deux switchs sont dans la même région MST si les éléments suivants sont identiques : ๏
Nom
๏
Numéro de révision
๏
Table d’association VLAN
70
Thomas Moegli
70
Cisco - Spanning-Tree - 11 novembre 2017
MST
Introduction VLAN 11, 22, 33 MST 1 MSTI
๏
Mapping de VLANs sur plusieurs instances
๏
Par défaut, tous les VLANS sont mappés sur
VLAN 11, 22, 33 44, 55, 66 IST
l’instance 0, également appelé IST (Internal Spanning Tree) ๏
VLAN 44, 55, 66
On définit des instances supplémentaires et on
MSTI MST 2
associe ces instances aux VLANs
71
Thomas Moegli
71
Cisco - Spanning-Tree - 11 novembre 2017
MST
Cohabitation MST et switchs non MST IST
๏
MST peut fonctionner avec des variantes STP
๏
Pour les variantes qui ne supportent pas MST, les
CST
switchs ne verront pas les instances MST mais ne voient simplement qu’un seul switch logique représentant toute la topologie MST ๏
CST
C’est l’instance 0 qui communique avec les switchs non MST IST
72
Thomas Moegli
72
Cisco - Spanning-Tree - 11 novembre 2017
MST
Communication ๏
Seule l’instance IST envoie les BPDUs
๏
Les messages BPDUs distribués par l’instance IST
BPDU
Information IST Région MST
contiennent les informations des autres instances MST ๏
Seuls les switchs d’une même région MST reçoivent les BPDUs avec les informations des autres instances
๏
Enregistrements MST
Par compatibilité, les BPDUs envoyés sur des switchs non MST ne contiennent pas les informations des MST To CST
73
Thomas Moegli
73
Cisco - Spanning-Tree - 11 novembre 2017
MST
Extended System ID
Bridge Priority 0-65535
Sys-ID-Ext
MAC Address Unique
4 bits
12 bits
6 bytes
Structure
๏ ๏
Champ supplémentaire Extended System ID pour gérer les multiples instances
๏
Le champ Extended System ID contient le numéro de l’instance MST
๏
Bridge ID PVST+ composé de 3 champs (Priority, Extended System ID, MAC Address)
74
Thomas Moegli
74
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST ๏
Sous PVST+, on observe qu’une instance STP est définie pour chaque VLAN
๏
Dans l’exemple, 5 VLANs ont été définis
SW1# show spanning-tree Switch is in past mode Root bridge for: none … Name ———————————————————— VLAN0001 VLAN0002 VLAN0003 VLAN0004 VLAN0005 ———————————————————— 5 vlans …
summary
Blocking ———————1 1 1 1 1 ———————-
Listening ————————— 0 0 0 0 0 —————————
Learning ————————— 0 0 0 0 0 —————————
Forwarding —————————23 23 23 23 23 —————————-
STP Active —————————— 24 2 2 2 2 ——————————
75
Thomas Moegli
75
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST Topologie d’exemple :
๏
Gi0/0
Gi0/2
SW1
1
Gi0/1
/ Gi0
SW2
Gi0/3
/2
GI0
SW3
76
Thomas Moegli
76
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST : Activation de MST VLAN 2, 3 MST 1 Root Br. SW1
๏
SW2
VLAN 1
Modifie le mode STP pour la variante MST
SW3
IST
SW1(config)# spanning-tree mode mst
SW1
SW2(config)# spanning-tree mode mst
SW2
VLAN 4, 5 SW3
SW3(config)# spanning-tree mode mst
MST 2 SW1
Root Br. SW2
SW3
Région CCNP
77
Thomas Moegli
77
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST : Régions ๏
VLAN 2, 3
Configuration des régions MST :
MST 1
SW1(config)# spanning-tree mst configuration SW1(config-mst)# name CCNP SW1(config-mst)# revision 1
SW1
SW2
VLAN 1 SW3
IST
SW2(config)# spanning-tree mst configuration SW2(config-mst)# name CCNP SW2(config-mst)# revision 1
SW1
SW2
VLAN 4, 5 SW3
MST 2 SW1
SW3(config)# spanning-tree mst configuration SW3(config-mst)# name CCNP SW3(config-mst)# revision 1
SW2
SW3
Région CCNP
78
Thomas Moegli
78
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST : Mapping VLAN aux instances ๏
VLAN 2, 3
Mapping de VLANs aux instances MST :
MST 1
SW1(config)# spanning-tree mst configuration SW1(config-mst)# instance 1 vlan 2,3 SW1(config-mst)# instance 2 vlan 4,5
SW1
SW2
VLAN 1 SW3
IST
SW2(config)# spanning-tree mst configuration SW2(config-mst)# instance 1 vlan 2,3 SW2(config-mst)# instance 2 vlan 4,5
SW1
SW2
VLAN 4, 5 SW3
SW3(config)# spanning-tree mst configuration SW3(config-mst)# instance 1 vlan 2,3 SW3(config-mst)# instance 2 vlan 4,5
MST 2 SW1
SW2
SW3
Région CCNP
79
Thomas Moegli
79
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST : Priorité du switch VLAN 2, 3 MST 1
๏
Sur l’instance 1, SW1 est configuré comme Root Bridge
๏
Sur l’instance 2, SW2 est configuré comme Root Bridge
Root Br. SW1
SW2
VLAN 1 SW3
IST
SW1(config)# spanning-tree mst 1 root primary SW1(config)# spanning-tree mst 2 root secondary
SW1
SW2
VLAN 4, 5 SW3
SW2(config)# spanning-tree mst 1 root secondary SW2(config)# spanning-tree mst 2 root primary
MST 2 SW1
Root Br. SW2
SW3
Région CCNP
80
Thomas Moegli
80
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration MST : Activation de MST VLAN 2, 3 MST 1
๏
Application de la configuration MST
Root Br. SW1
SW1(config-mst)# exit
SW3
IST
SW2(config-mst)# exit SW1
SW3(config-mst)# exit ๏
SW2
VLAN 1
SW2
VLAN 4, 5
Si la configuration ne doit pas être appliquée, utiliser la commande :
SW3
MST 2 SW1
Switch(config-mst)# abort
Root Br. SW2
SW3
Région CCNP
81
Thomas Moegli
81
Cisco - Spanning-Tree - 11 novembre 2017
MST
Vérification : MST ๏
Vérifier les instances MST configurés
SW1# show spanning-tree summary Switch is in mst mode (IEEE Standard) … Name Blocking Listening ———————————————————— ———————————————— MST0 0 0 MST1 0 0 MST2 0 0 ———————————————————— ———————————————— 3 msts 0 0 …
Learning ————————— 0 0 0 ————————— 0
Forwarding —————————24 4 4 —————————32
STP Active —————————— 24 4 4 —————————— 32
82
Thomas Moegli
82
Cisco - Spanning-Tree - 11 novembre 2017
MST
Vérification : MST ๏
Vérifier l’association des VLANs aux instances MST
SW1(config)# spanning-tree mst configuration SW1(config-mst)# show current Current MST configuration Name [CCNP] Revision 1 Instances configured 3 Instance Vlans mapped ———————— ———————-———————————————————————————-—————————— 0 1,6-4094 1 2-3 2 4-5 ———————————————————————————-———————————————————————————-——————————
83
Thomas Moegli
83
Cisco - Spanning-Tree - 11 novembre 2017
MST
Vérification : MST ๏
Vérifier la cohérence de configuration MST entre switchs (les Digests doivent correspondre)
SW1# show spanning-tree mst configuration digest Name [CCNP] Revision 1 Instances configured 2 Digest 0xD0C61B39C25B820740E7F5B07E6F0B8D Pre-std Digest 0x119FA5EFE7A944C261E2A1FA8F0E64F9 SW2# show spanning-tree mst configuration digest Name [CCNP] Revision 1 Instances configured 2 Digest 0xD0C61B39C25B820740E7F5B07E6F0B8D Pre-std Digest 0x119FA5EFE7A944C261E2A1FA8F0E64F9 SW3# show spanning-tree mst configuration digest Name [CCNP] Revision 1 Instances configured 2 Digest 0xD0C61B39C25B820740E7F5B07E6F0B8D Pre-std Digest 0x119FA5EFE7A944C261E2A1FA8F0E64F9 84
Thomas Moegli
84
Cisco - Spanning-Tree - 11 novembre 2017
MST
Vérification : MST ๏
Vérification des rôles d’interface par MST :
SW1# show spanning-tree mst 1 ##### MST1 … Gi0/2 Gi0/3 …
vlans mapped: Altn BLK 2000000 Root FWD 2000000
2-3 128.3 128.4
Shr Shr
SW3# show spanning-tree mst 1 ##### MST2 … Gi0/2 Gi0/3 …
vlans mapped: Root FWD 2000000 Altn BLK 2000000
4-5 128.3 128.4
Shr Shr
85
Thomas Moegli
85
Cisco - Spanning-Tree - 11 novembre 2017
MST
Vérification : MST MST 1 Root Br.
D
Gi0/0
MST 2 R
Gi0/2
R
Gi0/0
SW1
SW2
D
Root Br.
Gi0/2
SW1
SW2
Gi0/1
Gi0/1
1 i0/
G
D
D
/1
0
Gi
D
D
R
GI
2 0/
R
Root Port
D
Designated Port
B
Blocked Port
B Gi0/3
Gi0/3
B
SW3
R 2
0/
GI
R
Root Port
D
Designated Port
B
Blocked Port
SW3
86
Thomas Moegli
86
Cisco - Spanning-Tree - 11 novembre 2017
MST
Fonctionnement : Sélection meilleur chemin
MST, comme tout autre variante STP, utilise cette séquence de 4 critère pour sélectionner le meilleur chemin :
๏ ๏
Plus petit BID
๏
Plus petit coût vers le switch Root
๏
Plus petit Sender BID
๏
Plus petit Sender Port ID
Seule différence : ce calcul est effectué pour chaque instance MST
๏ ๏
CST utilise une instance unique pour tous les VLANs
๏
PVST utilise une instance par VLAN
87
Thomas Moegli
87
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration : Priorité du port
๏
Il est de définir la priorité du port qui sera envoyé dans les BPDU
SW1(config)# interface GigabitEthernet0/2 SW1(config-if)# spanning-tree mst 1 port-priority 32 SW3# show spanning-tree mst 1 … Gi0/2 Altn BLK 2000000 Gi0/3 Root FWD 2000000 …
32.3 128.4
Shr Shr
88
Thomas Moegli
88
Cisco - Spanning-Tree - 11 novembre 2017
MST
Configuration : Coût du port
๏
Il est de définir le coût du port qui sera envoyé dans les BPDU
SW1(config)# interface GigabitEthernet0/2 SW1(config-if)# spanning-tree mst 1 cost 1000000 SW3# show spanning-tree mst 1 … Gi0/2 Altn BLK 1000000 Gi0/3 Root FWD 2000000 …
32.3 128.4
Shr Shr
89
Thomas Moegli
89
Cisco - Spanning-Tree - 11 novembre 2017
Protocole Spanning-Tree
Mécanismes de stabilité
90
Cisco - Spanning-Tree - 11 novembre 2017
Protocole STP
Mécanismes de stabilité Mécanismes permettant d’améliorer les performances STP :
๏ ๏
**UplinkFast : Active un failover rapide des liens d’uplink sur les switchs d’accès
๏
**BackboneFast : Permet la reconvergence rapide lors d’une défaillance indirecte d’un lien
๏
PortFast : Configure les ports d’accès pour qu’ils soient directement à l’état Forwarding, sans passer par des états intermédiaires
Mécanismes permettant d’assurer la stabilité STP :
๏ ๏
BPDU Guard : Configuré sur un port d’accès, il permet de désactiver ce port immédiatement si un BPDU est détecté sur l’interface
๏
BPDU Filter : Suppression de BPDUs sur certains ports
๏
Root Guard : Empêche d’autres switchs externes de devenir Root Bridge
๏
Loop Guard : Empêche un port Alternate de devenir Designated Port si aucun BPDU n’est reçu
** : Ces mécanismes ne sont pas nécessaires si l’administrateur utilise RSTP 91
Thomas Moegli
91
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
UplinkFast Root Bridge
UplinkFast ne doit être activé que sur les switchs d’accès et
๏
SW 1
non sur les switchs de distribution ou de coeur UplinkFast réagit suite à la défaillance d’un lien directement
๏
attaché. ๏
UplinkFast s’applique de manière globale sur le switch
๏
Mécanisme désactivé par défaut
SW 2
SW 3
défaillant, le mécanisme STP s’enclenche pour faire transiter
F
le port Gi1/1 de l’état Blocked à l’état Root ๏
Gi1/
1
B
Cette transition peut prendre jusqu’à 50 secondes, l’arbre STP
SW 4
devant être recalculé à nouveau ๏
Gi1/0
Sur la topologie ci-contre, lorsque l’interface Gi1/0 est
๏
Pour un switch d’accès, le long temps de convergence cause un impact majeur aux équipements connectées PC A
PC B 92
Thomas Moegli
92
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
UplinkFast Root Bridge
SW 1
Le problème est que les terminaux connectés à SW4 sont impactés durant la phase de transition
SW 2
De plus, la table CAM de SW2 indique que les terminaux
๏
PC A
PCA et PCB sont joignables via l’interface Gi1/0 de SW4 ๏
SW 3
PC A PC A
Il est nécessaire d’attendre que les entrées expirent (Aging
FB
Time) avant que SW2 se décide à effectuer un broadcast et
Gi1/0
๏
Gi1/
1
B
trouver le lien passant par SW3
SW 4
PC A
LI LE
F
PC B 93
Thomas Moegli
93
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
UplinkFast Root Bridge
SW 1
UplinkFast permet d’activer immédiatement le port Blocked
๏
Trame Multicast Src MAC: PC A
à l’état Forwarding Uplink envoie également depuis SW4 des messages
๏
SW 2
Multicast dont l’adresse source MAC est celui de PC A ou PC
SW 3
๏
Ces adresses sont diffusés sur l’ensemble du domaine et FB
parviennent ainsi à SW2 via SW3 ๏
Gi1/0
B
Gi1/
1
BF
La table CAM de SW2 est ainsi automatiquement modifiée pour transiter immédiatement par SW3 pour atteindre PCA ou
Trame Multicast Src MAC: PC A
SW 4
PCB
PC A
PC B 94
Thomas Moegli
94
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
UplinkFast
๏
UplinkFast s’active de manière globale sur le switch
๏
Switch(config)# spanning-tree uplinkfast Commande : Switch(config) spanning-tree uplinkfast ๏
Par défaut, UplinkFast est désactivé
๏
Vérification : Switch# Switch# show show spanning-tree spanning-treeuplink uplinkfast fast
๏
Ne configurer UplinkFast que sur les switchs qui ne sont pas situés entre le Root Bridge et un autre switch ๏
En résumé, ne configurer UplinkFast que sur les switchs d’accès
UplinkFast ne peut être configuré lorsque RSTP est mis en oeuvre
๏ ๏
Si l’administrateur utilise RSTP, ce mécanisme est déjà inclus dans le protocole lui-même
95
Thomas Moegli
95
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
BackboneFast
/0 Gi1
DP
BackBoneFast est configuré sur tous les switchs
๏ ๏
๏
/1
DP
Gi1
SW 1
BackBoneFast est configuré de manière globale
Permet de réagir à une défaillance indirecte d’un lien RP
RP
/1
Gi1
/1
Gi1
Gi1/0 SW 2
DP
BP
Gi1/0 SW 3 96
Thomas Moegli
96
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
BackboneFast Root Bridge
Lorsque ce lien est rompu, SW2 va croire qu’il sera le
/0
๏
DP
Gi1
Supposons que le lien entre SW2 et SW1 soit défaillant
/1
๏
Gi1
SW 1
DP
Root Bridge SW2 va envoyer un BPDU à SW3 indiquant qu’il est le
๏
Root Bridge ๏
Le Bridge ID de ce BPDU est inférieur au BID envoyé par le vrai Root Bridge (SW1)
/1
Gi1
/1
Le BPDU envoyé par SW2 est appelé un Inferior BPDU
Gi1
๏
RP
RP
Gi1/0
DP
SW 2
SW2 est le Root Bridge (Inferior BPDU)
BP
Gi1/0 SW 3
BPDU 97
Thomas Moegli
97
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
BackboneFast Root Bridge
๏
/0 Gi1
DP
port Gi1/0 va rester en mode Blocking
/1
reçu va simplement être ignoré (car BID inférieur) et le
Gi1
SW 1
Si SW3 n’est pas configuré avec BackboneFast, le BPDU
๏
DP
Attente de 20sec + 2x15 secondes avant que le port Gi1/0 passe à l’état Forwarding
1
/1
Envoi sur tous les ports non DP (dans ce cas, le port RP
RP
RP
Gi1
๏
RLQ Reply
Gi1
Permet d’éviter le délai de 20 secondes
RLQ
Oui. Ce chemin est le
chemin vers le RB
contient toujours un lien vers le Root Bridge SW1 ๏
RLQ Request
RLQ
Si SW3 est configuré avec BackboneFast, il va vérifier s’il
๏
Est-ce que j’ai encore un chemin vers le RB ?
2
4
Gi1/0 SW 2
DP
/1
Gi1/1) d’un RLQ (Root Link Query)
RP
BP 3
RLQ
Gi1/0 SW 3
SW1 est le Root Bridge
(BPDU)
98
Thomas Moegli
98
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
BackboneFast : Configuration ๏
Configurer BackboneFast sur l’ensemble des switchs du réseau
Seuls les switchs sur lesquels BackboneFast est actif peuvent comprendre et traiter les requêtes RLQ
๏
BackboneFast se configure de manière globale sur le switch
๏
Activation de BackboneFast :
SW1(config)# spanning-tree backbonefast
๏
Par défaut, BackboneFast est désactivé
๏
Vérification du fonctionnement :
SW1# show spanning-tree backbonefast
๏
BackboneFast ne s’applique qu’aux topologies avec STP. Avec RSTP, ce mécanisme est intégré nativement dans le protocole
99
Thomas Moegli
99
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
PortFast
PortFast est une fonctionnalité qui permet de faire transiter
๏
les ports d’accès (ceux connectés aux clients) directement à l’état Forwarding ๏
Le port ne transite pas notamment par les états Learning et Listening
F
๏
Le port peut être utilisable dès le démarrage du switch
LI
๏
Permet à certains clients qui démarrent en PXE de recevoir
LE
une configuration IP
100
Thomas Moegli
100
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes d’optimisation STP
PortFast : Configuration ๏
Ne configurer PortFast que sur des interfaces d’accès, sur lesquelles sont connectés les équipements clients
๏
Activer PortFast sur une interface particulière :
SW1(config)# interface FastEthernet0/1 SW1(config-if)# spanning-tree portfast
๏
Activer PortFast sur l’ensemble des interfaces d’accès (pas sur les interfaces de trunk) :
SW1(config)# spanning-tree portfast default
๏
Vérification configuration PortFast :
SW1# show spanning-tree interface FastEthernet 0/0 portfast
101
Thomas Moegli
101
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
BPDU Guard BPDU Guard est un mécanisme de protection qui
๏
empêche tout intrus de connecter un switch et tenter de s’intégrer à la topologie STP. Un risque potentiel est qu’un intrus connecte un switch
๏
externe et tente de communiquer et s’intégrer à l’algorithme STP par le biais d’échanges BPDUs Sur un port d’accès, seuls des équipements terminaux
๏
sont autorisés ๏
BPDU
Aucune trame BPDU ne devrait circuler sur ces ports
BPDU Guard se configure sur les ports d’accès
๏ ๏
Dès qu’un port configuré avec BPDU Guard détecte des
BPDU
trames BPDU qui y circulent, le mécanisme bloque immédiatement le port ๏
Le port est mis à l’état err-disable 102
Thomas Moegli
102
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
BPDU Guard : Configuration
๏
Configurer BPDU Guard sur un port particulier :
SW1(config)# interface FastEthernet0/1 SW1(config-if)# spanning-tree bpduguard enable
๏
Configurer BPDU Guard sur l’ensemble des ports ou PortFast est actif :
SW1(config)# spanning-tree portfast bpduguard default
๏
Vérifier la configuration de BPDU Guard :
SW1# show spanning-tree summary totals
103
Thomas Moegli
103
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
BPDU Filter BPDU
BPDU Filter permet d’empêcher de transmettre les messages
๏
BPDUs sur un port particulier
BPDU
BPDU
Prudence lors de la configuration car ce mécanisme peut
๏
empêcher le fonctionnement de STP si mal configuré ๏
BPDU
Ne pas utiliser BPDU Filter sauf si cela est absolument
BPDU Filter
nécessaire
Exemple : Deux topologies STP distinctes mais connectées
๏
BPDU
peuvent fonctionner ๏
BPDU Filter empêche que les messages BPDU d’une instance STP soient transmis à l’autre instance STP
BPDU BPDU
BPDU
104
Thomas Moegli
104
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
BPDU Filter : Configuration ๏
Activer BPDU sur un port spécifique :
SW1(config)# interface FastEthernet0/1 SW1(config-if)# spanning-tree bpdufilter enable
๏
Activer BPDU Filter sur l’ensemble des ports ayant PortFast activé :
SW1(config)# spanning-tree pordtfast bpdufilter default
๏
Vérifier la configuration globale de BPDU Filter :
SW1# show spanning-tree summary totals
๏
Vérifier la configuration de BPDU Filter pour un port particulier :
SW1# show spanning-tree interface Ethernet 0/0 detail
105
Thomas Moegli
105
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Root Guard SW1
SW2
Configurer RootGuard uniquement sur ces interfaces SW3
๏
Root Guard est une fonctionnalité qui permet de garantir certains switchs (généralement les switchs Core et Distribution) d’être Root Bridge et d’éviter qu’un switch d’accès ne devienne par mégarde Root Bridge
๏
Les switchs d’accès sont généralement moins performants et disposent de moins de ressources CPU et mémoire.
Si ils deviennent Root Bridge, la charge processeur et mémoire liée aux calculs STP risquent de rendre ces switchs instables et défaillants.
๏
Ils risquent également de devenir un noeud principal pour le trafic de données entre VLANs ๏
Le chemin n’est pas optimal
๏
Le switch ne dispose pas des ressources pour gérer ce volume de trafic. Un goulet d’étranglement risque de se produire
๏
Un risque de sécurité est présent si un attaquant tente volontairement d’élire son switch en Root Bridge 106
Thomas Moegli
106
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Root Guard Primary Root Bridge
Secondary Root Bridge
SW 1
SW 2 Gi1/0/1
Gi1/0/1
2
Gi1
/0/
/0/
2
Gi1 Rootguard
Rootguard
RootGuard ne doit être configuré que sur les ports qui ne
๏
seront pas connectés à un Root Bridge Les ports sur lesquels RootGuard est configuré se mettent
๏
en err-disable (Root Inconsistent) s’ils reçoivent un BPDU supérieur (BID plus haut).
/0/
/0/
Gi1
2
Ils ignorent donc les BPDU reçus sur cette interface
1
Gi1
๏
SW 3 107
Thomas Moegli
107
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Root Guard : Configuration
๏
Configurer Root Guard sur un port particulier :
SW1(config)# interface FastEthernet0/1 SW1(config-if)# spanning-tree guard root
๏
Vérifier si un port est à l’état err-disable (Root Inconsistent) :
SW1# show spanning-tree inconsistentports
108
Thomas Moegli
108
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Loop Guard DP
SW 1
RP
Gi1/0/1
2 /0/
/0/ 2
Permet de placer un Designated Port à l’état Err-disable (Loop
๏
Gi1/0/1
Gi1
DP
SW 2
Loopguard
Rootguard
Rootguard
DP
Gi1
Root Bridge
Loopguard
Inconsistent) s’il ne reçoit plus de BPDU Peut être activé individuellement par port
๏ ๏
Se configure généralement sur tous les liens non configurés pour RootGuard
Peut être activé de manière globale
Gi1
RP
/0/ 1
Loopguard
2
S’active sur tous les liens Point-to-Point BP
/0/
๏
Gi1
๏
Loopguard
SW 3 109
Thomas Moegli
109
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Loop Guard DP
SW 1
RP
Gi1/0/1
2 /0/
/0/ 2
Dans l’exemple ci-contre, le lien entre SW2 et SW3 est
๏
Gi1/0/1
Gi1
DP
SW 2
Loopguard
Rootguard
Rootguard
DP
Gi1
Root Bridge
Loopguard
endommagé. SW3 ne reçoit plus les informations de SW2 ๏
Il peut s’agir d’un libre fibre optique, le lien RX ayant pu être endommagé physiquement
๏
SW3 ne reçoit plus les BPDU de SW2
๏
Si SW3 Gi1/0/2 est configuré avec Loop Guard, le port se met BP
/0/
/0/ 1
Loopguard
Gi1
Gi1
RP
2
à l’état Err-Disable (Loop Inconsistent) Loopguard
SW 3 110
Thomas Moegli
110
Cisco - Spanning-Tree - 11 novembre 2017
Mécanismes de sécurité
Loop Guard : Configuration
๏
Configurer Loop Guard sur un port particulier :
SW1(config)# interface FastEthernet0/1 SW1(config-if)# spanning-tree guard loop
๏
Configurer Loop Guard sur l’ensemble des interfaces connectés à des liens Point-to-Point :
SW1(config)# spanning-tree loopguard default
๏
Vérifier si la fonction LoopGuard est activée :
SW1# show spanning-tree summary
111
Thomas Moegli
111
Cisco - Spanning-Tree - 11 novembre 2017