Cet article est écrit pour une version de Linux nommée CENTOS, mais elle fonctionne aussi avec les distribution REDHAT LIKE comme Redhat Linux, Fedora, et Redhat Entreprise.
Après avoir installé votre distribution votre réseau fonctionne en mode classique.
Mon PC sous Linux est connecté sur l’interface 1 du switch CISCO CATALYST 2924.
On va créer 1 vlan qui va cloisonner les ports pour un usage internet. Ces ports ne seront pas utilisés pour notre exemple mais ils m’ont servi à connecter la seconde carte réseau de ma machine qui est un firewall de réseau local.
On crée ensuite deux réseaux qui vont contenir des machines sur deux range IP différents et un Vlan nommé ADMIN qui sera le vlan où je vais mettre des stations d’administrateurs réseau.
1ère étape – Création des vlans sur le switch
Connectez vous au switch par telnet ou port console si vous n’avez pas encore paramétré le switch.
Entrez votre mot de passe et vous arrivez sur un prompt « le_nom_de_mon_switch> »
Passez en mode enable avec la commande « en », le prompt devient « le_nom_de_mon_switch# »
Passez à la configuration des vlans proprement dite avec la commande « vlan database »
Le prompt devient (vlan)# pour vous signaler le changement d’emplacement.
vlan 10 name INTERNET
vlan 12 name VLAN_12
vlan 14 name VLAN_DMZ
vlan 20 name VLAN_ADMIN
exit
Vous revenez en mode enable.
Passez en mode configuration avec la commande « conf t »
L’affectation des parts dans un vlan se fait dans la configuration du port elle même
Le port sur lequel est connecté le serveur linux est un port trunk.
Voici les commandes à passer au switch :
interface FastEthernet0/1
speed 100
duplex full
switchport trunk encapsulation dot1q
switchport mode trunk
spanning-tree portfast
Ce port sera celui où est branché le Linux.
interface FastEthernet0/2
speed 100
duplex full
switchport access vlan 10
spanning-tree portfast
A faire sur tous les ports du vlan INTERNET.
interface FastEthernet0/11
speed 100
duplex full
switchport access vlan 12
spanning-tree portfast
A faire sur tous les ports du VLAN_12.
interface FastEthernet0/20
speed 100
duplex full
switchport access vlan 14
spanning-tree portfast
A faire sur tous les ports du VLAN_DMZ.
Et enfin,
interface FastEthernet0/23
speed 100
duplex full
switchport access vlan 20
spanning-tree portfast
A faire sur tous les ports du VLAN_ADMIN.
Une fois paramétré, tapez « exit » pour sortir du mode conf et tapez « write memory » pour sauvegarder la configuration du switch.
Tapez « logout » pour vous déconnecter.
Explications :
Voici ce que veut dire chaque ligne que j’ai utilisé.
– vlan XX, crée le vlan identifié par un nombre quelconque hormis le 1 qui est le numéro des ports par défaut et peut poser problèmes si vous avez des switches de plusieurs constructeurs interconnectés.
– name « CE_QUE_JE_VEUX », on donne un nom « sympa » au vlan pour mieux l’identifier, attention, le nombre de caractères est limité.
– « speed 100 » donne la vitesse du port et « duplex full » son duplex
– « switchport mode trunk » indique que ce port transmettra les informations de vlan à la machine au dessus et « switchport trunk encapsulation dot1q » indique d’utiliser le protocole 802.1q car CISCO utilise un protocole ISL propriétaire par défaut.
– « spanning-tree portfast » indique qu’on a un pc sur le port, il ne faut pas spécifier cette ligne si on a un autre switch sur le port.
– « switchport access vlan x » , indique que le port est affecté au vlan en question. Ces ports ne sont pas taggés comme l’est un trunk ce qui veut dire que l’information de vlan ne sera pas transmise dans la trame IP, ils sont destinés à recevoir les stations de travail, des serveurs ou d’autres switches.
2ème étape – Paramétrer le serveur Linux
– La méthode « classique » pour utiliser une interface réseau avec du 802.1Q est la suivante :
modprobe 8021q # Charge le module du noyau
ifconfig eth0 0.0.0.0 up # monte l’interface réseau sans adresse ip
vconfig add eth0 12 # crée le vlan numéro 12
ifconfig eth0.12 192.168.1.1 up # monte une interface vlan nommée eth0.12
– La méthode REDHAT :
Editer le fichier /etc/sysconfig/network et ajouter le paramètre suivant :
VLAN=yes
Lancer la commande « netconfig -d eth0.12 » pour créer la configuration de l’interface dédiée au vlan 12. Faites de même pour chaque interface que vous voulez utiliser.
Ici, pour nous eth0.12, eth0.14 et eth0.20.
Entrez les données du réseau à votre convenance, ici affectez une ip dans le range 192.168.2.0/24 à l’interface eth0.20 pour être conforme à notre réseau d’administration.
Vérifiez que vous trouvez bien dans le dossier /etc/sysconfig/network-scripts des fichiers nommés ifcfg-eth0.XX où XX sont les numéros de vlans que vous avez créé. Il y a un fichier par interface sous REDHAT.
Une fois prêts, relancez le réseau avec la commande « service network restart » ou « /etc/init.d/network restart ».
Une fois le réseau démarré, faites « ifconfig » pour voir apparaître vos interfaces.
Réliez si cela n’est pas encore fait le port 1 de votre switch à votre carte eth0 du serveur linux et testez de joindre les stations de travail connectées chacune à son réseau d’affectation.
Testez aussi de joindre votre switch par telnet sur l’adresse 192.168.2.1 qu’on lui a affecté plus haut à partir d’une machine du réseau d’administration.
Activez le routage sur votre Linux si ce PC doit devenir routeur, voire firewall comme le sera ma machine de test.
Pour ce faire, éditez le fichier /etc/sysctl.conf et modifiez la ligne suivante comme suit :
net.ipv4.ip_forward = 1
Relancez le réseau et votre linux route le trafic d’une carte à l’autre.
Planchez vous ensuite sur la doc iptables si vous voulez en faire un firewall.
Problèmes éventuels
Il arrive que le routage ne fonctionne pas bien et que certains trafics réseau se perdent alors qu’un simple ping fonctionne correctement.
Cela est certainement dû au MTU de votre carte réseau qui est la taille maximale que peut transmettre la carte réseau.
Essayez de modifiez le MTU en ajoutant la variable « MTU=ce_que_je_veux » dans le fichier de configuration ifcfg-ethXX vu plus haut. Essayez différentes valeurs, jusqu’à obtenir le fonctionnement désiré.