Configurer des VLANs sur un routeur Linksys WRT54G
Sommaire
- Introduction
- 1ère étape : Mise à jour si nécessaire du firmware
- 2ème étape : Configuration du wrt54g (gui)
- 3ème étape : Les règles à ajouter
- Conclusion
- Notes
Introduction
Les VLANs sont soit-disant supportés grâce aux firmwares modifiés (sveasoft, dd-wrt, ...) mais pas tant que ça en fin de compte. D'une part certaines variables sont apparement, dans certains cas, mal initialisées et d'autre part parce qu'il faut dans la plupart des cas rajouter des rêgles au firewall pour obtenir quelque chose de correct.
Voici la manipulation détaillée de la mise en place d'un vlan supplémentaire sur le port 4 du WRT54G.
Pour cette manipulation, il vous faudra également un client telnet (hyperterminal sous Windows par exemple) en plus du routeur.
1ère étape : Mise à jour si nécessaire du firmware
Le firmware DD-WRT a été utilisé pour cet article. La manipulation fonctionnerait surement avec beaucoup d'autres firmwares, mais cela reste à essayer.
Pour le mettre à jour, connectez vous sur votre routeur via l'interface web, puis choisissez l'option Mise à jour du Firmware dans l'onglet Administration. Selectionnez le fichier binaire du nouveau firmware à installer via le boutton parcourrir, puis cliquez sur le boutton Mettre à jour.
ATTENTION ne pas interrompre la mise à jour !!
Une fois l'opération terminée, attendez 1 à 2 minutes puis rebootez votre routeur. Et voilà, votre nouveau firmware est en place, il n'y a plus qu'à....
2ème étape : Configuration du wrt54g (gui)
Activer le serveur telnet du routeur.
Activer le firewall.
Configurer les vlans comme ci-dessous.
On a donc le vlan0 (par défaut), le vlan1 qui représente la connection au net et le nouveau, le vlan2 qui concernera le port 4. Une fois tout ça fini, on sauvegarde.
3ème étape : Les règles à ajouter
Lancez le client telnet et connectez vous au routeur avec son adresse IP. Le login est "root" et le mot de passe est celui que vous lui avez attribué. Une fois connecté il vous faudra rentrer les lignes suivantes (sans mes commentaires ) :
// vlan0 : ports 1 2 et 3 plus le 5 (Internet) nvram set vlan0ports="1 2 3 5*" nvram set vlan2hwname=et0 // vlan 2 : ports 4 plus le 5 (Internet) nvram set vlan2ports="4 5" // On détermine l'adresse du sous réseau (rien ne vous // empêche de mettre autre chose évidement) nvram set rc_startup='ifconfig vlan2 192.168.1.1 netmask 255.255.255.0' // On définit les règles qui vont autoriser la communication // dans les 2 sens entre vlan1 (Internet) et vlan2 // Les 2 dernières règles ne sont normalement pas obligatoire // d'après moi mais ça ne coute rien de les rajouter nvram set rc_firewall='iptables -I FORWARD -i vlan1 -o vlan2 -j ACCEPT iptables -I FORWARD -i vlan2 -o vlan1 -j ACCEPT iptables -I FORWARD -i vlan2 -o br0 -j DROP iptables -I FORWARD -i br0 -o vlan2 -j DROP' // On "valide" et on reboot le routeur nvram commit reboot
Conclusion
C'est fini et ça fonctionne. Vous obtenez donc 2 vlans bien distinct :
vlan0 : 192.168.0.x
vlan2 : 192.168.1.x
Les 2 ont accès au net mais ils ne se voient pas réciproquement
Notes
Les règles tappées dans Hyperterminal sont à rentrer ligne par ligne (pas les 4 règles sur une même ligne).
L'adresse ip 192.168.1.1 que vous avez entrée grâce à telnet juste au dessus ne pourra pas être utilisée pour une station reliée au vlan2, il faudra partir de 192.168.1.2.
Si un DHCP est en place sur le vlan0, il ne sera pas disponible sur le vlan2. Les machines sur le vlan2 devront posséder des paramètres de connexion rentrés à la main (ip, sous-réseau, passerelle, dns).