Table of Contents

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.

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.

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

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

Surveillance MRTG

Voici le schéma de fonctionnement du routeur :

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 :

Liens