CCNA 200-301 · Switching

Le Spanning-Tree BPDU Guard

Sur un port PortFast, le BPDU Guard ignore et neutralise toute trame BPDU reçue : il protège la topologie Spanning-Tree contre l’introduction d’un switch pirate.

Présentation du Spanning-Tree BPDU Guard

BPDU = Bridge Protocol Data Unit

Les trames BPDU sont des trames générées par le protocole Spanning-Tree.

Présentation du BPDU Guard
Présentation du BPDU Guard

Elles permettent de :

  • S’annoncer aux autres Switchs.
  • Recevoir des informations Spanning-Tree de ses voisins.

Dans l’article précédent, nous avons vu l’utilité du PortFast. Le BPDU Guard permet d’ignorer toutes les trames BPDU reçues sur un port utilisant le PortFast.

Pourquoi activer le BPDU Guard

Mise en situation

Prenons cette architecture en exemple :

BPDU Guard - Exemple 1
Architecture de base
  • Le PVST+ est activé par défaut.
  • Tous nos équipements ont la valeur de Bridge-ID par défaut.
  • Le Switch B a l’adresse MAC la plus basse, il devient donc le ROOT-BRIDGE.

PVST en conclut la topologie suivante :

BPDU Guard - Topologie PVST
Topologie PVST

Dans la peau d’un pirate

Action

  • J’ai un ordinateur avec deux cartes réseau.
  • Je me connecte sur le Switch B et C.
  • Je génère des trames BPDU sur mes deux interfaces avec un Bridge ID inférieur au root-bridge actuel.

Conséquences

  • Je deviens le Root Bridge de la topologie Spanning Tree !!
  • La topologie est recalculée par PVST :
BPDU Guard - Dans la peau d'un Pirate
Dans la peau d’un Pirate

Notre topologie a changé.

Tous les flux transitent par le « Pirate » !

Deux solutions s’offrent à lui :

  • Se comporter comme un Switch (pour récupérer des informations).
  • Faire du déni de service.

Si le BPDU Guard est activé sur une interface et que celle-ci reçoit une trame BPDU, le port va se mettre en ERR-DISABLE. Ceci permet à l’administrateur réseau de traiter la source du problème tout en gardant la topologie spanning-tree opérationnelle.

Le BPDU Guard met le port en mode ERR-DISABLE
Le BPDU Guard met le port en mode ERR-DISABLE

Configuration du BPDU Guard

Exemple :

  • Nous avons un Switch 24 ports FastEthernet + 2 ports GigaBitEthernet.
  • Les ports FastEthernet vont nous servir de ports d’accès client.
  • Les ports GigaBitEthernet vont être nos ports Trunk.
  • Nous voulons activer le portfast sur tous nos ports d’accès client.

Pour ce faire, deux solutions :

Activer le BPDU Guard port par port

Switch(config)# interface range Fa 0/1 - 24 Switch(config-if)# spanning-tree bpduguard enable

Activer le BPDU Guard pour tous les ports

Switch(config)# spanning-tree portfast default Switch(config)# spanning-tree portfast bpduguard default Switch(config)# interface range Gi 1/1 - 2 Switch(config-if)# spanning-tree portfast disable

La commande spanning-tree portfast default permet d’activer le PortFast sur tous les ports du switch. La commande spanning-tree portfast bpduguard default permet d’activer le BPDU Guard sur tous les ports utilisant le PortFast. La commande spanning-tree portfast disable permet de désactiver le PortFast précédemment activé ; par conséquent, le BPDU Guard sera aussi désactivé.

Conclusion

Si vous activez le PortFast, activez aussi le BPDU Guard !
Portrait d'Eric Jouffrion, contributeur du site FingerInTheNet

Eric JOUFFRILLON

Co-auteur de l'article

Expert SATCOM
Technicien Réseau
17 ans d’éxpérience déploiement réseau SATCOM
Spécialisé LFN (Long Fat Network).Diffusion vidéo et QOS.

Photo en noir et blanc de Noël Nicolas

Noël NICOLAS

Auteur de l'article

Expert Réseau
15 ans d’expérience
CCNP Routing and Switching
Fondateur du site FingerInTheNet

Formation CCNA 200-301Formation CCNA

Devenez certifié CCNA 200-301

La formation complète Cisco, à votre rythme et accès à vie.

Voir la formation →