Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

Chapitre 225 minIntermédiaire

VLAN et trunk 802.1Q : configurer un switch Cisco

Par Josselyn C., prof de BTS SIO. Mis à jour le .

À la fin de ce chapitre, tu sauras

  • expliquer ce qu'apporte un VLAN et nommer les types de VLAN ;
  • configurer des ports d'accès, un VLAN voix et des trunks 802.1Q ;
  • choisir le VLAN natif et neutraliser DTP et VTP ;
  • vérifier avec show vlan brief et show interfaces trunk.

6 exercices corrigés1 schéma

Un VLAN (Virtual LAN) est un réseau local logique créé sur un switch administrable : les ports d'un même VLAN communiquent entre eux comme s'ils avaient leur propre switch, et ne voient rien des autres VLAN. Un trunk est un lien qui transporte plusieurs VLAN à la fois, en ajoutant à chaque trame une étiquette 802.1Q qui dit à quel VLAN elle appartient. Ce chapitre explique ces deux mécanismes en détail et donne la configuration complète des switchs de Sorbier.

Pourquoi découper un réseau en VLAN

Sans VLAN, tous les ports de tous les switchs reliés entre eux forment un seul domaine de diffusion : un broadcast émis par un poste (une requête ARP, une demande DHCP) arrive à toutes les machines, des caméras aux serveurs. Chez Sorbier, avant le découpage, les visiteurs du Wi-Fi étaient dans le même réseau que le serveur de fichiers.

Découper en VLAN apporte quatre bénéfices :

  • La sécurité. Une machine du VLAN 40 (visiteurs) ne peut pas envoyer une trame à une machine du VLAN 20 (serveurs). Pour passer, il faut traverser un équipement qui route, et qui peut filtrer (chapitre 9).
  • Les performances. Les broadcasts restent dans leur VLAN : moins de bruit pour tout le monde.
  • La souplesse. Le VLAN ne dépend pas de l'emplacement : un poste de la comptabilité installé au rez-de-chaussée reste dans le VLAN des postes, il suffit de configurer son port.
  • La gestion. Un VLAN par usage, un réseau IP par VLAN : le plan d'adressage, les règles de filtrage et la supervision deviennent lisibles.

Les types de VLAN

