Airport Extreme en Ubuntu
Antes de nada, sé que existen multitud de artículos por La Red que describen este mismo proceso (1, 2, 3...), pero es un hecho que me apetece documentar. La AirPort Extreme funciona con el chip Broadcom 43xx fabricado por la dicha compañía (Broadcom) los cuales se negaron a ofrecer un driver para GNU/Linux. Era cuestión de tiempo que los integrantes del grupo Broadcom 43xx Linux Driver acabaran de leer esas especificaciones por ingeniería inversa y sacaran un driver usable. Así ha sido.
Módulos de kernel
En una Ubuntu 6.06 no tendremos problemas de compilación de módulos de kernel, con lo que el proceso se simplifica bastante. De todos modos, hay 3 formas distintas de instalar los LKM que necesitamos (ieee80211softmac y bcm43xx):- Compilando nuevo kernel: Bajamos el último kernel estable (plataforma ppc), lo configuramos activando ambos módulos ('Networking -> Generic IEEE 802.11 Networking Stack'... y 'Device Drivers -> Network device support -> Wireless LAN drivers (non-hamradio) & Wireless Extensions) -> Broadcom BCM43xx wireless support'). Compilamos, instalamos, reiniciamos nuevo kernel y deberíamos tener los módulos listos para usar
- Usando un kernel binario de Debian (Ubuntu): con una simple actualización de kernel (apt-get update && apt-get dist-upgrade) y consiguiente reinicio tendremos todos los módulos necesarios en el nuevo kernel (2.6.15-25-powerpc a este momento).
- Compilando los módulos por separado: El primer módulo debería poder bajarse de aquí, pero el enlace no funciona así que habría que buscar alternativa, bajarlo, compilarlo e instalarlo. Lo mismo para el Bcm43xx (es una pena que no tenga enlaces de los sources, pero no los he encontrado).
Firmware
Antes de cargar los módulos de kernel y para que todo funcione a las mil maravillas necesitamos el firmware de la tarjeta, sin el cual nada funcionará. Para extraerlo usaremos la herramienta fwcutter que tendremos que instalar en nuestro sistema:# apt-get install subversion # svn checkout svn://svn.berlios.de/bcm43xx/trunk # cd trunk/fwcutter/ # makeNo hago make install porque solo la voy a usar una vez, así tengo el binario localizado y cuando quiera me lo cargo. Ya tenemos el ejecutable que se encargará de extraer el firmware, pero nos falta el firm. Lo intenté con el que viene en MacOSX (suponiendo un montaje en /media/macosx) no con demasiada fortuna, varios errores microde13.fw y microde15.fw decidieron que bajara el firmware que a Gura le había funcionado:
# cp /media/macosx/System/Library/Extensions/AppleAirPort2.kext/Contents/MacOS/AppleAirPort2 ./ # ./bcm43xx-fwcutter AppleAirport2 errores microcodeX.fwMétodo Gura:
# wget http://www.nuevascreaciones.com/drinus/airport/wl_apsta.o # ./bcm43xx-fwcutter -w /lib/modules wl_apsta.o # modprobe ieee80211softmac # modprobe bcm43xxCon el firmware correcto instalado procedemos a cargar los módulos de kernel necesarios.
Configuración final
El último paso es configurar la tarjeta, la levantamos, escaneamos en busca de redes wireless disponibles, nos asociamos a un punto de acceso, le damos una IP, una puerta de enlace y a funcionar:# ifconfig eth1 up # iwlist eth1 scan # iwconfig eth1 mode Managed # iwconfig eth1 channel # # iwconfig eth1 essid "nombre_red" # ifconfig eth1 192.168.1.3 netmask 255.255.255.0 # route add default gw 192.168.1.1
No ha sido tan complicado como parecía, ahora a por el modo monitor, Kismet y demás ilegalidades, yumm :D.
Comentarios
MIL GRACIAS!!!