Avec les chapitres précédents, nous savons comment créer un VLAN (cf chapitre VLAN), comment propager cette création de VLAN sur tous les switchs du réseau (cf chapitre VTP) et comment attribuer un port dans un VLAN (cf fin du chapitre VLAN).
Maintenant, la question qui tue : quand une trame provenant d’un switch voisin arrive sur notre switch, comment sait-il à quel VLAN appartient la trame reçue ?
Et bien, si on ne fait rien, le switch considérera que la trame appartient au VLAN configuré sur le port (VLAN 1 par défaut). Il faut donc configurer les switchs pour qu’à chaque fois qu’une trame sort d’un port pour joindre un autre switch, on y rajoute l’identifiant du VLAN auquel la trame appartient. C’est la notion de Trunk !
Définition
Le trunk est le mécanisme qui permet d’insérer l’identifiant du VLAN sur une trame utilisateur. Toute trame se propageant sur plusieurs switchs conservera toujours l’information de son appartenance à son VLAN. Et le switch de destination saura avec quels ports la trame peut être commutée (ports appartenant au même VLAN).
Cette configuration de lien Trunk s’effectue sur les liens entre switchs, souvent appelés uplink.
Dans le schéma ci dessous, on configure le lien inter-switch en Trunk. Toutes les trames qui sortiront sur ce lien (switch de droite ou de gauche), se verront appliquer une étiquette supplémentaire qui contient l’identifiant du VLAN (en noir sur la trame).
Historiquement, Cisco avait créé son propre protocole de Trunk entre ses switchs, nommé ISL – Inter-Switch Link. Mais très rapidement, cette fonctionnalité plus qu’essentielle, demanda une inter-opérabilité avec d’autres constructeurs.
La norme Trunk 802.1Q fut sortie et Cisco l’implémenta aussi dans ses switchs. D’où la possibilité sur certains switchs Cisco de décider quel trunk on souhaite faire, ISL ou 802.1Q.
A retenir pour le CCNA, le tableau suivant :
Trunk ISL
Le trunk propriétaire Cisco ISL a la particularité d’encapsuler toute la trame de l’utilisateur dans une nouvelle trame, nommée trame ISL. Voici à quoi ressemble une trame ISL :
Remarque : comme cette trame a un format particulier, il est obligatoire que le switch d’en face puisse comprendre ce formatage. Il faut donc configurer le port du switch d’en face en trunk ISL.
Voici ci dessous la configuration à effectuer sur les ports des switchs interconnectés entre eux :
Switch(config)# interface fastethernet 0/0
Switch(config-if)# shutdown
Switch(config-if)# switchport trunk encapsulation isl
Switch(config-if)# switchport mode trunk
Switch(config-if)# no shutdown
Switch# show interfaces fastethernet 0/0 trunk Port Mode Encapsulation Status Native VLAN Fa0/0 trunk isl trunking 1 Port VLANs allowed on trunk Fa0/0 1,1002-1005 Port VLANs allowed and active in management domain Fa0/0 1,1002-1005 Port VLANs in spanning tree forwarding state and not pruned Fa0/0 1,1002-1005
Trunk 802.1Q
Le trunk normalisé 802.1Q n’encapsule pas toute la trame de l’utilisateur comme ISL mais casse la trame et y insère une étiquette ou tag, nommée TAG 802.1Q. Voici à quoi ressemble une trame utilisateur avec le rajout du TAG 802.1Q :
La première trame est celle de l’utilisateur qui arrive sur le switch. Dès que cette trame sort vers un port configuré en Trunk 802.1Q, le switch insère l’étiquette TAG (trame n°2 dans le schéma).
En inspectant le contenu de ce TAG, on remarque les champs suivants (trame n°3 dans le schéma):
- Ethertype : permet de préciser que c’est une trame 802.1Q, la valeur en hexa est 0x8100
- PRI : champs de priorité sur 3 bits qui permet de classifier le trafic utilisateur pour lui appliquer de la qualité de service (voix, vidéo…). Ce champ est aussi appelé 802.1P ou COS – Class Of Service.
- CFI – Canonical Format Identifier : permet la compatibilité d’un réseau Ethernet avec un réseau TokenRing. Champ à oublier pour le CCNA car il n’existe quasiment plus du réseau TokenRing aujourd’hui.
- VLAN ID – VLAN Identifier : codé sur 12bits : valeur numérique du VLAN auquel la trame utilisateur appartient. C’est le champ le plus important à connaitre !
Voici ci dessous la configuration à effectuer sur les ports des switchs interconnectés entre eux :
Switch(config)# interface fastethernet 0/1
Switch(config-if)# shutdown
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport mode trunk
Switch(config-if)# no shutdown
On peut remarquer qu’il n’y a qu’une seule variable qui change par rapport à une configuration Trunk ISL (la variable dot1q en rouge).
Switch# show interfaces fastethernet 0/0 trunk Port Mode Encapsulation Status Native VLAN Fa0/0 trunk dot1q trunking 1 Port VLANs allowed on trunk Fa0/0 1,1002-1005 Port VLANs allowed and active in management domain Fa0/0 1,1002-1005 Port VLANs in spanning tree forwarding state and not pruned Fa0/0 1,1002-1005
Important – VLAN natif
- un PC de gauche envoi du trafic ;
- le switch de gauche ajoute le TAG VLAN=2 dans la trame et envoi la trame au HUB ;
- le HUB diffuse la trame taguée sur tous ses ports ;
- le switch de droite reçoit la trame taguée, enlève le TAG et commute la trame vers les ports appartenant au même VLAN (2 ici);
- le PC du bas reçoit une trame taguée ! Comme le PC ne sait pas lire le TAG, il rejette la trame.
On voit ici que le PC du bas ne pourra jamais recevoir de trame provenant d’autres PC qui appartiennent au même VLAN que lui.
Donc dans la norme 802.1Q, il a été défini que pour un VLAN en particulier, appelé VLAN natif, les switchs laisseraient passer la trame initiale sans ajouter de TAG.
Regardons maintenant le même comportement avec un PC appartenant au VLAN n°1, configuré comme VLAN natif :
- un PC de gauche envoi du trafic ;
- le switch de gauche n’ajoute pas le TAG VLAN=1 dans la trame et envoi la trame au HUB ;
- le HUB diffuse la trame non taguée sur tous ses ports ;
- le switch de droite reçoit la trame non taguée, donc sait qu’elle appartient au VLAN natif (1 ici) et commute la trame vers les ports appartenant au même VLAN ;
- le PC du bas reçoit une trame non taguée donc la traite comme toute trame classique.
On voit ici que le PC du bas peut communiquer sans aucun souci avec d’autres PC qui appartiennent au même VLAN que lui.
A retenir pour le CCNA
Donc, parmis les choses à savoir pour l’examen CCNA, essayez de retenir les informations suivantes :
- Trunk propriétaire –> ISL de Cisco avec une encapsulation complète de la trame
- Trunk normalisé –> 802.1Q avec un ajout de TAG dans la trame
- par défaut, le VLAN natif est le VLAN 1 (attention à ne pas confondre VLAN natif et VLAN par défaut!)
- dans une configuration 802.1Q, le VLAN natif doit être identique des deux côtés
Remarque hors CCNA : la notion de Trunk chez d’autres constructeurs est différente : c’est la capacité d’agréger plusieurs liens physiques entre 2 switchs pour en faire qu’un seul virtuel. On active alors les protocoles PAGP ou LACP. Donc il faut faire attention quand vous parlez à des techniciens à propos du Trunk, certaines personnes ne comprendront pas car vous parlerez de 2 notions différentes.
Bonjour Cyril,
je Suis vraiment content. Car c’est le seul blog que j’ai trouvé dans mes multiples recherches qui a été capable de m’expliquer le pourquoi des encapsulations ISL et dot1Q. je dis toujours que c’est mieux de comprendre la base des choses afin d’être capable de l’expliquer à autrui. Si non, pourquoi chercher à apprendre ?
Donc merci encore et du courage dans tes efforts d’éclairer le monde des motivés. 😉
Bonjour,
Merci pour ton retour, c’est important de s’aider mutuellement !
Est ce que cet artcile est à jour ?
y’a plusieurs choses que je ne comprends pas
pourquoi faire un shutdown avant de mettre en place le trunk ?
Switch(config-if)# shutdown
Switch(config-if)# switchport trunk encapsulation dot1q
et j’ai essayé la commande switchport trunk encapsulation do1q et elle n’est pas reconnu…
Il faudrait pas plutôt faire ceci »»
interface fa0/0
switchport mode trunk
encapsulation dot1q
no shutdown
Non, professeur ?
Sur cisco packet v6.2
merci !
Bonjour,
Dans les opérations, il est recommandé de faire un shut de l’interface avant de la modifier pour éviter tout effet de bord avec le reste du réseau.
Pour le type d’encapsulation, il existait avant deux types d’encapsulation : l’ISL (Cisco) et le 802.1Q (standard). Il fallait donc préciser quel type d’encapsulation on souhaitait mettre en place.
Ce n’est plus cas dans les dernières version d’IOS.
Bonjour Cyril, un très grand Merci car en lisant cet article je viens de comprendre une notion essentielle (Vlan Natif) qui m’était jusque là FLOUE malgré ma pratique régulière depuis quelques temps de la configuration des vlan et du routage Intervlan .
MERCI pour cet éclaircissement et BRAVO pour ta contribution au partage du SAVOIR .
KADARGED
Bonjour Kadarged,
Mais avec plaisir, ce site est fait pour ça 🙂
Merci pour le commentaire !
Quand je fais un show vlan brief, je vois VLAN 1 default.
Bonjour,
Oui comme précisé dans ma précédente réponse, il existe un VLAN par défaut lorsqu’on « déballe » un switch Cisco. Ce VLAN par défaut est le VLAN 1 et tous les ports appartiennent à ce VLAN. Charge à toi de modifier cette appartenance en fonction de tes besoins.
Salut cyril ! encore merci pour ce site !
je pense te prendre prochainement un ebook ICDN 1, il est pas dispo en physique ?
Y’a quelque chose que je n’arrive tjr pas à comprendre, c’est cette notion de vlan native et par défaut
je cite
« par défaut, le VLAN natif est le VLAN 1 (attention à ne pas confondre VLAN natif et VLAN par défaut!) »
Je ne comprends tjr pas, c’est tres flou.…. tu peux m’eclairer stp ?
Bonjour,
A ce jour, les fiches ICND1 et ICND2 sont fourni au format PDF et sont protégés par un mot de passe individuel. Il n’y a pas possibilite d’avoir une version papier (mais tu peux imprimer le PDF si tu le souhaite).
Pour ta question sur le VLAN natif et le VLAN par défaut :
– le VLAN par défaut sur le switch est le VLAN 1. Donc tous les ports du switch sont dans le VLAN 1
– quand tu configure un lien Trunk entre deux switchs, tous les VLAN transitent dessus et sont taguées (permet de différencier les trames utilisateurs et leur VLAN d’appartenance). Il y a une exception : pour un VLAN en particulier, les trames utilisateurs ne sont pas taguées (dans un souci d’interopérabilité avec d’anciens équipements). Ce VLAN natif = VLAN 1 mais tu peux changer sa valeur et faire que le VLAN natif = VLAN 34 par exemple
– Pourquoi il existe un VLAN natif?… je te laisse le découvrir dans les fiches résumé 🙂
Bonne lecture !
Vous dites que la notion de Trunk chez d’autres constructeurs est différente car pour ces derniers elle consiste d’agréger plusieurs liens physiques entre 2 switchs pour en faire qu’un seul virtuel en Cisco. Mais On retrouve cette fonctionnalité chez Cisco en utilisant Trunk .…
Est ce que Cisco utilisé les deux définitions ?? Merci
Bonjour,
A quelle commande en particulier fais-tu reference ?
merci beaucoup franchement c’est énorme ce que vous faite encore un grand merci.
Merci Kamal !
Bonjour Cyril,
je salue ce travail remarquable qui nous permet, à travers vos articles, de sortir sur certains zones qui étaient floues jusqu’à la lecture ces publication.Merci.
J’ai une question sur la mise en place de vlan :
j’ai configuré des vlan sur un switch vtp serveur et ce dernier propage la conf sur les switchs clients.
j’ai également un routeur qui attribue automatiquement les adresses ip aux différends pc et permet de router le trafic entre les vlans.
J’arrive à pinguer les PCs et accéder aux applications se trouvant dans les différends vlans mais je n’arrive pas à voir les ordinateurs autres que ce qui appartiennent aux même vlans.
Bonjour,
Très bon article que je revois quand j’ai un trou. J’ai également une petite question :
Y a t‑il une commande pour vérifier qu’un vlan est bien propagé d’un switch à un autre à part de vérifier sa configuration ?
Bonjour,
Merci pour le commentaire 🙂
Pour ta question, il n’est pas possible (du moins je ne connais pas la commande si elle existe) de savoir si un VLAN a bien été propagé vers son switch voisin.
Ca fait 2 jours que je me casse la tete avec le site Cisco en anglais pour essayer de comprendre cette histoire de trunk sur le VLAN natif. Je tombe sur ton site et en 5 minutes, tout est super clair, merci beaucoup pour ta pédagogie !
🙂 et bien merci beaucoup pour le commentaire, ça me touche !
Bonne lecture à toi
Je veux te dire que le 3 septembre je vais subir mon examen Interconnecting Cisco Networking Devices Part 1 (ICND1) je veux que tu m’aide un peux surtout avec le Cisco packet tracer, je ne sais pas ce que je dois t’offrir mais je veux réussir aide moi stp ?
Je comprends ta situation de stress donc 🙂
Je te réponds en privé par email.
Bonjour Cyril,
Merci pour toutes ces explications très claires ! Effectivement, à vous lire, on pense qu’un ouvrage rédigé par vos soins serait le bienvenu dans toute cette littérature technique anglophone …
Pour ma part, je vais tenter la certification CCNA et m’entraîner sur du matériel CISCO acheté d’occasion. Je souhaitais vous demander si pour la partie VOIP je devais m’équiper de switches et routeurs spécifiques ?
Merci à vous !
Ludovic
Bonjour Ludovic,
Merci pour les encouragements. Ecrire un ouvrage prend du temps mais c’est une chose à laquelle je pense en effet. Je vous tiendrai tous au courant au travers de ce site bien évidemment.
Pour ta question, tu n’as pas besoin de matériel particulier pour le CCNA, car il n’y a pas de TP sur la VOIP.
Dans l’ensemble et dans le détails de ce blog/site tout est parfait … parfaitement parfait. Pédagogie 20/20, tes explications sont superbes (surtout les retour à l’historique comme dans le cas du vlan natif) et en francais please 🙂
… et je me permet de noter ta pédagogie parce que wow!! des que je lis un article d’ici je ne trouve plus le besoin d’aller voir ailleurs vu que tout deviens claire et évident.
As tu pensé à éditer un livre ? si non tu devrais vraiment le faire vu qu’avec le contenu de ton site il suffit juste de classer, quelques transitions d’un chapitre à un autre et le tour est joué !
Enfin bref ! ca fait un bout de temps que je suis tes articles et c’est bête de ne pas en profiter pour te remercier ! il y en a surement qui comme moi, viennent, prennent l’info et se tirent ! mais crois moi il y a beaucoup de satisfaction et de reconnaissance ! alors merci merci merci et un petit dernier pour mes futures visites incognito 🙂
Que dire… à part un grand merci pour ce commentaire !!
Comme pas mal de personnes qui m’écrivent directement par email, cela prouve que ce site est utile 🙂 Encore merci pour les encouragements !
Je suis tout à fait d’accord. un 11 sur 10.
Merci beaucoup Henry !
[…] « Trunk 802.1Q et ISL, ce qu’il faut savoir pour le CCNA Découvrir ses voisins avec CDP […]
[…] Contactez-moi ! Flux RSS ← Trunk 802.1Q et ISL, ce qu’il faut savoir pour le CCNA […]