TypeRôleChez Sorbier
VLAN de donnéesTransporte le trafic des utilisateurs10 POSTES, 30 ENTREPOT, 40 VISITEURS
VLAN voixSépare le trafic des téléphones IP, pour lui donner la priorité50 TELEPHONIE
VLAN de gestion (d'administration)Porte les adresses d'administration des équipements99 ADMIN
VLAN par défautLe VLAN 1 : tous les ports y sont au départ ; on ne peut ni le supprimer ni le renommerAucune machine dedans
VLAN natifLe VLAN dont les trames circulent sans étiquette sur un trunk (VLAN 1 par défaut)999, sans aucune machine
VLAN parkingAccueille les ports inutilisés, désactivés998

Les numéros vont de 1 à 4094. Les VLAN 1002 à 1005 sont réservés à d'anciennes technologies (Token Ring, FDDI) et apparaissent dans toutes les listes sans servir. Les VLAN 1006 à 4094 forment la plage « étendue », utilisable sur tous les switchs actuels.

Créer les VLAN

Sur SW-ETAGE1, on crée les VLAN dont le switch a besoin, chacun avec un nom :

text
SW-ETAGE1(config)# vlan 10
SW-ETAGE1(config-vlan)# name POSTES
SW-ETAGE1(config-vlan)# vlan 50
SW-ETAGE1(config-vlan)# name TELEPHONIE
SW-ETAGE1(config-vlan)# vlan 99
SW-ETAGE1(config-vlan)# name ADMIN
SW-ETAGE1(config-vlan)# vlan 998
SW-ETAGE1(config-vlan)# name PARKING
SW-ETAGE1(config-vlan)# vlan 999
SW-ETAGE1(config-vlan)# name NATIF
SW-ETAGE1(config-vlan)# end

Un switch n'a besoin de connaître que les VLAN qu'il transporte. SW-ETAGE1 dessert des postes et des téléphones : il n'a pas à connaître le VLAN 20 des serveurs. Le switch de cœur, lui, les connaît tous.

Les noms sont libres, mais ils doivent être les mêmes sur tous les switchs : show vlan brief est lu par des humains, et un VLAN 10 nommé POSTES ici et COMPTA là-bas sème le doute en plein dépannage.

Les ports d'accès

Un port d'accès appartient à un seul VLAN. Il reçoit et envoie des trames ordinaires, sans étiquette : le poste branché dessus ne sait même pas qu'il est dans un VLAN.

text
SW-ETAGE1(config)# interface range GigabitEthernet1/0/1 - 24
SW-ETAGE1(config-if-range)# description Postes du 1er etage
SW-ETAGE1(config-if-range)# switchport mode access
SW-ETAGE1(config-if-range)# switchport access vlan 10
SW-ETAGE1(config-if-range)# switchport voice vlan 50
SW-ETAGE1(config-if-range)# switchport nonegotiate
SW-ETAGE1(config-if-range)# spanning-tree portfast
SW-ETAGE1(config-if-range)# spanning-tree bpduguard enable
SW-ETAGE1(config-if-range)# exit
  • switchport mode access fixe le port en mode accès, sans négociation possible vers un trunk.
  • switchport access vlan 10 le place dans le VLAN 10. Si le VLAN n'existe pas encore, les Catalyst récents le créent automatiquement (« Access VLAN does not exist. Creating vlan 10 »), mais sans nom : crée toujours tes VLAN d'abord.
  • switchport voice vlan 50 est expliqué juste après ; switchport nonegotiate coupe le protocole DTP (voir plus bas) ; les deux lignes spanning-tree sont au chapitre 4.

Les ports inutilisés vont dans le VLAN parking, désactivés :

text
SW-ETAGE1(config)# interface range GigabitEthernet1/0/25 - 46
SW-ETAGE1(config-if-range)# description Ports inutilises
SW-ETAGE1(config-if-range)# switchport mode access
SW-ETAGE1(config-if-range)# switchport access vlan 998
SW-ETAGE1(config-if-range)# shutdown

Le VLAN voix

Un téléphone IP a souvent deux prises : l'une vers le mur, l'autre pour le PC. Un seul port du switch transporte alors deux trafics. Avec switchport voice vlan 50, le switch annonce au téléphone, par CDP ou LLDP, qu'il doit étiqueter ses trames dans le VLAN 50 ; le PC branché derrière continue d'envoyer des trames sans étiquette, rangées dans le VLAN d'accès 10. Le téléphone marque aussi ses trames avec une priorité élevée (le champ PCP de l'étiquette, valeur 5 en général), que les switchs servent en premier : la voix ne hache pas quand un PC télécharge un gros fichier.

Le port reste un port d'accès, avec un VLAN de données et un VLAN voix. Ce n'est pas un trunk.

Le trunk et l'étiquette 802.1Q

