{{tag>réseau routeur dd-wrt}} ====== Linksys WRT54GL ====== {{:informatique:hardware:wrt54gl.jpg? |}} //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 WRT54G//x//. ====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 [[http://www.dd-wrt.com/wiki/index.php/Linksys_WRT54G/GL/GS/GX#WRT54GL|WRT54GL v1.1]]** (n° de série qui commence par CL7B ou CL7C). [[http://www.dd-wrt.com/wiki/index.php/Linksys_WRT54G/GL/GS/GX#Identifying_Your_Version|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 : * **télécharger la version "mini" ou "micro" du firmware** ici : http://www.dd-wrt.com/dd-wrtv3/dd-wrt/downloads.html 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 [[http://www.dd-wrt.com/wiki/index.php/Recover_from_a_Bad_Flash#Recovering_with_TFTP|cette page du wiki dd-wrt]] : il faut flasher par TFTP. La méthode la plus simple est de télécharger [[http://www.draytek.com.au/downloads.php|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 [[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html|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===== * [[https://www.dd-wrt.com/wiki/index.php/Installation|Installation guide]] pour DD-WRT et [[http://www.dd-wrt.com/wiki/index.php/Recover_from_a_Bad_Flash Recover from a bad flash]] * [[https://www.dd-wrt.com/wiki/index.php/DD-WRT_Docu_(FR)|wiki offciel fr]] * [[https://openwrt.org/|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 * [[https://github.com/x-wrt/x-wrt|x-wrt]] une interface graphique pour OpenWrt