Cirugía cerebral para un router inalámbrico

Ariel Torres
(0)
12 de febrero de 2010  

Advertencia: los siguientes párrafos contienen escenas de violencia contra hardware indefenso. Algunas prácticas pueden ofender a las personas sensibles. Se recomienda discreción. Manténgase esta nota lejos del alcance de los niños. Sobre todo, de los niños que ya son capaces de operar el intérprete de comandos.

De lindo color azul y negro. Con sus simpáticas antenitas. En perfecto estado de salud. Me daba pena no volver a usar ese router inalámbrico Linksys WRT54G, tras haberlo reemplazado por uno más moderno, carenado, aerodinámico, rápido y con menos onda que Darth Vader.

Está bien, había ganado con el cambio. Ahora tenía mejor señal en el living. Pero mejor no es perfecto. No para nosotros los obsesivos, al menos. Por lo tanto, sabía que el WRT54G no pasaría muchos días apagado. Pronto estaría ampliando el rango de mi red inalámbrica para tener señal fuerte en toda la casa. O se convertiría en un pisapapeles chic & geek . Todo dependía de cómo me fuera con los experimentos que pensaba llevar adelante.

Video

Puesto que un router es, en todo sentido, una computadora, lo que sea capaz de hacer dependerá de dos factores: el hardware y el sistema operativo. Si el chip de un router ofrece cierta función, pero ésta no es implementada por el sistema operativo, al usuario le resultará inaccesible. A menos, claro, que cambie de sistema operativo, que en los routers se llama firmware .

(En rigor, sistema operativo y firmware no son sinónimos. Se trata de cuestiones que están en niveles diferentes. El sistema operativo es un conjunto de programas, bibliotecas y controladores que hacen funcionar un equipo. Es decir, software. La palabra firmware fue acuñada en 1967 por Ascher Opler en la revista Datamation para caracterizar al software que se puede tocar porque está embebido en un chip. El término viene de que no es ni blando como el software ni duro como el hardware, está a medio camino y por eso Opler lo llamó firm , firme en inglés.)

Estuve tentado de practicar esta cirugía de cambio de sistema operativo en la semana, pero llegaba siempre tarde a casa y sabía que para no quemarle el cerebro al pobre router necesitaba estar con todos mis sentidos alertas. Menos mal, porque estuve a un segundo de cometer un error fatal.

Es sólo una versión

El domingo por la tarde, por fin, me hice tiempo para conectar el WRT54G a mi netbook, listo para subirle ( flashearle , en la jerga) la versión de Tomato ( www.polarcloud.com/tomato ) que ya tenía guardada. Abrí el navegador, escribí la dirección 192.168.1.2 , que le había asignado en la semana durante unos breves experimentos (sí, no lo pude evitar), y fui al apartado Actualización del firmware . Verifiqué dos veces que hubiera seleccionado la edición correspondiente a la versión de mi router y puse el puntero sobre el botón Actualizar . Estaba a un segundo de convertir el WRT54G en un ladrillo.

Por fortuna, dudé.

"¿Realmente tengo la versión 4 del WRT54G?", pensé. Había una pequeña luz de alarma encendida en alguna parte de mi neocórtex. Di vuelta el equipo y traté de leer el número de la versión. No pude. En Linksys deben creer que nadie de más de 30 años es capaz instalar un router, porque el tamaño de la tipografía es infinitesimal. Por eso hay varias lupas en mi escritorio. Con la ayuda de la óptica, pude leer la versión. No era la 4. Era la 8. Ups.

Sabía por qué me había confundido. El fin de semana anterior había instalado Windows en una PC con antenas Wi-Fi de Linksys, que también vienen en varias versiones. Había tenido que abrir el equipo para cambiar un disco de lugar y de paso leí el número (con una lupa). La antena era versión 4. En mi saturada memoria, el valor quedó asociado a las redes inalámbricas y por extensión al router azul y negro. Justo a tiempo, al mejor estilo película de Hollywood, había evitado el desastre.