Le lien entre SW-ETAGE1 et le switch de cœur doit transporter le VLAN 10, le VLAN 50 et le VLAN 99. Plutôt que trois câbles, on utilise un trunk (en français, lien d'agrégation de VLAN, ou lien « tagué ») : un seul lien, sur lequel chaque trame porte une étiquette (tag) qui indique son VLAN. Le format de cette étiquette est défini par la norme IEEE 802.1Q.

SW-ETAGE1SW-COEURtrunk 802.1Qchaque trame étiquetéePCVLAN 10Téléphone IPVLAN 50ServeurVLAN 20ports d'accès : trames sans étiquetteLa trame sur le trunkMAC dest.6 octetsMAC source6 octetsÉtiquette 802.1Q4 octetsType2Données46 à 1 500 octetsFCSrecalculéTPID0x8100 · 16 bitsPCP3 bitsDEI1 bitVID (VLAN)12 bits
Sur un port d'accès, la trame est ordinaire ; sur un trunk, une étiquette de 4 octets dit son VLAN

L'étiquette fait 4 octets et s'insère entre l'adresse MAC source et le champ Type de la trame Ethernet :

ChampTailleContenu
TPID (Tag Protocol Identifier)16 bitsToujours 0x8100 : « attention, une étiquette 802.1Q suit »
PCP (Priority Code Point)3 bitsPriorité de 0 à 7 (norme 802.1p) : 5 pour la voix, 0 par défaut
DEI (Drop Eligible Indicator)1 bitTrame à jeter en premier en cas d'encombrement
VID (VLAN Identifier)12 bitsLe numéro de VLAN : 2¹² = 4 096 valeurs, dont 0 et 4095 réservées, d'où les VLAN 1 à 4094

Le switch ajoute l'étiquette quand une trame part sur un trunk, et la retire quand elle sort sur un port d'accès. Comme la trame change, il recalcule son FCS. Une trame étiquetée peut atteindre 1 522 octets au lieu de 1 518.

Configurer un trunk

Côté SW-ETAGE1, le port 48 remonte vers le switch de cœur :

text
SW-ETAGE1(config)# interface GigabitEthernet1/0/48
SW-ETAGE1(config-if)# description Uplink vers SW-COEUR Gi1/0/1
SW-ETAGE1(config-if)# switchport mode trunk
SW-ETAGE1(config-if)# switchport trunk native vlan 999
SW-ETAGE1(config-if)# switchport trunk allowed vlan 10,50,99
SW-ETAGE1(config-if)# switchport nonegotiate
SW-ETAGE1(config-if)# end

Côté SW-COEUR, la même configuration sur le port d'en face :

text
SW-COEUR(config)# interface GigabitEthernet1/0/1
SW-COEUR(config-if)# description Downlink vers SW-ETAGE1 Gi1/0/48
SW-COEUR(config-if)# switchport mode trunk
SW-COEUR(config-if)# switchport trunk native vlan 999
SW-COEUR(config-if)# switchport trunk allowed vlan 10,50,99
SW-COEUR(config-if)# switchport nonegotiate
  • switchport mode trunk fixe le port en trunk.
  • switchport trunk allowed vlan limite les VLAN transportés. Par défaut, un trunk les transporte tous : les broadcasts de chaque VLAN partent alors partout, même là où personne ne les attend. On n'autorise que le nécessaire.
  • switchport trunk native vlan 999 change le VLAN natif (paragraphe suivant).
  • Les descriptions disent où va le câble : en dépannage, c'est précieux.

Le VLAN natif

Sur un trunk 802.1Q, les trames d'un VLAN circulent sans étiquette : c'est le VLAN natif. Une trame reçue sans étiquette sur un trunk est rangée dans ce VLAN. Le mécanisme existe pour les appareils qui ne comprennent pas les étiquettes, mais il pose deux problèmes :

  • Les deux extrémités doivent avoir le même VLAN natif. Sinon, les trames du VLAN natif d'un côté arrivent dans un autre VLAN de l'autre côté : deux VLAN se retrouvent mélangés. Les switchs Cisco le signalent par un message CDP (%CDP-4-NATIVE_VLAN_MISMATCH), et le Spanning Tree bloque le VLAN concerné.
  • Le saut de VLAN par double étiquetage. Un attaquant branché dans le VLAN natif peut fabriquer une trame avec deux étiquettes : le premier switch retire l'étiquette extérieure (celle du VLAN natif, qui circule sans étiquette) et le second lit l'étiquette intérieure, celle d'un autre VLAN. L'attaque est décrite, avec ses parades, dans le chapitre Sécurité des switchs.

D'où la règle appliquée chez Sorbier : le VLAN natif est un VLAN sans aucune machine (999), le même sur tous les trunks, et le VLAN 1 n'est utilisé par personne.

DTP : la négociation des trunks

Les switchs Cisco savent négocier tout seuls si un lien devient un trunk, avec le protocole propriétaire DTP (Dynamic Trunking Protocol). Chaque port a un mode :

ModeComportement
accessToujours en accès
trunkToujours en trunk, et envoie des messages DTP pour proposer le trunk à l'autre côté
dynamic desirableDemande activement le trunk
dynamic autoAccepte le trunk si l'autre côté le demande ; mode par défaut des 2960 et des Catalyst 9000

Le résultat de la négociation selon les modes des deux extrémités :

dynamic autodynamic desirabletrunkaccess
dynamic autoAccèsTrunkTrunkAccès
dynamic desirableTrunkTrunkTrunkAccès
trunkTrunkTrunkTrunkIncohérent : à éviter
accessAccèsAccèsIncohérent : à éviterAccès

Deux ports en dynamic auto, le réglage d'usine, restent en accès : c'est pour ça qu'un lien entre deux switchs neufs ne devient pas un trunk tout seul.

Où sont enregistrés les VLAN

Les VLAN 1 à 1005 ne sont pas stockés dans la startup-config, mais dans un fichier à part, vlan.dat, dans la mémoire flash du switch. Ce fichier est écrit dès la création du VLAN, sans copy running-config startup-config. Deux conséquences :

  • pour remettre un switch à zéro, erase startup-config ne suffit pas : il faut aussi delete flash:vlan.dat, puis reload ;
  • un switch récupéré dans un autre service arrive avec ses VLAN, même si sa configuration a été effacée.

Ce fonctionnement vient de VTP (VLAN Trunking Protocol), un protocole Cisco qui propage la liste des VLAN d'un switch « serveur » à tous les switchs « clients » du même domaine. Pratique sur le papier, VTP a causé tant de pannes (un switch de test branché avec un numéro de révision plus élevé efface les VLAN de tout le réseau) qu'on le neutralise presque toujours :

text
SW-ETAGE1(config)# vtp mode transparent

En mode transparent, le switch garde sa propre liste de VLAN, ne l'impose à personne et n'accepte celle de personne. Ses VLAN apparaissent alors aussi dans la running-config, ce qui permet de les sauvegarder avec le reste. VTP version 3 propose aussi le mode off.

Vérifier la configuration

show vlan brief liste les VLAN et leurs ports d'accès :

text
SW-ETAGE1# show vlan brief

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active
10   POSTES                           active    Gi1/0/1, Gi1/0/2, Gi1/0/3, Gi1/0/4
                                                Gi1/0/5, Gi1/0/6, Gi1/0/7, Gi1/0/8
                                                ...
50   TELEPHONIE                       active    Gi1/0/1, Gi1/0/2, Gi1/0/3, Gi1/0/4
                                                ...
99   ADMIN                            active
998  PARKING                          active    Gi1/0/25, Gi1/0/26, Gi1/0/27, Gi1/0/28
                                                ...
999  NATIF                            active
1002 fddi-default                     act/unsup
1003 token-ring-default               act/unsup
1004 fddinet-default                  act/unsup
1005 trnet-default                    act/unsup

Les ports trunk n'y apparaissent pas : la liste ne montre que les ports d'accès. Les ports avec un VLAN voix apparaissent dans les deux VLAN. Si un VLAN manque ici, aucun port ne peut le transporter.

show interfaces trunk montre les trunks et ce qu'ils transportent vraiment :

text
SW-ETAGE1# show interfaces trunk

Port        Mode             Encapsulation  Status        Native vlan
Gi1/0/48    on               802.1q         trunking      999

Port        Vlans allowed on trunk
Gi1/0/48    10,50,99

Port        Vlans allowed and active in management domain
Gi1/0/48    10,50,99

Port        Vlans in spanning tree forwarding state and not pruned
Gi1/0/48    10,50,99

Lis les quatre blocs dans l'ordre : le port est-il en trunk, avec quel VLAN natif ? Quels VLAN sont autorisés ? Parmi eux, lesquels existent sur ce switch (« active in management domain ») ? Lesquels sont effectivement transmis, c'est-à-dire non bloqués par le Spanning Tree ? Un VLAN qui disparaît d'un bloc au suivant te dit où chercher.

show interfaces Gi1/0/48 switchport détaille un port : mode configuré (Administrative Mode) et mode obtenu (Operational Mode), négociation DTP, VLAN d'accès, VLAN voix, VLAN natif. C'est la commande qui tranche quand un port n'est pas dans le mode attendu.

Exercices

Exercice 1 sur 6 Compter les domaines de diffusion Réussi À revoir

Un switch de 24 ports porte trois VLAN : VLAN 10 sur les ports 1 à 10, VLAN 20 sur les ports 11 à 20, VLAN 30 sur les ports 21 et 22. Les ports 23 et 24 sont inutilisés et sont restés dans le VLAN 1.

  1. Combien de domaines de diffusion ce switch forme-t-il ?
  2. Un poste du port 3 envoie une requête ARP. Quels ports la reçoivent ?
  3. Le poste du port 3 peut-il joindre le poste du port 12 sans autre équipement ? Pourquoi ?
Voir la réponseMasquer la réponse de l'exercice 1
  1. Quatre : un par VLAN, VLAN 1 compris (ports 23 et 24).
  2. Les ports 1 à 10 sauf le port 3 : un broadcast est inondé sur tous les ports du VLAN 10, sauf celui d'arrivée (et sur les trunks qui transportent le VLAN 10, s'il y en avait).
  3. Non. Le port 12 est dans le VLAN 20, un autre domaine de diffusion et donc un autre réseau IP. Il faut un équipement qui route entre les deux VLAN (chapitre 3).

