Les VLANs sont des réseaux locaux virtuels (Virtual Local Area Network). Cette page présente rapidement le concept, et donne des exemples d'utilisation.
Une introduction générale est disponible sur Wikipédia : http://fr.wikipedia.org/wiki/Virtual_LAN
Un cours sur le sujet http://www.linux-france.org/prj/inetdoc/cours/routage.inter-vlan/ (excellent, comme tous les cours de Linux-France)
A quoi ça sert
Sans VLAN, lorsqu'on utilise un switch Ethernet, toute machine connectée à l'appareil voit toutes les autres.
Avec les VLANs, il est possible :
- de segmenter le switch : certaines machines voient certaines autres (comme si on avait plusieurs switches)
- de faire en sorte qu'une machine soit sur plusieurs segments à la fois (comme si elle était connectées à plusieurs switches)
- de regrouper des machines connectées sur des switches distants (séparées par d'autres switches) comme si elles étaient sur le même switch, sans que les switches intermédiaires ne diffusent le réseau.
Comment ça marche : les tags
L'idée est qu'un numéro de VLAN (VLAN ID, ou VID) est ajouté à chaque trame Ethernet qui traverse le switch. Ce numéro constitue (entre autre) le tag ajouté à la trame. C'est l'encapsulation 802.1Q : http://fr.wikipedia.org/wiki/IEEE_802.1Q
A partir de cette idée simple, on peut :
segmenter les ports : une trame Ethernet classique (non tagguée) arrive sur un port donné. On associe un VLAN (un VID) à ce port, c'est à dire que le switch va ajouter le tag à la trame. Cette trame ne sera ensuite émise que sur les ports qui acceptent le même VID. Dans l'autre sens, si un paquet arrive dans le switch à destination du VLAN associé à ce port, il sera émis par le switch après retrait du tag. Ainsi, l'équipement connecté au port émettra et recevra des trames Ethernet normales, sans tag. Il ne saura pas qu'il est sur un VLAN.
- Dans ce cas, on dit que le port est ajouté au VLAN "VID" en mode untagged (non-tagué : il accepte et emet des trames sans tag).
Note : par définition, un port untagged ne peut être placé que dans un seul VLAN.
- mettre un port sur plusieurs VLAN : dans ce cas, le port est configuré pour accepter des trames déjà tagguées. L'équipement connecté au port doit donc savoir émettre des trames Ethernet 802.1q. Cela lui permet d'envoyer et recevoir des trames Ethernet vers ou depuis plusieurs VLAN.
Dans ce cas, on dit que le port est ajouté au VLAN "VID" en mode tagged. Un port peut être tagged sur autant de VLAN que nécessaire : il gérera les trames Ethernet pour tous les VLAN concernés.
Un jour ici, nous ajouterons un schéma pour expliquer tout cela plus clairement
Utilisation
Configuration du switch
Cela dépend de chaque équipement. Dans la gamme D-Link que nous utilisons souvent à l'AUF, il faut se connecter à l'interface Web du switch et aller dans le menu VLAN 802.1q. A partir de là, on construit les VLAN. Pour chaque VLAN on indique les ports qui sont untagged, ceux qui sont tagged et ceux qui ne sont pas du tout membre du VLAN.
Utilisation sur une machine Linux (sur un port tagged)
Note / rappel : si la machine est connectée sur un port untagged, il n'y a rien à faire. La machine émettra et recevra des trames Ethernet classiques, qui seront prises en charge au niveau du switch.
Il faut d'abord faire en sorte que le module 8021q soit chargé lors du démarrage de la machine :
# (à ajouter à la fin de /etc/modules) # prise en charge des VLAN 802.1q 8021q
Ensuite, installer le package vlan
aptitude install vlan
A partir de là, on peut utiliser la notation ethX.nnn pour ajouter l'interface ethX dans le VLAN de VID nnn. Exemple concret :
# (extrait de /etc/network/interfaces) # la carte eth0 est connectée à un port taggé sur les VLAN 10 et 20 iface eth0.10 inet static address 207.50.225.34 netmask 255.255.255.128 gateway 207.50.225.1 iface eth0.20 inet static address 192.168.6.1 netmask 255.255.255.0
C'est exactement comme si on disposait de deux cartes réseaux. On dispose en effet de deux interfaces eth0.10 et eth0.20 qui vont vers deux réseaux Ethernet distincts. La machine est donc connectée à deux réseaux locaux.
Autres équipements
Les téléphones IP que nous utilisons à l'AUF savent faire du VLAN, en théorie. Si quelqu'un a utilisé cette fonctionnalité, merci de préciser ici si ça marche, et comment.
Exemples
Serveur NFS sur plusieurs réseaux, avec une seule carte réseau GbE
Un pare-feu avec une seule carte réseau
Un VLAN dédié aux visio-conférences
Annexe
Evitez d'utiliser le VLAN 1 : c'est le VLAN par défaut qui est généralement réservé à l'administration du switch.