WUSB54G v4 y Linux
filed in Linux on Jul.23, 2005
A fines del año pasado conseguí un adaptador WiFi USB. Antes de comprarlo, me aseguré de que funcionara con Linux. Se trata de un Linksys WUSB54G. Pero me di con la sorpresa de que LinkSys había actualizado su dispositivo y que la nueva versión (justo la que tengo) no tenía drivers para Linux. En resumen, si Linksys antes usaba un chipset Prism, en la versión 4 del WUSB54G usa uno Ralink.
Perdí no pocas horas bajando diversos drivers, compilando e instalando los módulos. También problé con ndiswrapper, pero con poco resultado: para que funcionara, tenía que desactivar los puertos USB2.0 de la PC, y en ocasiones la PC quedaba congelada. Además, cosa molesta, el aparato podía funcionar como Access Point (modo Master), sólo en modo Managed o Ad-hoc. Bueno, en resumen, debí haber comprado un access point en vez de un adaptador USB, y listo… en todo caso, el adaptador en cuestión ha estado algunos meses en una repisa, e incluso pensé en venderlo. En Windows funciona muy bien, y es 802.11g…
Hoy encontré un driver en este link: http://etudiants.insia.org/~jbobbio/ural-linux/. Lo bajé, compilé, probé el módulo y ¡listo! funciona, y bien. Es un driver experimental: de vez en cuando produce un Segmentation Fault. Pero para lo que quiero, suficiente.
En resumen:
- Bajar el driver (ural-linux-0.8.2.tar.bz2) del link que indico arriba y desempaquetarlo (
tar xvfj ural...). $ cd ural-linux-0.8.2
$ make
$ sudo make install
$ sudo modprobe ural- No está de más abrir otra consola para ver qué está pasando detrás de las bambalinas…
$ sudo tail -f /var/log/messages. Conectamos el dispositivo al cable usb:Jul 23 19:02:50 localhost kernel: wlan: 0.8.4.5 (EXPERIMENTAL)
Jul 23 19:02:50 localhost kernel: /home/moco/downloads/linksys/ural-linux-0.8.2/
ural/if_ral.c: Ralink Technology RT2500USB chipset driver v0.8.2
Jul 23 19:02:50 localhost kernel: usbcore: registered new driver ural
Jul 23 19:03:08 localhost kernel: usb 5-8: new high speed USB device using ehci_ hcd and address 3
Jul 23 19:03:09 localhost kernel: ural_eeprom_read: 4 -> 00:0f:66:76:14:d2
Jul 23 19:03:09 localhost kernel: eth1: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
Jul 23 19:03:09 localhost kernel: eth1: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6M bps
9Mbps
12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
Jul 23 19:03:09 localhost kernel: eth1: RT2570 (rev 0×03), RF RT2526,
ether 00:0 f:66:76:14:d2 at usb-0000:00:10.4-8
- Ahora configuramos el dispositivo usando iwconfig:
$ sudo iwconfig eth1 essid "nombredered"
$ sudo iwconfig eth1 channel 6
$ sudo iwconfig eht1 mode master - Configuramos la red:
ifconfig eth1 up
ifconfig eth1 10.1.2.1 netmask 255.255.255.0
- Configuramos el routing:
route add -host 10.1.2.1 eth1
iptables -t nat -F
iptables -t nat -A POSTROUTING -j SNAT -o eth0 –to 192.168.1.10 (éste es el IP de la otra tarjeta de red de la PC)
y activamos el port-forwarding:
echo "1" /proc/sys/net/ipv4/ip_forward - Probamos: ping 10.1.2.1 en la Zaurus, y funciona. ping 10.1.2.2 en la PC, y la Zaurus contesta. ping www.google.com en la Zaurus, google contesta.
Ahora tengo que ver cómo activo la encriptación del dispositivo, un servidor dhcp para el punto de acceso, y quizá algún modo de autenticar usuarios. Para otro post.