Tu avais trouvé ?

Exercice 2 sur 6 Configurer le switch du deuxième étage Réussi À revoir

SW-ETAGE2 (Catalyst 9200, 48 ports) dessert le deuxième étage de Sorbier. Écris sa configuration :

  • les VLAN 10 (POSTES), 50 (TELEPHONIE), 99 (ADMIN), 998 (PARKING) et 999 (NATIF), en mode VTP transparent ;
  • les ports 1 à 20 pour des postes avec un téléphone IP ;
  • les ports 21 et 22 pour deux imprimantes du VLAN 10 ;
  • le port 48 en trunk vers SW-COEUR, qui ne transporte que ce qui est nécessaire, avec le VLAN natif 999 ;
  • les autres ports désactivés ;
  • l'adresse de gestion 192.168.10.212/28 dans le VLAN 99.
Voir la réponseMasquer la réponse de l'exercice 2
text
vtp mode transparent
vlan 10
 name POSTES
vlan 50
 name TELEPHONIE
vlan 99
 name ADMIN
vlan 998
 name PARKING
vlan 999
 name NATIF
!
interface range GigabitEthernet1/0/1 - 20
 description Postes et telephones du 2e etage
 switchport mode access
 switchport access vlan 10
 switchport voice vlan 50
 switchport nonegotiate
 spanning-tree portfast
 spanning-tree bpduguard enable
