miércoles, 22 de abril de 2015

DD-WRT "Upgrade failed" Telnet Upgrade Firmware

Desde hace más de un año que instalé dd-wrt en otro router (tplink_tl-mr3420v1)y no había conseguido actualizarlo, esto porque al momento de intentar actualizar desde el navegador lanzaba un error, algo así como "Upgrade failed" y la actualización no se realizaba.

Después de dar vueltas y no conseguir mucha información al respecto decidí que lo mejor que podía hacer era intentar actualizarlo vía Telnet, realicé los cambios que creí pertinentes y me lancé, me alegra decir que todo fué más rápido y sencillo de lo que pensaba y en un plis plas ya tenía el router actualizado.

Los pasos que realicé: *** Todo esto a través de cable, No WI-FI ***

1.- Reseteo del router 30/30/30.
2.- Entrar al router y activar DHCP, desactivar el WI-FI, habilitar acceso remoto a telnet.
3.- Guardar y reiniciar el router.
4.- Abrir un terminal y ejecutar lo siguiente:

telnet 192.168.1.1 23
nvram erase
cd /tmp
wget -c http://download/tl-mr3420-webflash.bin
write tl-mr3420-webflash.bin linux
reboot


5.- Esperar algunos minutos y hacer reset 30/30/30 de nuevo.


Y si todo salió bien, nada más entrar al router y configurar todo de nuevo, sin embargo les dejo los pasos desde el terminal para que lo puedan entender mejor.

ljmarin@lm ~ $ telnet 192.168.1.1 23 Trying 192.168.1.1... Connected to 192.168.1.1. Escape character is '^]'. DD-WRT v24-sp2 std (c) 2015 NewMedia-NET GmbH Release: 04/09/15 (SVN revision: 26653) DD-WRT login: root Password: ========================================================== ____ ___ __ ______ _____ ____ _ _ | _ \| _ \ \ \ / / _ \_ _| __ _|___ \| || | || | || ||____\ \ /\ / /| |_) || | \ \ / / __) | || |_ ||_| ||_||_____\ V V / | _ < | | \ V / / __/|__ _| |___/|___/ \_/\_/ |_| \_\|_| \_/ |_____| |_| DD-WRT v24-sp2 http://www.dd-wrt.com ========================================================== BusyBox v1.23.2 (2015-04-09 03:22:22 CEST) built-in shell (ash) root@DD-WRT:~# nvram erase root@DD-WRT:~# cd /tmp root@DD-WRT:/tmp# wget -c http://download1.dd-wrt.com/dd-wrtv2/downloads/betas/2015/04-09-2015-r26653/tplink_tl-wr741ndv4/tl-wr741ndv4-webflash.bin Connecting to download1.dd-wrt.com (82.165.149.94:80) tl-wr741ndv4-webflas 100% |******************************************************************************| 3840k 0:00:00 ETA root@DD-WRT:/tmp# write tl-wr741ndv4-webflash.bin linux function stop_snmp not found function stop_pppoeserver not found function stop_openvpn not found function stop_openvpnserver not found function stop_freeradius not found freeram=[10895360] bufferram=[1916928] The free memory is enough, writing image once. write=[3932160] linux: CRC OK Writing image to flash, waiting a moment... write block [0] at [0x00000000] write block [65536] at [0x00010000] write block [131072] at [0x00020000] write block [196608] at [0x00030000] write block [262144] at [0x00040000] write block [327680] at [0x00050000] write block [393216] at [0x00060000] write block [458752] at [0x00070000] write block [524288] at [0x00080000] write block [589824] at [0x00090000] write block [655360] at [0x000A0000] write block [720896] at [0x000B0000] write block [786432] at [0x000C0000] write block [851968] at [0x000D0000] write block [917504] at [0x000E0000] write block [983040] at [0x000F0000] write block [1048576] at [0x00100000] write block [1114112] at [0x00110000] write block [1179648] at [0x00120000] write block [1245184] at [0x00130000] write block [1310720] at [0x00140000] write block [1376256] at [0x00150000] write block [1441792] at [0x00160000] write block [1507328] at [0x00170000] write block [1572864] at [0x00180000] write block [1638400] at [0x00190000] write block [1703936] at [0x001A0000] write block [1769472] at [0x001B0000] write block [1835008] at [0x001C0000] write block [1900544] at [0x001D0000] write block [1966080] at [0x001E0000] write block [2031616] at [0x001F0000] write block [2097152] at [0x00200000] write block [2162688] at [0x00210000] write block [2228224] at [0x00220000] write block [2293760] at [0x00230000] write block [2359296] at [0x00240000] write block [2424832] at [0x00250000] write block [2490368] at [0x00260000] write block [2555904] at [0x00270000] write block [2621440] at [0x00280000] write block [2686976] at [0x00290000] write block [2752512] at [0x002A0000] write block [2818048] at [0x002B0000] write block [2883584] at [0x002C0000] write block [2949120] at [0x002D0000] write block [3014656] at [0x002E0000] write block [3080192] at [0x002F0000] write block [3145728] at [0x00300000] write block [3211264] at [0x00310000] write block [3276800] at [0x00320000] write block [3342336] at [0x00330000] write block [3407872] at [0x00340000] write block [3473408] at [0x00350000] write block [3538944] at [0x00360000] write block [3604480] at [0x00370000] write block [3670016] at [0x00380000] write block [3735552] at [0x00390000] write block [3801088] at [0x003A0000] write block [3866624] at [0x003B0000] root@DD-WRT:/tmp# reboot root@DD-WRT:/tmp# Connection closed by foreign host. ljmarin@lm ~ $

Para lo anterior deben saber su versión exacta de dd-wrt para poder colocar el link, además de tener conexión a internet, como todo, esto también tiene su riesgo y es solo si desde el navegador se nos hace imposible actualizar.

8 comentarios:

Unknown dijo...

logre actualizar el firmware a un tp-link tl-wr1043nd que tenia el problema de "update failed" con cualquier firmware, gracias por la guia.

L.J.Marín dijo...

Me alegra que le sirviera, a veces cuesta bastante conseguir la información que uno necesita, y aunque la mayoría del tiempo está ahí, esta fragmentada.

Unknown dijo...

Hola muy buen tuto, gracias por compartir, me funciono muy bien para revivir un viejo Dir 300 por medio de telnet, se agradece de mucho.. Saludos

L.J.Marín dijo...

Por nada, a usted por comentar, y si, lo mismo sirve para otros modelos, los pasos son prácticamente los mismos. Saludos.

Unknown dijo...

No puedo actualizar el router

Unknown dijo...

No puedo actualizar mi router

Enrique Mor dijo...

Hola que tal, estoy intento este proceso en un router ZTE F660, pero al momento de meter el comando Write firmaware.bin linuxrc (en mi caso es linuxrc) me genera el erro write: not found

Espero puedas ayudare saludos

TheDarkMetal640 dijo...

Te agradezco el tutorial, por fin pude revivir mi router wr741nd