Utiliser les vlans avec Ubuntu
Pour pouvoir utiliser les vlans, il faut d’abord installer le paquet vlan et activer le module correspondant:
$ sudo aptitude install vlan $ sudo modprobe 8021q
Si le lancement du module doit se faire au démarrage du PC, il faut ajouter ce module au fichier /etc/modules.
Quelques rappels sur les vlans d’abord. Un trunk est une connexion réseau sur laquelle transitent plusieurs vlans. Il est évident et important de remarquer que tous le vlans dans un trunk partagent la même bande passante.
A chaque trame IP est ajouté un identifiant sur 4 octets. En mode unicast, lorsqu’un switch reçoit un paquet IP, il regarde vers quel port il doit l’envoyer en utilisant à la fois l’adresse MAC de destination et l’identifiant du vlan. En mode broadcast, le paquet IP est envoyé à tous les ports correspondant à ce numéro de vlan.
Dans un PC, pour pouvoir gérer plusieurs vlans, on créera une ou plusieurs interfaces virtuelles. Lorsqu’un PC reçoit un paquet IP avec un numéro de vlan, il détermine au moyen de ce numéro de vlan à quelle interface virtuelle ce paquet appartient. Une interface virtuelle se comporte comme une interface physique normale.
La première chose à faire donc est de raccorder le PC à un trunk. A ce moment, une interface réseau peut être attachée à un ou plusieurs vlans en créant des interfaces virtuelles. On procède comme ceci pour créer une interface virtuelle attachée à une interface physique (exemple donné pour le vlan 2 ou le vlan 21):
$ sudo vconfig add eth0 2 ou $ sudo vconfig add eth0 21
ce qui donne comme résultat lorsqu’on demande à ifconfig de nous afficher la configuration des interfaces:
$ sudo vconfig add eth0 2 Added VLAN with VID == 2 to IF -:eth0:- $ ifconfig -a ... eth0.2 Link encap:Ethernet HWaddr 00:0b:5d:9f:03:df BROADCAST MULTICAST MTU:1500 Metric:1 Packets reçus:0 erreurs:0 :0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 lg file transmission:0 Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B) ...
Pour supprimer la nouvelle interface virtuelle, il faudrait taper:
$ sudo vconfig rem eth0.2 Removed VLAN -:eth0.2:-
Pratiquement, pour raccorder votre PC à un vlan (par exemple le vlan 22) de façon à ce que l’interface soit configurée dès le démarrage, il faut modifier le fichier /etc/network/interfaces comme ci-dessous puis activer l’interface:
$ sudo nano /etc/network/interfaces auto lo iface lo inet loopback auto eth0 vlan22 iface eth0 inet dhcp # VLAN22 iface vlan22 inet static address 10.224.66.200 netmask 255.255.255.0 vlan_raw_device eth0 $ sudo ifup vlan22
Note: Il est bien sûr possible de créer plusieurs vlans sur la même interface ou sur des interfaces différentes.
$ ifconfig -a ... vlan22 Link encap:Ethernet HWaddr 00:0b:5d:9f:03:df inet adr:10.224.66.200 Bcast:10.224.66.255 Masque:255.255.255.0 adr inet6: fe80::20b:5dff:fe9f:3df/64 Scope:Lien UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Packets reçus:9 erreurs:0 :0 overruns:0 frame:0 TX packets:52 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 lg file transmission:0 Octets reçus:1319 (1.3 KB) Octets transmis:6891 (6.8 KB) ...
Remarquez que nous aurions pu donner n’importe quel nom à notre interface virtuelle. L’appeler vlan n’est en rien une obligation.
Tout ceci n’est pas fort différent de la configuration habituelle des interfaces physiques. C’est aussi un des gros avantages des vlans.
Posted: mars 13th, 2009 under Réseau, Ubuntu.
Comments: none
Tweet