Installer OpenWRT sur un routeur Linksys WRT54GL

30 Avr
2007

Mémo sur l’installation du firmware OpenWRT sur le routeur WRT54GL WRT54GL

L’installation d’un nouveau firmware est toujours un moment délicat dans la mesure où il consiste à remplacer le programme qui pilote le matériel par un autre (dans le cas présent OpenWRT). Si l’installation se plante en cours de route le matériel devient inutilisable (sauf aux experts en électronique mais ça dépasse mes compétences). Deux possibilités pour installer un nouveau firmware : via l’interface web ou via TFTP. L’envoi via TFTP nécessite que la mémoire du routeur soit configurée avec le paramètre boot_wait à on. Le paramètre boot_wait=on indique au routeur qu’il doit au démarrage attendre 10 secondes l’envoi d’un éventuel firmware avant de lancer celui déja installé. Par défaut le routeur est vendu avec ce paramètre à Off.Avec les firmwares Linksys inférieurs à la version 3.01.3 il était possible de modifier ce paramètre grâce à une faille de sécurité dans la page de test du ping. Dans les versions ultérieures elle a été corrigé et il n’est plus possible de procéder ainsi.

Pourquoi activer la possibilité l’envoi via TFTP ? Pour la bonne raison qu’il permet en cas de mauvais flashage (le routeur étant alors HS) d’en mettre un autre. Alors que dans le cas contraire le routeur étant hors état de fonctionnement il n’est plus possible d’utiliser l’interface web.

Mon routeur étant livré avec une version plus récente, j’ai choisi de faire une première mise à jour via l’interface du linksys et d’activer le wait_boot à partir de l’interface de OpenWRT. Il était également possible de faire une « downgrade » du firmware Linksys (cad l’installation d’une version plus ancienne de firmware Linksys) afin de pouvoir activer le boot_wait et seulement ensuite flasher le routeur avec OpenWRT. Je n’ai pas choisi cette option pour deux raisons :

  • le risque en cas d’erreur était le même (1er flashage sans possibilité de récupération le boot_wait n’étant pas activé)
  • je n’étais pas certains qu’un firmware ancien fonctionnerait correctement sur un WRT54GL qui est la dernier modèle de la lignée des WRT54G.

Il faut commencer par récupérer le firmware OpenWRT à installer. Le choix dépend du modèle de routeur et des fonctionnalités que l’on veut. La version la plus récente (0.9 à la date de cette note) se trouve dans le répertoire http://downloads.openwrt.org/whiterussian/newest/
Il existe trois versions correspondant à autant de sous-répertoires :

  • micro
  • default
  • pptp

Dans mon cas j’ai pris la version default qui comprend le noyau GNU/Linux de base et une interface web.

Le fichier Readme présent dans le répertoire indique que le fichier correspondant au WRT54GL est openwrt-wrt54g-squashfs.bin

Contrôler ensuite que le fichier est intact en vérifiant que sa signature (MD5Checksum) correspond à la valeur indiqué dans le fichier http://downloads.openwrt.org/whiterussian/newest/MD5SUMS

Un utilitaire simple sous Windows qui fonctionne par glisser-déposer : MST MD5

Une fois le fichier récupéré et contrôlé il suffit d’utiliser la procédure décrite dans la documentation de Linksys et d’attendre patiemment la fin de la mise à jour.

La dernière chose à faire avant de se lancer dans les méandres de la configuration sont d’activer le boot_wait dans la rubrique System > Settings. Sélectionner Enabled, cliquer sur Save Changes puis Apply Changes.

Sources :

(1) Commentaire au billet Installer OpenWRT sur un routeur Linksys WRT54GL

Avatar

Long Distance Wireless Router

20 juin 2009 à 02:13 (Paris)

Long Distance Wireless Router…

Would you like a free router? Would you be prepared to plug it in, register it and keep it running for at least six months?…

Haut