User Tools

Site Tools


informatique:hardware:linksys_wrt54gl

réseau routeur dd-wrt

Linksys WRT54GL

Le WRT54Gx est un routeur/borne Wi-Fi bon marché (moins de 50 euros ; et, il est vrai, assez ancien) de marque Linksys (racheté depuis par Cisco) qui peut être flashé avec un Linux embarqué afin d'accroître ses fonctionnalités. Un matériel indispensable pour tout barbu qui se respecte.

La version “L” (pour Linux) dispose d'un CPU de 200MHz (overclockable après flashage), 16Mo de mémoire vive et 4Mo de mémoire flash.

DD-WRT

C'est l'un des firmwares les plus connus que l'on peut mettre sur un WRT54Gx.

Procédure de flashage

Je décris ici la procédure que j'ai suivie pour flasher mon routeur avec dd-wrt.v24_vpn_generic. Celle-ci varie selon la version du routeur ; dans mon cas il s'agit d'un WRT54GL v1.1 (n° de série qui commence par CL7B ou CL7C). Pour connaitre la version de son WRT54G, c'est ici.

boot_wait

J'ai lu qu'il fallait activer le boot_wait, une option qui correspond au temps d'attente au boot avant le chargement du firmware, et qui permet d'injecter un autre firmware en TFTP, dans le cas ou le routeur soit brické (ne démarre plus). Cela ne serait pas possible avec le firmware Linksys, mais au cas ou voici la procédure (non testée) : Pour cela il faut aller dans l'outil ping de l'interface graphique et saisir une à une ces 4 lignes :

;cp${IFS}*/*/nvram${IFS}/tmp/n
;*/n${IFS}set${IFS}boot_wait=on
;*/n${IFS}commit
;*/n${IFS}show>tmp/ping.log

Pour installer DD-WRT en version VPN, il faut dans l'ordre :

En effet lors du premier flashage, le firmware linksys ne supporte pas les images de plus de 3 Mo. Il faut donc passer par une version intermédiaire du firmware, plus petite, qui ne dispose pas de toutes les fonctionnalités de DD-WRT.

  • se connecter en LAN (câble) avec IE (car Firefox pose problème) à l'interface web du routeur (par défaut http://192.168.1.1 , pas de login et pass=admin).
  • faire un retour aux paramètres usine. Le routeur reprendra les paramètres par défaut cités plus haut.
  • redémarrer le routeur
  • faire la mise à niveau avec la version “mini” ou “micro” ; ne pas éteindre le routeur, déconnecter la prise réseau et attendre quelques minutes.
  • le routeur reboot et normalement ça marche.

Dans mon cas, après le flashage je suis resté bloqué à l'identification de l'interface web (le routeur ne prenait pas mon mot de passe). Je l'ai débranché/rebranché, ça n'a rien fait. En revanche en restaurant les paramètres usine physiquement (maintenir enfoncé le bouton reset à l'arrière du boitier pendant 20 secondes), ça a rétabli l'accès à l'interface web.

  • Il faut ensuite refaire un retour aux paramètres usine avant de le re-reflasher avec la version VPN de DD-WRT.

Si le flashage se passe mal

Ça m'est arrivé une fois : j'ai omis de flasher mon routeur neuf avec une version “mini”. J'ai eu un message qui m'annonçait une erreur lors du flashage, je croyais qu'il ne l'avait donc pas pris en compte et j'ai redémarré le routeur. Erreur. La diode power clignote, je ping le routeur en 192.168.1.1 mais impossible d'accéder à l'interface web.

Pour résoudre ce problème, je me suis inspiré de cette page du wiki dd-wrt : il faut flasher par TFTP. La méthode la plus simple est de télécharger DrayTek Router Tools -un outil vraiment génial de simplicité- et de flasher son routeur avec ladite version “mini”.

SSH

On peut activer le SSH afin de se connecter avec le login root et le mot de passe d'admin. Pour éviter d'avoir à ressaisir à chaque fois son mot de passe, on peut s'authentifier par clé publique en la copiant dans Administration / Services / Secure Shell / Authorized Keys.

Sous Windows, on peut générer un couple clé publique / clé privée avec puttygen. Il faut ensuite utiliser le contenu du champ Public key for pasting into OpenSSH authorized_keys files. Ainsi lorsqu'on lance putty on obtient le shell directement :

Using username "root".
DD-WRT v23 SP2 vpn (c) 2006 NewMedia-NET GmbH
Release: 09/15/06 (SVN revision: 3932)
Authenticating with public key "rsa-key-20070708"

Commandes utiles

  • nvram show : liste les paramètres de configuration

SNMP

Pour récupérer le nombre de connexions actives (comme fourni dans l'interface web), il suffit d'ajouter ce script au démarrage :

#!/bin/sh
cd /tmp/var/snmp
grep count_ip_conntrack < snmpd.conf || echo "exec count_ip_conntrack \
  /bin/sed -n $= /proc/net/ip_conntrack" >> /var/snmp/snmpd.conf
killall -TERM snmpd
/usr/sbin/snmpd -c /var/snmp/snmpd.conf 

source : http://www.dd-wrt.com/phpBB2/viewtopic.php?t=1054

Problèmes rencontrés

  • Après flashage, j'ai noté des problèmes lors de l'enregistrement des préférences de DD-WRT avec Firefox 2.0.0.4 ; pas avec IE 7

Surveillance MRTG

Voici le schéma de fonctionnement du routeur :

  • vlan0 : les 4 ports LAN
  • vlan1 : le port WAN (Internet)
  • eth0 : vlan0 + vlan1
  • eth1 : wifi
  • br0 : fond de panier = par où passent tous les flux
  • lo : loopback

Seules les 4 premières interface citées ci-dessus sont intéressantes à monitorer.

                 (___br0___) 
                  / | \ \_ \____ 
                 /  |  \  \__   \_____ 
                /   |   \    \        \ 
     | [0]    [1]  [2]  [3]  [4] | | [wlan] | 
     |vlan1    ---- vlan0 -----  | |        | 
     | WAN           LAN         | |  WLAN  | 
     |                           | |        | 
     |Internet 1    2    3    4  | |  WLAN  | <-- label 
     +---------------------------+ +--------+ 
           ethernet switch          wireless 
          eth0 (cpu port 5)           eth1

MAJ DD-WRT 2.4 SP1

Cela fait une dizaine de jour que je suis passé de DD-WRT 2.3 SP2 à la version 2.4 SP1. L'interface de cette dernière comporte plus de fonctions que l'on devait, avec la 2.3, passer en ligne de commande.

Les problèmes rencontrés :

  • reconfiguration de MRTG nécessaire car les interfaces réseau ont changé de numérotation (.?!)
  • je n'ai pas retrouvé l'OID du “Active IP connections” qui s'affiche sur la page “Router status” de l'interface web
  • le multiposte de free ne fonctionne plus sans configuration, car la version 2.4 ne semble pas RTSP-compliant. Du coup il faut ajouter un trigger : lors d'un établissement de connexion tcp-udp/554, ouverture des ports > 1024.

Liens

  • OpenWrt : un des meilleurs firmwares (sur lequel s'appuient la plupart des autres) basé sur un Linux minimaliste extensible avec un système de paquets
  • x-wrt une interface graphique pour OpenWrt
informatique/hardware/linksys_wrt54gl.txt · Last modified: 2023/09/28 09:49 by pteu