Pero ahora tenía un problema quizá peor: desde la versión 5 Linksys había reducido la cantidad de memoria flash de estos routers (ahí donde se graba el firmware) de 4 a 2 MB. Además, usaban el sistema operativo VxWorks, que los vuelve incompatibles con los firmware alternativos. Así que mi proyecto de fin de semana parecía destinado al fracaso. ¡Perfecto, tendría que pelear!

Gigante en miniatura

Mis aliados en esta batalla serían los chicos de dd-WRT ( www.dd-wrt.com ), que no sólo producen un firmware alternativo basado en Linux y tienen un sitio impecable, bien organizado, claro y completo, sino que además han creado una versión micro de su sistema operativo, adecuada para las versiones 5 a 8.2 del WRT54G (salvo la 7.0).

Puesto que lo cortés no quita lo valiente, me llevé el router y la netbook al sofá, donde estaría más cómodo. Sabía que iba a pasar un largo rato con esta operación. Primero porque era la primera vez que trataba con el firmware y los procedimientos de dd-WRT. Segundo porque no me gusta apurarme en general, y tercero porque hacerlo con una tarea crítica es una pésima idea: no se la disfruta y es más fácil cometer errores.

El primer paso fue hacer lo que se conoce en la jerga como un reinicio 30/30/30 . Se lo llama así porque hay que apretar el botón de Reset en el respaldo del router durante 30 segundos, desconectar el cable de energía durante otros 30 segundos sin soltar el botoncito (ahí empieza uno a sentirse acalambrado) y volver a enchufar el router, presionando Reset durante todavía otro medio minuto. Si no se requiere hospitalización después de esto, se puede seguir adelante con un dispositivo que ha regresado a su status de fábrica. No me quedaba claro si esto era menester para un equipo que todavía conservaba el firmware original, pero dadas las numerosas advertencias de la gente de dd-WRT, seguí el procedimiento.

Esperé un rato (esto es importante) hasta que el aparato hubo arrancado por completo y enchufé el cable de red entre el router y la netbook por medio de los puertos Ethernet (es decir, no el que se usa para vincular el router al módem ADSL). Desactivé la red inalámbrica y dejé andando sólo la cableada, con direcciones fijas para la netbook ( 192.168.1.100 ) y para el router (de nuevo, 192.168.1.2 ).

Teóricamente, no iba a poder cargar un firmware de terceros sin antes de borrarle la memoria al pobre router. ¿En serio? Quería ver qué error tiraba el VxWorks, dado que estaba a punto de erradicarlo; la tentación era demasiado grande.

Busqué la versión micro del software de dd-WRT compatible con mi dispositivo e intenté subirla al router por las malas. Es decir, usando la opción Actualizar firmware de la interfaz Web provista por Linksys. Existía cierto riesgo (menor) de dejar inutilizado el WRT54G. "El que no arriesga no gana", dije, y apreté Actualizar .

Ruido a vidrios rotos y mensajito en pantalla: Formato de archivo incorrecto . Magnífico, tan sólo un mensaje de error.

Apagué el router, lo dejé dos minutos así, lo volví a encender y entré a su interfaz Web. Andaba perfectamente bien. "Zafaste", le dije al aparatito, que por supuesto movió afectuosamente sus antenitas. "Lástima que ahora tengo que borrarte por completo la memoria para poder curar tus limitaciones", añadí. Bajó las antenitas con un gemido angustiado.

Basta de charla. Había que proceder. Busqué el VXWorks-killer (SIC) y lo subí al router usando la opción Actualizar firmware . Hecho esto, el equipo quedó inaccesible e inutilizable. Borrada su memoria de todo vestigio del software original, la única manera de tratar ahora con el WRT54G era usando otras herramientas. Corrí un ping 192.168.1.2 y me respondió. Como desde ultratumba, pero lo hizo. Indicio que, dentro de su estado de coma, el router estaba bien y listo para recibir la transfusión de firmware. Lo apagué, esperé un rato y lo volví a iniciar. Bajé del sitio la herramienta tftp.exe y escribí la orden correspondiente en la línea de comandos: tftp -i 192.168.1.2 put dd-wrt.v24_micro_generic.bin

