ANALOGIE SYSTÉMIQUE
Thème_central: "L'ART DE LA SYMPHONIE RÉSEAU"
Métaphore: "Un EtherChannel, c'est comme un orchestre symphonique. Chaque musicien (lien physique) peut jouer seul, mais c'est le chef d'orchestre (Port-Channel) qui les synchronise pour créer une œuvre unique, plus puissante et résiliente."
Éléments_clés:
- Chef d'orchestre (Port-Channel) : Interface logique unique qui dirige l'ensemble
- Musiciens (Liens physiques) : Ports individuels (Fa0/1, Fa0/2) qui exécutent
- Partition (Configuration) : Doit être identique pour tous les musiciens
- Tempo (Vitesse/Duplex) : Tous doivent jouer à la même vitesse (1Gbps) et en harmonie (full-duplex)
- Protocole de répétition (PAgP/LACP) : Comment l'orchestre se met d'accord pour jouer ensemble
Risque_analogique: "Un musicien qui joue hors tempo (mauvaise vitesse) ou une partition différente (VLAN mismatch) fait fausser tout l'orchestre → panne de l'EtherChannel."
MODÈLE MENTAL (Diagramme Flowchart)
NOYAU DUR (Les lois Immuables)
1. Loi #1 : LA CONFIGURATION DOIT ÊTRE IDENTIQUE SUR TOUS LES PORTS.
Preuve/Pourquoi : L'EtherChannel échoue si un seul paramètre diffère (VLAN, vitesse, duplex, mode trunk/access). Le Port-Channel applique une configuration unique à tous les membres.
2. Loi #2 : LES MODES DE NÉGOCIATION DOIVENT ÊTRE COMPATIBLES.
Preuve/Pourquoi :
- PAgP:
desirable↔desirableouauto✓ |auto↔auto✗ (tous deux passifs) - LACP:
active↔activeoupassive✓ |passive↔passive✗ - Mode
onne fonctionne qu'avecon(aucun paquet de négociation échangé)
3. Loi #3 : ETHERCHANNEL EST UNE INTERFACE LOGIQUE, PAS PHYSIQUE.
Preuve/Pourquoi : STP voit un EtherChannel comme UN seul lien logique. Tous les ports membres sont soit TOUS bloqués, soit TOUS forwarding. Jamais partiellement.
4. Loi #4 : 8 PORTS MAXIMUM PAR ETHERCHANNEL (LIMITE MATÉRIELLE).
Preuve/Pourquoi : Spécification IEEE/Cisco. Au-delà, le commutateur rejette l'ajout. La plupart des plates-formes supportent 8 liens actifs en LACP, avec 8 supplémentaires en standby.
5. Loi #5 : TOUTE CONFIGURATION SE FAIT SUR LE PORT-CHANNEL, PAS LES PORTS INDIVIDUELS.
Preuve/Pourquoi : Configurer individuellement un port membre rompt la cohérence. Toujours utiliser interface port-channel X.
PROFONDEUR SÉCURITÉ & MÉTIER
🚨 RISQUE PRINCIPAL
Risque Principal : Échec silencieux de l'EtherChannel → Perte de redondance et de bande passante sans alerte.
Attaque Type : Pas une attaque directe, mais une dégradation de service due à une configuration incorrecte.
Détection :
# Surveillance proactive avec SNMP/Monitoring
show etherchannel summary
show interfaces port-channel 1 counters
Script de monitoring Python (à exécuter toutes les 5 minutes) :
import netmiko, time
device = {'device_type': 'cisco_ios', 'host': 'switch1', 'username': 'admin', 'password': 'password'}
conn = netmiko.ConnectHandler(**device)
output = conn.send_command('show etherchannel summary')
if 'D' in output or 'I' in output: # D=Down, I=Inactive
send_email_alert("EtherChannel Degraded!")
Mitigation Immédiate :
! Vérifier et corriger la cohérence
interface range fa0/1 - 2
switchport mode trunk
switchport trunk allowed vlan 1,10,20
channel-group 1 mode active
exit
interface port-channel 1
description TRUNK_TO_CORE
!
Intégration Entreprise :
- Ansible Playbook pour déployer des EtherChannels standardisés :
- name: Configure EtherChannel LACP
cisco.ios.ios_lag_interfaces:
config:
- name: Port-channel1
members:
- member: FastEthernet0/1
mode: active
- member: FastEthernet0/2
mode: active
mode: "lacp"
state: merged
- SIEM Alerting : Monitorer les logs pour les messages %EC-5-L3DONTBNDL2 (incompatibilité couche 2)
PROFONDEUR EXAMEN CCNA
Détail Oublié #1 : "PAgP et LACP utilisent des multicast différents : PAgP = 01-00-0C-CC-CC-CC, LACP = 01-80-C2-00-00-02. Ce détail est crucial pour l'analyse Wireshark."
Piège Fréquent #2 : "Un Port-Channel peut être en mode trunk alors que ses membres physiques sont en mode access. La configuration sur le Port-Channel prime toujours."
Piège Fréquent #3 : "La commande channel-group 1 mode active crée automatiquement interface port-channel 1 si elle n'existe pas. Ne pas la créer manuellement d'abord."
"Switch A a channel-group 1 mode desirable sur Fa0/1-2. Switch B a channel-group 1 mode auto sur Fa0/1-2. L'EtherChannel se formera-t-il ? Pourquoi ?"
Réponse : Oui, car desirable (actif) initie la négociation et auto (passif) répond. Résultat : SU dans show etherchannel summary.
LAB COMPLET : DE LA CONFIG À L'AUTOMATISATION
Niveau 1 (CCNA) : Configuration Fondamentale
! Configuration LACP de base
Switch(config)# interface range fastEthernet 0/1 - 4
Switch(config-if-range)# channel-group 1 mode active
Creating a port-channel interface Port-channel 1 *Message système important*
Switch(config-if-range)# exit
Switch(config)# interface port-channel 1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan 1,10,20,99
Objectif : Créer un EtherChannel 4 liens avec LACP
Vérification : show etherchannel summary
Sortie attendue :
Group Port-channel Protocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(SU) LACP Fa0/1(P) Fa0/2(P) Fa0/3(P) Fa0/4(P)
SU = Layer2, Up | P = Port en mode Active dans le bundle
Niveau 2 (Production Sécurisée) : Hardening
! Best practices production
interface Port-channel1
description TRUNK_TO_CORE_SWITCH
switchport mode trunk
switchport trunk native vlan 999 ! VLAN dédié non utilisé
switchport trunk allowed vlan 10,20,30
switchport nonegotiate ! Désactive DTP sur le trunk
load-balance src-dst-ip ! Optimise la répartition du trafic
spanning-tree guard root ! Protection STP
!
interface range fa0/1 - 4
channel-group 1 mode active
lacp max-bundle 4 ! Limite à 4 liens actifs maximum
spanning-tree portfast disable ! Important pour les ports de trunk
Risque si omis : Sans switchport nonego, risque de négociation DTP non désirée. Sans lacp max-bundle, tous les liens tentent d'être actifs, pouvant saturer la capacité.
Niveau 3 (Expert/Automatisation) : Script & Scale
# Script Python pour déployer des EtherChannels sur plusieurs switches
from netmiko import ConnectHandler
import yaml
devices = yaml.safe_load("""
switches:
- name: switch1
ip: 192.168.1.1
bundles:
- id: 1
ports: ['Fa0/1', 'Fa0/2', 'Fa0/3', 'Fa0/4']
mode: 'active'
vlans: '10,20,30'
- name: switch2
ip: 192.168.1.2
bundles: [...]
""")
for switch in devices['switches']:
conn = ConnectHandler(device_type='cisco_ios', host=switch['ip'],
username='admin', password='Cisco123')
for bundle in switch['bundles']:
commands = [
f"interface range {','.join(bundle['ports'])}",
f"channel-group {bundle['id']} mode {bundle['mode']}",
"exit",
f"interface port-channel {bundle['id']}",
"switchport mode trunk",
f"switchport trunk allowed vlan {bundle['vlans']}",
"switchport nonegotiate"
]
output = conn.send_config_set(commands)
print(f"Configuré {switch['name']} - Bundle {bundle['id']}")
Avantage : Déploiement cohérent sur 50 switches en 2 minutes vs 2 heures manuellement. Élimination des erreurs de frappe.
SCÉNARIO DE DÉPANNAGE AVANCÉ
Symptôme Complexe : "Les liens physiques sont up/up, le Port-Channel est créé, mais le trafic ne passe pas. show etherchannel summary montre D (down) pour le Port-Channel."
Processus de Diagnostic (Arbre Décisionnel) :
1. Vérifier la cohérence VLAN native :
show interfaces trunk | include Native
Si différent sur les ports membres → Corriger avec :
interface range fa0/1-2
switchport trunk native vlan 999
2. Vérifier les erreurs sur les interfaces physiques :
show interfaces fa0/1 counters errors
show interfaces fa0/2 counters errors
Si CRC/alignment errors → Problème de câblage ou de carte réseau.
3. Vérifier la compatibilité PAgP/LACP :
show etherchannel port-channel
Regarder "Flags:" - D = désactivé par le protocole.
4. Vérifier STP :
show spanning-tree interface port-channel 1
Si bloqué (BLK) → Vérifier la priorité STP ou les boucles.
Root Cause Probable : Mismatch de VLAN natif entre les ports membres. Très courant en production.
Fix et Rollback :
! Fix
interface range fa0/1 - 2
switchport trunk native vlan 999
end
clear etherchannel 1 force ! Force la re-négociation
! Vérification du fix
show etherchannel summary
show interfaces port-channel 1
! Rollback au cas où
configure terminal
interface range fa0/1 - 2
switchport trunk native vlan 1
end
CONNECTIONS SYSTÉMIQUES
← Module Précédent (STP) : STP bloquait les liens redondants pour éviter les boucles, gaspillant la bande passante. EtherChannel résout ce dilemme en faisant apparaître plusieurs liens physiques comme UN lien logique aux yeux de STP.
→ Module Suivant (FHRP - HSRP/VRRP) : Avec EtherChannel, vous avez maintenant un lien trunk haute disponibilité entre switches. La prochaine étape est d'assurer la redondance de la gateway par défaut avec HSRP/VRRP. Un EtherChannel défaillant rendrait inutile la redondance FHRP.
Écosystème Réel :
- Avec les Firewalls : Certains firewalls (ASA, Palo Alto) supportent l'agrégation de liens avec les switches.
- Avec les Serveurs : NIC Teaming (Windows/Linux) ↔ LACP sur le switch.
- Avec SDN (ACI) : vPC (Virtual Port-Channel) étend le concept entre deux switches Nexus.
VALIDATION PAR EXERCICE MENTAL
"Si EtherChannel est un orchestre, que se passe-t-il si un violoniste (port Fa0/1) décide de jouer une partition de jazz (VLAN 30) alors que l'orchestre joue du classique (VLAN 10) ?"
Réponse : L'EtherChannel entier tombe. Le chef d'orchestre (Port-Channel) exige l'uniformité.
"Un EtherChannel entre deux switches a été configuré avec channel-group 1 mode on des deux côtés. Le technicien ajoute un troisième lien Fa0/3 avec channel-group 1 mode active. Que se passe-t-il ?"
Réponse : L'EtherChannel entier tombe. Mode on ≠ Mode active. Ils sont incompatibles. Tous les ports doivent avoir le même mode.
"Il est 3h du matin, tous les utilisateurs du VLAN 10 se plaignent d'une connexion réseau lente. Vous voyez que l'EtherChannel Po1 vers le core switch montre 4 liens, mais seulement 1 avec (P) et 3 avec (s) en LACP. Votre première commande, votre première hypothèse, et votre plan d'action en 3 étapes ?"
Première commande :
show lacp internal ! Voir l'état LACP détaillé
Première hypothèse : Limite lacp max-bundle mal configurée ou différente des deux côtés, forçant des liens en standby.
Plan d'action :
show run interface port-channel1sur les deux switches pour vérifierlacp max-bundle- Uniformiser à la même valeur (ex: 4) des deux côtés
clear lacp counterset surveiller la reconvergence avecshow etherchannel summary
MICRO-KIT ESSENTIEL (SYNTHÈSE 1 PAGE A4)
Version imprimable pour révision accélérée avant l'examen
LES 5 LOIS IMMUABLES
- Uniformité obligatoire : Tous les ports = même VLAN/trunk, vitesse, duplex.
- Compatibilité des modes : PAgP: D↔D ou D↔A ✓ | LACP: A↔A ou A↔P ✓
- Port-Channel = Interface maître : Configurez TOUT sur
interface port-channel X. - 8 liens max : Limite matérielle absolue par EtherChannel.
- STP voit UN lien : Tout ou rien - tous les liens sont bloqués ou forwarding ensemble.
MINI-MODÈLE MENTAL
6 COMMANDES CLI
show etherchannel summary
show interfaces port-channel 1
show etherchannel port-channel
show run interface port-channel 1
show lacp neighbor
show pagp neighbor
3 PIÈGES CCNA
auto↔auto(PAgP) = ❌ Échec- VLAN natif différent = ❌ Échec silencieux
- Configurer ports physiques après création = ❌ Rompt l'agrégation
DÉPANNAGE 3 ÉTAPES
- Vérifier :
show etherchannel summary→ ChercherDouI - Diagnostiquer :
show interfaces trunk→ Vérifier VLAN natif/match - Corriger : Uniformiser config sur
interface port-channel X
RISQUE + MITIGATION
Risque : VLAN Hopping via trunk auto-négociation
Mitigation : switchport nonego + VLAN natif dédié non routé
ÉQUATION MENTALE
EtherChannel Réussi = (Config_identique × Protocole_compatible) + Port_Channel_config