!
interface range GigabitEthernet1/0/21 - 22
 description Imprimantes du 2e etage
 switchport mode access
 switchport access vlan 10
 switchport nonegotiate
 spanning-tree portfast
 spanning-tree bpduguard enable
!
interface range GigabitEthernet1/0/23 - 47
 description Ports inutilises
 switchport mode access
 switchport access vlan 998
 shutdown
!
interface GigabitEthernet1/0/48
 description Uplink vers SW-COEUR
 switchport mode trunk
 switchport trunk native vlan 999
 switchport trunk allowed vlan 10,50,99
 switchport nonegotiate
!
interface Vlan99
 ip address 192.168.10.212 255.255.255.240
 no shutdown
!
ip default-gateway 192.168.10.222

Points de vigilance : pas de VLAN voix sur les imprimantes (inutile) ; le trunk n'autorise que 10, 50 et 99 ; le VLAN 999 est créé même s'il ne porte aucun port, pour que le switch le connaisse ; la passerelle 192.168.10.222 est bien dans 192.168.10.208/28. Le port d'en face sur SW-COEUR doit recevoir la même configuration de trunk. On termine par copy running-config startup-config.

Tu avais trouvé ?

Exercice 3 sur 6 Négociation DTP Réussi À revoir

Pour chaque lien entre deux switchs Cisco, dis si un trunk se forme.

  1. dynamic auto des deux côtés.
  2. dynamic desirable d'un côté, dynamic auto de l'autre.
  3. trunk d'un côté, dynamic auto de l'autre.
  4. trunk avec switchport nonegotiate d'un côté, dynamic auto de l'autre.
  5. trunk des deux côtés, avec switchport nonegotiate des deux côtés.
Voir la réponseMasquer la réponse de l'exercice 3
  1. Non : aucun des deux ne demande le trunk, le lien reste en accès.
  2. Oui : le côté desirable demande, le côté auto accepte.
  3. Oui : le port en trunk envoie des messages DTP, le côté auto accepte.
  4. Non : avec nonegotiate, le port en trunk n'envoie plus de messages DTP ; le côté auto n'est jamais sollicité et reste en accès. Le lien est incohérent : un côté étiquette ses trames, l'autre non.
  5. Oui : les deux ports sont fixés en trunk, sans négociation. C'est la configuration recommandée entre deux switchs.

