Intel PRO/Wireless 3945ABG en Slackware 12.0
2008-03-31 16:07:49-06
Hacks
Disclaimer
Este es el mini-tutorial donde tomé la inspiración:
Muchas gracias pepe_cat.
Copiando los archivos
Insertas el CD de instalación en donde contenga el directorio “extra” y copias los archivos fuentes:
[#] mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom
[#] mkdir ~/tmp
[#] cp -r /mnt/cdrom/extra/source/intel-wlan-ipw3945 ~/tmp
[#] mkdir ~/tmp
[#] cp -r /mnt/cdrom/extra/source/intel-wlan-ipw3945 ~/tmp
Si deseas más información sobre el proceso de instalación checa el archivo “intel-wlan-ipw3945/README_Slackware.TXT”.
Instalado el subsistema IEEE80211
Sólo sigue estos pasos:
[#] cd ~/tmp/intel-wlan-ipw3945/ieee80211-subsystem
[#] tar vxzf ieee80211-1.2.17.tar.gz
[#] cd ieee80211-1.2.17
[#] make patch_kernel
[#] make
[#] make install
[#] tar vxzf ieee80211-1.2.17.tar.gz
[#] cd ieee80211-1.2.17
[#] make patch_kernel
[#] make
[#] make install
Instalando el firmware
Sólo basta copiar un archivo:
[#] cd ~/tmp/intel-wlan-ipw3945/microcode/
[#] tar vxzf ipw3945-ucode-1.14.2.tgz
[#] cd ipw3945-ucode-1.14.2
[#] cp ipw3945.ucode /lib/firmware
[#] tar vxzf ipw3945-ucode-1.14.2.tgz
[#] cd ipw3945-ucode-1.14.2
[#] cp ipw3945.ucode /lib/firmware
Instalando el dæmonio
Primero lo “instalamos”:
[#] cd ~/tmp/intel-wlan-ipw3945/regulatory-daemon
[#] tar vxzf ipw3945d-1.7.22.tgz
[#] cd ipw3945d-1.7.22
[#] cp x86/ipw3945d /lib/firmware
[#] cp ipw3945d-st* /etc/rc.d
[#] chmod +x /etc/rc.d/ipw3945d-st*
[#] tar vxzf ipw3945d-1.7.22.tgz
[#] cd ipw3945d-1.7.22
[#] cp x86/ipw3945d /lib/firmware
[#] cp ipw3945d-st* /etc/rc.d
[#] chmod +x /etc/rc.d/ipw3945d-st*
Ahora iniciamos el dæmonio en cada booteo:
[#] vi /etc/rc.d/rc.local
# Intel PRO/Wireless 3945ABG daemon
if [ -x /etc/rc.d/ipw3945d-start ]; then
/etc/rc.d/ipw3945d-start
fi
# Intel PRO/Wireless 3945ABG daemon
if [ -x /etc/rc.d/ipw3945d-start ]; then
/etc/rc.d/ipw3945d-start
fi
Y detenemos el dæmonio en cada apagado:
[#] vi /etc/rc.d/rc.local_shutdown
#!/bin/sh
# Intel PRO/Wireless 3945ABG daemon
if [ -x /etc/rc.d/ipw3945d-stop ]; then
/etc/rc.d/ipw3945d-stop
fi
#!/bin/sh
# Intel PRO/Wireless 3945ABG daemon
if [ -x /etc/rc.d/ipw3945d-stop ]; then
/etc/rc.d/ipw3945d-stop
fi
Si por alguna razón no deseas utilizar más la conexión inalámbrica, puedes “desactivar” los scripts con:
[#] chmod -x /etc/rc.d/ipw3945d-st*
Y hace lo siguiente para volverlos a activar:
[#] chmod +x /etc/rc.d/ipw3945d-st*
Módulo del kernel
Primero compilamos e instalamos:
[#] cd ~/tmp/intel-wlan-ipw3945/kernel-module
[#] tar vxzf ipw3945-1.2.1.tar.gz
[#] cd ipw3945-1.2.1
[#] make IEEE80211_IGNORE_DUPLICATE=y
[#] tar vxzf ipw3945-1.2.1.tar.gz
[#] cd ipw3945-1.2.1
[#] make IEEE80211_IGNORE_DUPLICATE=y
Te va a preguntar si deseas reemplazar el modulo actual, a todas las confirmaciones le respondes que si: “y”.
Continuamos:
[#] make install
Configuramos el sistema para que cargue el módulo en cada booteo:
[#] vi /etc/rc.d/rc.modules
# Intel PRO/Wireless 3945ABG wireless module
/sbin/modprobe ipw3945
# Intel PRO/Wireless 3945ABG wireless module
/sbin/modprobe ipw3945
Ahora cargamos todo:
[#] ./load debug=0
Configurando la conexión
En el documento de pepe_cat él recomienda usar el applet de configuración de la red inalámbrica, “Wireless Network”, del grupo “Internet & Network” del “KDE Control Center” (“kcontrol”).
Esto en lo personal se me hace chafa ese procedimiento ya que según el libro del Slackware sólo basta con que edites el archivo “/etc/rc.d/rc.wireless.conf” y que establezcas los parámetros del punto de acceso como son su identificador (“ESSID”) y su clave de acceso (“KEY”) entre otros para que el script “/etc/rc.d/rc.inet1”, el cual puedes configurar con el comando “netconfig”, haga su magia en cada booteo.
Sin embargo mi conexión presenta un problema:
Cada vez que reinicio la máquina el dispositivo permanece en este estado:
ADDRCONF(NETDEV_UP): eth0: link is not ready
y esto hace que falle el script “/etc/rc.d/rc.inet1” para iniciar la conexión.
Probando probando encontré que despues de todo SI necesito de este applet además de las configuraciones del archivo “/etc/rc.d/rc.wireless.conf” para poder conectarme al punto de acceso.
Configurando rc.wireless.conf
Esto es sencillo, primero comentas las siguientes líneas del archivo “/etc/rc.d/rc.wireless.conf”:
[#] vi /etc/rc.d/rc.wireless.conf
## NOTE : Comment out the following five lines to activate the samples below ...
## --------- START SECTION TO REMOVE -----------
## Pick up any Access Point, should work on most 802.11 cards
#*)
# INFO="Any ESSID"
# ESSID="any"
# ;;
## ---------- END SECTION TO REMOVE ------------
## NOTE : Comment out the following five lines to activate the samples below ...
## --------- START SECTION TO REMOVE -----------
## Pick up any Access Point, should work on most 802.11 cards
#*)
# INFO="Any ESSID"
# ESSID="any"
# ;;
## ---------- END SECTION TO REMOVE ------------
Después agregas la configuración de tu punto de acceso, en mi caso como nada más cuento con un sólo punto (el de mi chante) lo agrego en la “entrada” siguiente (hasta el final del archivo):
# Generic example (decribe all possible settings)
*)
#INFO="Fill with your own settings..."
INFO="Usando el punto de acceso ID_DEL_PUNTO_DE_ACCESO"
# ESSID (extended network name) : My Network, any
ESSID="ID_DEL_PUNTO_DE_ACCESO"
...
# Encryption key : 4567-89AB-CD, s:password
KEY="CLAVE_DEL_PUNTO_DE_ACCESO"
...
;;
*)
#INFO="Fill with your own settings..."
INFO="Usando el punto de acceso ID_DEL_PUNTO_DE_ACCESO"
# ESSID (extended network name) : My Network, any
ESSID="ID_DEL_PUNTO_DE_ACCESO"
...
# Encryption key : 4567-89AB-CD, s:password
KEY="CLAVE_DEL_PUNTO_DE_ACCESO"
...
;;
Para quienes ocupen más de un punto (el del chante, el negocio, el ciber de enfrente, el del vecino de a lado, el del otro vecino, el del “segundo frente”, etc), sólo agrega el identificador de dirección MAC de cada uno de ellos y sus respectivas configuraciones para cada uno de ellos:
El identificador de dirección MAC lo puedes obtener con el comando “iwconfig” una vez establecida la conexión (a menos que olfatees el vecindario para ver qué otros puntos encuentras pero no sé cómo hacer eso):
[#] iwconfig eth0
eth0 IEEE 802.11g ESSID:"ID_DEL_PUNTO_DE_ACCESO" Nickname:"APODO"
Mode:Managed Frequency:2.437 GHz Access Point: 00:34:01:22:1A:01
Bit Rate:54 Mb/s Tx-Power:15 dBm
Retry limit:15 RTS thr:off Fragment thr:off
Encryption key:CLAVE_DE_ACCESO Security mode:restricted
Power Management:off
Link Quality=92/100 Signal level=-38 dBm Noise level=-44 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:2485 Missed beacon:0
Con eso sólo agregamos la “entrada” al archivo “/etc/rc.d/rc.wireless.conf”:
# Punto de acceso del segundo frente
00:34:01:22:1A:01)
ESSID="EL_ID_DEL_PUNTO_DE_ACCESO"
KEY="LA_CLAVEL_DEL_PUNTO_DE_ACCESO"
;;
00:34:01:22:1A:01)
ESSID="EL_ID_DEL_PUNTO_DE_ACCESO"
KEY="LA_CLAVEL_DEL_PUNTO_DE_ACCESO"
;;
Configurando el applet de KDE Control Center
La configuración de este applet es aún más fácil, sólo inserta los datos en los campos correspondientes de los valores que necesite tu punto de acceso.
Por default cuenta con cuatro configuraciones para cuatro puntos de acceso (D'oh!) pero obviamente puedes agregar más.
En mi caso tengo que agregar el script “/etc/rc.d/rc.inet1” en el campo “Ejecutar script al conectarse” para que automáticamente se inicie la conexión ya que por alguna razón este applet cambia el estado del dispositivo a:
[#] dmesg | grep eth
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
y así el script el “/etc/rc.d/rc.inet1” puede satifactoriamente iniciar la conexión.
El único detalle malo de esto es que lo tiene que hacer el root.
Permalink: http://www.mononeurona.org/users/entry/asarch/1224
Comentblogs:1.-
saidjose wrote:
Excelente tuto amigo, na damas me compre una tarjeta inalambrica lo pruebo en mi vieja lap, una forma de buscar conexiones y se me hace muy simple es comprando una de las camisas que detectan conexiones inalambricas en mercado libre te puedes agenciar una por unos cuantos pesos.
2008-04-01 15:31:54-06
Excelente tuto amigo, na damas me compre una tarjeta inalambrica lo pruebo en mi vieja lap, una forma de buscar conexiones y se me hace muy simple es comprando una de las camisas que detectan conexiones inalambricas en mercado libre te puedes agenciar una por unos cuantos pesos.
2008-04-01 15:31:54-06










