Installation d'OpenWrt sur un routeur Netgear DG834G v2

Introduction

J'avais un Netgear DG834G v2 inutilisé (je suis sûr que vous êtes dans le même cas), alors voil comment lui donner une seconde vie avec OpenWrt ;).

Cet article est principalement une traduction de l'article sur ls wiki openwrt

Prerequis

Je considère que vous êtes sous linux (sinon whyyyy?). Il vous faudra donc hexedit, telnet, ssh, md5sum, wget et mini_httpd.

Installation

Branchez-vous par câble au routeur, mettez le à jour, puis activez le mode debug (chaque redémarrage nécessitera de repasser en mode debug) http://192.168.0.1/setup.cgi?todo=debug

Puis connectez vous via telnet

telnet 192.168.0.1

On va devoir télécharger, puis modifier les fichiers de boot avant de les réuploader (sic).

Sur le routeur donnez une adresse au bootloader ADAM2:

echo "my_ipaddress 192.168.0.1" > /proc/sys/dev/adam2/environment

Puis copiez les blocs mtd dans /tmp et démarrez mini_httpd:

for i in $(ls /dev/mtdblock/); do
  dd if=/dev/mtdblock/$i of=/tmp/mtd$i.bin
done
cd /tmp
mini_httpd -p 1080

Depuis votre pc téléchargez chacun des mtd:

for i in 1 2 3 4; do
  wget http://192.168.0.1:1080/mtd$i.bin
done

Vous devriez avoir le md5 suivant pour mtd2.bin: 0530bfdf00ec155f4182afd70da028c1

Avec hexedit on va modifier ce mtd pour désactiver le check de l'image au boot pas ADAM2: hexedit mtd2.bin

Cherchez 44 09 00 0C à l'offset 0x3944, remplacez les par des 0.

Le nouveau md5 devrait être d8a2f4623bf6f64b7427812f0e849aa7.

Sur votre machine lancez mini_httpd -p 8080, puis retournez sur le routeur, dans /tmp. Et téléchargez le mtd2.bin: wget https://IP_PC:8080/mtd2.bin et écrasez sur le routeur:

dd if=mtd2.bin of=/dev/mtdblock/2

Puis redémarrez le routeur: reboot.

Ensuite on va ajouter un mtd5, puis y mettre openwrt :).

Pour ce faire lancez:

cd /proc/sys/dev/adam2 
echo "mtd5 0x90020000,0x903e0000" > environment

Rebootez, puis reconnectez vous avec telnet, puis vérifiez l'existence de /dev/mtdblock/5 (ls /dev/mtdblock/5 devrait vous retourner le nom du fichier).

Récupérez openwrt blackfire.

cd /tmp
wget URL
dd if=openwrt-ar7-squashfs.bin of=/dev/mtdblock/5

Puis rebootez, enfin attendez (ça peut être un peu long).

Le routeur devrait être accessible via ssh, connectez-vous pour changer le mot de passe root, à partir de là le mot de passe est utilisable dans l'interface web.

Enjoy.

blogroll

social