Tu avais trouvé ?

Exercice 4 sur 6 Le VLAN qui ne passe pas Réussi À revoir

Depuis la création du VLAN 30 (ENTREPOT) sur SW-ETAGE1, les terminaux de scan branchés sur ses ports 30 à 33 n'obtiennent pas d'adresse. Sur SW-ETAGE1 :

text
SW-ETAGE1# show interfaces trunk

Port        Mode             Encapsulation  Status        Native vlan
Gi1/0/48    on               802.1q         trunking      999

Port        Vlans allowed on trunk
Gi1/0/48    10,50,99

Port        Vlans allowed and active in management domain
Gi1/0/48    10,50,99
  1. Quelle est la cause ?
  2. Quelle commande corrige le problème sans couper les autres VLAN ?
  3. Que faut-il vérifier côté SW-COEUR ?
Voir la réponseMasquer la réponse de l'exercice 4
  1. Le VLAN 30 n'est pas autorisé sur le trunk : les trames des terminaux restent sur SW-ETAGE1 et n'atteignent jamais le relais DHCP du switch de cœur.
  2. Sur Gi1/0/48 : switchport trunk allowed vlan add 30. Sans add, la liste deviendrait « 30 » seul, et tout l'étage serait coupé.
  3. Que le VLAN 30 existe sur SW-COEUR et qu'il est autorisé sur le port d'en face (Gi1/0/1) : show vlan brief et show interfaces trunk sur SW-COEUR. La même commande switchport trunk allowed vlan add 30 est à taper de ce côté si besoin.

Tu avais trouvé ?

Exercice 5 sur 6 Décoder une étiquette 802.1Q Réussi À revoir

Une capture Wireshark prise sur le trunk montre, après les deux adresses MAC, les octets 81 00 A0 32.

  1. Que signifient les deux premiers octets ?
  2. Décompose les deux suivants (A0 32) en PCP, DEI et VID.
  3. À quel VLAN appartient la trame, et quel appareil l'a probablement émise ?
Voir la réponseMasquer la réponse de l'exercice 5
  1. 0x8100, le TPID : une étiquette 802.1Q suit.
  2. 0xA032 en binaire : 1010 0000 0011 0010. Les 3 premiers bits 101 donnent le PCP = 5 ; le bit suivant 0, le DEI = 0 ; les 12 derniers bits 0000 0011 0010 = 0x032, le VID = 50.
  3. VLAN 50, avec la priorité 5 : c'est le trafic d'un téléphone IP, qui étiquette ses trames dans le VLAN voix et demande la priorité.

Tu avais trouvé ?

Exercice 6 sur 6 Deux VLAN natifs différents Réussi À revoir

Un technicien a configuré switchport trunk native vlan 999 sur SW-COEUR, mais a oublié la commande sur le port d'en face de SW-ETAGE2, resté avec le VLAN natif par défaut.

  1. Quel est le VLAN natif de chaque côté ?
  2. Que devient une trame non étiquetée envoyée par SW-ETAGE2 sur le trunk ?
  3. Comment le problème se signale-t-il ?
Voir la réponseMasquer la réponse de l'exercice 6
  1. 999 côté SW-COEUR, 1 côté SW-ETAGE2.
  2. SW-ETAGE2 envoie sans étiquette les trames de son VLAN natif, le VLAN 1. SW-COEUR range toute trame non étiquetée dans son VLAN natif, le 999. Les VLAN 1 et 999 se retrouvent reliés : c'est une fuite entre deux VLAN, et un trou de sécurité si l'un d'eux contenait des machines.
  3. Par un message CDP dans les journaux des deux switchs, %CDP-4-NATIVE_VLAN_MISMATCH, et par le Spanning Tree, qui met les VLAN concernés en état bloqué sur ce port (« inconsistent »). Correction : switchport trunk native vlan 999 sur le port de SW-ETAGE2.

Tu avais trouvé ?

Chapitre terminé !

Fais les 6 exercices avant de passer à la suite : c'est en t'entraînant que tout se fixe.

chapitres
–
de série
–
du cours
–
Chapitre suivant : Routage inter-VLAN : router-on-a-stick et switch de niveau 3Revoir le sommaire du cours