Era la primera vez que usaba este programita y resultó que abría una interfaz gráfica mucho más simple que el intérprete de comandos. ¡Ah, los tiempos modernos! En otra época el firmware se programaba directamente en el chip usando una máquina extraña, mezcla de caja registradora con tragamonedas, que algún día mostraré en mis videoanálisis (sí, tengo una en casa), y finalmente el chip programado se enchufaba en el dispositivo. Ahora es todo tanto más fácil...

Bueno, era la hora de la verdad. Apreté el botón Upgrade del tftp y luego de unos segundos obtuve un error. "Lo sabía -le dije al router catatónico-. Esto estaba saliendo demasiado bien." Lo intenté un número de veces, pero el resultado fue siempre el mismo (lógico).

¿Había convertido el WRT54G en un brick ? Dadas las muchas advertencias que daba la gente de dd-WRT en su sitio y la serie de pasos que me había salteado (sobre todo, los numerosos 30/30/30 ), apoyándome en la consigna de que el mundo es de los valientes, seguramente sí.

Razoné: el router ahora sólo tenía el cargador básico del sistema ( bootloader , en la jerga). Todo lo demás había sido borrado por el VXWorks-killer . De modo que intenté otro camino. Lo desenchufé, conté diez segundos (dd-WRT aconseja 30), lo volví a encender y tan pronto terminó de arrancar le inyecté de nuevo el firmware.

Esta vez la operación tuvo éxito y la luz de WAN ( Wide Area Network ) se encendió, las antenitas se sacudieron alegremente y sin esperar un segundo más (en rigor, me mordí los nudillos, me hice dos cafés y fui a dar una vuelta para despejarme y asegurarme de que el router había booteado por completo) abrí el navegador, escribí 192.168.1.2 y apareció una fachada completamente nueva. El mismo hardware con otro sistema operativo desplegaba un potencial inesperado. ¡No me daban los ojos para revisar tantas opciones! Pero me calmé y seguí con el proyecto: expandir los alcances de mi red inalámbrica sin tener que conectar los dos routers por medio de un cable.

La opción se llama Repeater Bridge y luego de cinco minutos de configuración la cobertura de mi hotspot se había duplicado, sin errores, sin caídas, perfectamente estable hace ya, al cierre de esta edición, cinco días. Habrá más información en futuras notas. He leído mucho sobre el tema estos días, pero es un territorio nuevo sobre el que quiero ahondar más. Hay muchas y muy prometedoras áreas que no pude cubrir en una semana: el código fuente, que está disponible, el Firmware Modification Kit , las otras formas de flashear el router y sigue la lista. Obviamente, soy todo oídos, tanto para consultas como para sugerencias.

En todo caso, es fascinante que este dispositivo que sólo tenía un futuro de desván o de subasta online ahora sea capaz de permitirme, entre muchas otras cosas, hablar horas por celular desde mi sofá usando Skype en el iPhone. Con mejor señal que la del operador de telefonía, mejor calidad de audio y sin gastar en minutos.

Nota del estribo: no intente esto en su casa. El procedimiento viola la garantía del router, los firmware alternativos han exhibido fallas de seguridad en el pasado (bueno, también los originales, para el caso) y muchas cosas pueden salir mal durante la operación.

Si lo hace, sepa que es a su propio riesgo. Por lo tanto, asegúrese de leer toda la documentación, entender el porqué de cada paso y, de ser posible, no juegue con el único router que tenga. Especialmente, un domingo por la tarde.

El resto es pura diversión ;)

ENVÍA TU COMENTARIO

Ver legales

Los comentarios publicados son de exclusiva responsabilidad de sus autores y las consecuencias derivadas de ellos pueden ser pasibles de sanciones legales. Aquel usuario que incluya en sus mensajes algún comentario violatorio del reglamento será eliminado e inhabilitado para volver a comentar. Enviar un comentario implica la aceptación del Reglamento.

Para poder comentar tenés que ingresar con tu usuario de LA NACION.