Flashare le fonere con dd-wrt

by Asbesto, 20/7/09

Ho deciso di scrivere questo howto perche' in rete le informazioni sono abbastanza confuse. Seguendo passo passo queste istruzioni non c'e' possibilita' di sbagliare. Manca solo la parte relativa all'interfaccia hardware, che inseriro' presto.

UNICA PARTE: UPPIAMO IL FIRMWARE VIA SERIALE DIRETTAMENTE CON MINICOM

Ovunque leggete che serve installare e configurare un server tftpd, impostare indirizzi ip, netmask, usare un cavo cross ethernet... STRONZATE!!!

Redboot gestisce ymodem via seriale!

Quindi basta:

ed il gioco e' fatto!!!!!!!!

PORCO DI DIO

VECCHIO HOWTO

Installare tftpd, tftp: nelle dipendenze software c'e' pure openbsd-inetd.

apt-get install tftpd tftp

(Il client vi servira' per fare i test.)

Configurare /etc/inetd.conf cosi':

tftp            dgram   udp     wait    nobody  /usr/sbin/tcpd  /usr/sbin/in.tftpd /tftpboot

Creare la dir /tftpboot, modo 777, user nobody; metti li' dentro linux.bin, modo 777, owner nobody.

Risultato finale:

   root@gemini:~# ls -la /tftpboot/
   total 6604
   drwxrwxrwx  2 nobody root    4096 2009-07-19 18:57 .
   drwxr-xr-x 22 root   root    4096 2009-07-19 18:47 ..
   -rwxrwxrwx  1 nobody root 6754304 2009-07-19 18:57 linux.bin
   root@gemini:~# 

Ovviamente il server tftpd va lanciato, quindi:

/etc/init.d/openbsd-inetd start

Bella minchiata, eh? :) Usare ora tftp su localhost per provare se tutto funziona. Dovrebbe essere possibile poter prelevare linux.bin.

Seconda parte: collegamenti hardware

Collegare la fonera all'adattatore. questo dipende dall'adattatore! PARTE DA INSERIRE.

Minicom va settato a 9600,8N1, no hardware flow control altrimenti ctrl-c non funziona.

Terza parte: Riprogrammiamo la fonera

Enter the RedBoot console by pressing CTRL+C (entro 2 secondi)...

Configure the RedBoot bootloader IP and TFTP server settings using

ip_address -l [local ip address] -h [remote server address]

Cancelliamo la memoria della fonera, inizializzandola:

RedBoot> fis init

About to initialize [format] FLASH image system - continue (y/n)? y
*** Initialize FLASH Image System
... Erase from 0xa83e0000-0xa83f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa83e0000: .

Ora, trasferiamo l'immagine di linux.bin su di essa:

RedBoot> load -r -v -b 0x80041000 linux.bin

Using default protocol (TFTP)
Raw file loaded 0x80041000-0x802e3fff, assumed entry at 0x80041000

E per finire, creiamo tutta la struttura sulla fonera (ci mettera' una decina di minuti):

RedBoot> fis create linux

... Erase from 0xa8030000-0xa82f0000: ............................................
... Program from 0x80041000-0x80301000 at 0xa8030000: ............................................
... Erase from 0xa83e0000-0xa83f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa83e0000: .

Ora diamo un minimo di configurazione:

RedBoot> fconfig

Rispondiamo alle domande, configuriamo gli indirizzi desiderati, poi inseriamo questo script di 2 righe:

fis load -l linux
exec

Salviamo la config uscendo, cosi':

reset

FINE!

http://www.dd-wrt.com/dd-wrtv3/dd-wrt/hardware.html