
En este último tiempo que he hablado con arkan0x hemos estado comentando bastante sobre openwrt y mi afán por conseguir un exquisito router llamado Netgear WGT634U , el cual no compre en tecnocentro cuando estaban disponibles (DUH!), pero esa es harina de otro costal ya lo compre hace algunos días :D. Para el que también quiera uno de estos amigos puede comprarlo en Boisset Tech (En deremate tienen este router, con usb :B) Diablos! se acabaron, en un rato le enviare un mail a javiera para comprobar si quedan más/traerán más o algo
Pasando al ámbito más práctico que quiero lograr (WGT634U+ sonido usb + receptor rf + cofre usb HDD) lo primero era conseguir el WGT, luego crear el nuevo firmware para este (No es en mala, pero el firmware por defecto tiene harto que desear), con php y todas las chucherias que se me ocurran
Manos a la Obra!
Los Desarrolladores de openwrt nos ahorran varios dolores de cabeza con sus compilaciones (Hace poco sacaron la versión 7.07 de kamikaze) por que tendremos los binarios en seguida (O podemos compilar nosotros mismos, pero eso ya lo cubrire en otro articulo)
Bien como asumo un WGT634U usaremos la imagen de este , y la subiremos por la interfaz web por defecto del router.
Podemos bajar el build de openwrt desde su sitio oficial o un build desde x-wrt (los compadres que trabajan webif, la interfaz web para openwrt) aunque la verdad no veo muchas diferencias esta vez (los builds anteriores de x-wrt traían webif integrado si la memoria no me falla)
Ahora nos bajamos este fichero en el cual vienen un par de hacks al firmware por defecto (el wgt634u en el firmware por defecto respalda todos los ficheros de /etc y los guarda en un .cfg que contiene un clrp que es un fichero minix, el cual al montarlo nos mostrara todos los ficheros en /etc que tenemos en el router) asi que nos aprovechamos de eso y subimos este fichero en restaurar configuración (Segun la wiki no nos dara ip por dhcp al terminar este paso, asi que configuramos una ip estatica como por ejemplo 192.168.1.3) luego entramos a la conf web, y veremos un “Install Openwrt”, el cual es igualito al actualizador de firmware por defecto, pero con este podremos subir openwrt
let’s go :B
Dum dum dum, esperamos a que se suba, se borren los datos de la memoria flash, se escriban los nuevos datos de openwrt y cruzamos los dedos, puede que se demore su rato en hacerlo, yo estuve como unos 10~20 minutos la primera vez y creí que había matado el router XD la luz naranja no dejaba de brillar
pero luego la verde me indicaba que estábamos listos. En caso de que nos hayamos condoreado el router, podemos usar un cable de sincronizacion para celular (un DKU-5 estoy usando, sorry arkan0x te tengo que devolver tu cable aun xD) el que nos permitira ver lo que pasa en el router, desde la “bios” del router (CFE) hasta el mismisimo booteo de linux. Con el cable, más un programa como picocom, y un server tftp (yo use tftpserver , esta en sourceforge, aunque pueden usar cualquiera) tendremos de vuelta a nuestro router con algo asi:
ifconfig eth0 -addr=192.168.1.1 -mask=255.255.255.0 ; flash -noheader 192.168.1.3:openwrt-wgt634u-2.6-squashfs.bin flash0.os;reboot
donde 192.168.1.3 es el tarro donde tenemos el server tftp corriendo.
Bien volvemos a nuestro recién instalado openwrt, pedimos ip por dhcp, nos dara algo en 192.168.1.X, ahora simple, le hacemos telnet al router : telnet 192.168.1.1 lo que nos da acceso a la shell (ash) del router para que pongamos una password con el comando passwd , luego de eso podremos usar ssh con esta contraseña.
Goooood! ahora a conectarnos a internec. Si tienes VTR estas dado, excepto por la cosa del cambio de MAC, aun no veo como cambiar la mac permanentemente o por lo menos en cada booteo, pero con ifconfig eth0.1 hw bb:bb:bb:bb:bb:bb debería funcionar.
Para terra tendremos que editar el fichero /etc/config/network , vi viene con los paquetes por defecto de openwrt, asi que vamos : vi /etc/config/network , presionamos “i” para entrar al modo edición, nos vamos a la seccion WAN, cambiamos “option proto dhcp” por “option proto pppoe”, agregamos “option username ads2XXXXXXXXXX@speedynananana.tierra” y “option password ads2XXXXXXXXXX” y estaríamos listos, para salir del modo editor presionamos Esc, luego para guardar los cambios presionamos :wq y ponemos ifdown wan;ifup wan y voila, ppp0 se debería levantar. De paso en el conf de network podemos cambiar el rango de ips, yo lo dejo en 10.0.0.X, asi que cambio 192.168.1.1 a 10.0.0.1.
Instalemos algo? lo primero que instalo en openwrt es el soporte usb, webif y miniupnpd :
ipkg update ; ipkg install kmod-usb2 kmod-usb-ohci kmod.usb-uhci kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 miniupnpd ; /etc/init.d/miniupnpd enable; /etc/init.d/miniupnpd start
Para webif nos hace falta agregar un repositorio , con vi editamos /etc/ipkg.conf y agregamos esta línea:
src X-Wrt http://downloads.x-wrt.org/xwrt/kamikaze/7.07/brcm47xx-2.6/packages
que hicimos con esto? tendremos instalado webif con simplemente hacer ipkg install webif (y podemos poner webif-lang-es si queremos webif en el idioma de cervantes)
http://10.0.0.1 ……. y nos pedirá nuestros datos de admin (root y su password) uff se ha alargado harto el coso o no? … em, en que iba? ah si, y veremos webif
Bien, no me quedan neuronas suficientes para seguir poniendo mas locuras, asi que eso es todo por hoy con openwrt :B
