LinuxParty

Ratio:  / 26
MaloBueno 

Configuración del PC con tecnología Centrino en GNU/Linux para acceso a la Red Inalámbrica, basado en el mismo documento de la Universidad de Murcia "Cómo Centrino conoció a Ícaro", por Miguel Pérez Ibars, actualizado por Javier Orovengua Miguel para LinuxParty en. Siga los siguientes pasos en orden. Si no es la primera vez que accede a la Red Wifi.

En este documento haremos mención a wireless, wifi e inalámbrica indistintamente, ya que todas las palabras significan la misma cosa.

1.- Instalación de la tarjeta de red inalámbrica
2.- Configuración de la tarjeta de red inalámbrica
3.- Configuración del PC para usar DHCP

Elementos necesarios
Las fuentes del núcleo Linux y para el ejemplo, usamos el driver ipw2100 (también el ipw2200) y que esté soportado por el núcleo


En el normal de los casos, la simple configuración, si la tarjeta funciona.

CONEXIÓN INALÁMBRICA

Fedora, CentOS y RedHat Linux (también, tal vez algunas otras distribuciones Linux) pueden configurar la red desde el entorno de texto escribiendo "setup", el resto de las distribuciones necesitan instalar algún paquete adicional como:

  • system-config-network-tui (para el entonor de texto)
  • system-config-network (para el entorno gráfico)

Todas las distribuciones pueden configurarlo desde el entorno gráfico, ya sea con KDE o con GNOME, en este caso, utilizaremos KDE.

La mayoría de las distribuciones Linux tienen bajo el directorio de configuración /etc/sysconfig/ las principales configuraciones del sistema, entre las que se encuentran las conexiones de red en el directorio networking

Así, y a modo de ejemplo, si desde el directorio /etc/sysconfig/ ejecutamos el comando "tree networking" obtendremos por ejemplo:

networking/
├── devices
│        ├── ifcfg-p5p1
│        ├── ifcfg-tap0
│        ├── ifcfg-WLAN_CE
│        └── keys-WLAN_CE
└── profiles
          └── default
                    ├── hosts
                    ├── ifcfg-p5p1
                    ├── ifcfg-tap0
                    ├── ifcfg-WLAN_CE
                    └── resolv.conf


La conexión Wifi se llama "WLAN_CE" y su archivo de configuración contendrá:

[javier@localhost devices]$ cat ifcfg-WLAN_CE

ESSID=WLAN_CE
MODE=Managed
TYPE=Wireless
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=WLAN_CE
UUID=e12b545d-4fe2-4372-a741-acb245058568
ONBOOT=yes
SECURITYMODE=open
DEFAULTKEY=1
PEERDNS=yes
PEERROUTES=yes
USERCTL=no

[javier@localhost devices]$


Destacaremos de la configuración, que la red se llama WLAN_CE, es del tipo "Wireless", es decir, wifi (inalámbrica) que la IP se la dará el router y está configurado por DHCP, y que se activa en el inicio.

El fichero keys-WLAN_CE, contendrá la clave de acceso a la red wifi.

Si necesitas realizar alguna configuración adicional también la podrás realizarla desde la misma barra de herramientas, como en el ejemplo anterior, pulsa con el botón derecho del ratón y selecciona "Preferencias de Gestión de Red"




Después, simplemente de seleccionar nuestra red inalámbrica, tendrá que escribir la contraseña Wifi de su router, que generalmente aparece en la parte inferior del mismo.

 


La configuración, si lo anterior, tal vez no fue bien.

Para ver la lista de dispositivos que hay en el pc instalados, fueran estos PCI o compatibles (portatiles), hay que poner desde la línea de comandos "dmesg", si escribiendo el comando lspci no aparece y saldrá la lista de dispositivos disponibles.

Lee con atención, no tienen por qué darse estos casos, el artículo tiene muchos supuestos.
...

ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.2.2kmprq
ipw2200: Copyright(c) 2003-2006 Intel Corporation
ACPI: PCI Interrupt 0000:06:05.0[A] -> GSI 20 (level, low) -> IRQ 18
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
8139too Fast Ethernet driver 0.9.28
ipw2200: Detected geography ZZR (14 802.11bg channels, 0 802.11a channels)
ACPI: PCI Interrupt 0000:06:07.0[A] -> GSI 20 (level, low) -> IRQ 18
....

Si lo está, podríamos escribir el comando "lsmod | sort", y comprobaremos que el módulo está cargado en memoria...
¿Lo está? Fantástico, comprobamos que será cargado al inicio del sistema...

A modo de ejemplo escribo primero lspci
[root@localhost site]# lspci

00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5)
00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5)
00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5)
00:1d.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM65 Express Chipset Family LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
02:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
03:00.0 USB Controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller
04:00.0 Ethernet controller: Atheros Communications AR8151 v2.0 Gigabit Ethernet (rev c0)

[root@localhost site]#

Comprobando que el sistema reconoce la tarjeta, luego escribo lsmod, para comprobar si está cargado el módulo (su reconocimiento puede llevar un rato, tendrás ue usar tu lógica)

Entre la larga lista, reconozco esto...
...

atl1c 45920 0 
soundcore 14492 1 snd
cfg80211 197072 3 ath,ath9k,mac80211
asus_nb_wmi 12855 0
asus_wmi 24057 1 asus_nb_wmi
sparse_keymap 13527 1 asus_wmi
rfkill 21385 5 cfg80211,bluetooth,asus_wmi
...

Y compruebo que es lo que quiero usando modinfo:

[root@localhost site]# modinfo cfg80211
filename: /lib/modules/3.6.10-2.fc17.x86_64/kernel/net/wireless/cfg80211.ko
description: wireless configuration support
license: GPL
author: Johannes Berg
depends: rfkill
intree: Y
vermagic: 3.6.10-2.fc17.x86_64 SMP mod_unload
parm: ieee80211_regdom:IEEE 802.11 regulatory domain code (charp)
parm: cfg80211_disable_40mhz_24ghz:Disable 40MHz support in the 2.4GHz band (bool)
[root@localhost site]#

(En las versiones 2.X del kernel del sistema... en un fichero que se encarga de cargar los módulos, bien se pueda llamar: conf.modules, modules.conf, o modprobe.conf, conteniendo:)

+-------------------------
|(En las versiones 2.X del kernel de Linux)

|[root@localhost sbin]# cat /etc/modprobe.d/dist.conf

|
|(Si tuviera un Linux reciente sobre un equipo "muy" viejo O sabe que tiene pinchadas tarjetas ALSA.:
|
|[root@localhost sbin]# cat /etc/modprobe.d/dist-alsa.conf
+-------------------------

+-------------------------
|(Si tiene una versión del kernel algo más antigua:)
|[root@localhost sbin]# cat /etc/modprobe.conf| alias eth0 8139too | alias scsi_hostadapter ata_piix | alias eth1 ipw2200 | alias snd-card-0 snd-intel8x0 | options snd-card-0 index=0 | options snd-intel8x0 index=0|[root@localhost sbin]#
+-------------------------
Donde observamos (en el ejemplo que vamos a seguir) que ipw2200, es el módulo de la red inalámbrica, y el dispositivo que se utilizará será eth1.

Durante todo el ejemplo se utilizará indiscriminadamente eth0, eth1, wlan0, wlan1, pero siempre hará referencia a éste eth1. También se hablará de módulos ipw2200 o ipw2100, da igual, sólo es un ejemplo, usted deberá saber que módulo debe elegir

Generalmente el módulo necesario para funcionar la red wifi lo traerá un kernel medianammente reciente (o, trata de descargarte el núcleo más reciente o algún núcleo que todavía se encuentre en fase de desarrollo, que será un 2.7 o un 2.9...) traen la mayoría de los módulos necesarios para funcionar, deberá verlos en /usr/src/linux (o similar)

IMPORTANTE, DEBE SEGUIR ESTAS INSTRUCCIONES DESDE EL MODO CONSOLA MODO TEXTO:
Y ENTRAR COMO ROOT. PARA REGRESAR A LINUX DEBERÁ PULSAR [CTRL]+[ALT]+[F7] o [F1]
Y PARA IR AHORA AL MODO CONSOLA: [CTRL]+[ALT]+[F2]... RECUERDE:
PARA REGRESAR AL MODO
GRÁFICO DEBERÁ PULSAR [CTRL]+[ALT]+[F7] o [F1]


Escribe iwconfig, a ver si el dispositivo está funcionando (ejemplo)

[javier@localhost ~]$ iwconfig

lo no wireless extensions.

virbr0-nic no wireless extensions.

virbr0 no wireless extensions.

p5p1 no wireless extensions.

eth1 IEEE 802.11bgn ESSID:...
Mode:Managed Frequency:2.452 GHz Access Point: AA:01:83:58:E7:FD
Bit Rate=54 Mb/s Tx-Power=15 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on
Link Quality=63/70 Signal level=-47 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:2 Invalid misc:488 Missed beacon:0

[javier@localhost ~]$


Ahora, escribes: iwlist eth1 scan

[root@localhost ~]# iwlist eth1 scan
eth1 Scan completed :
Cell 01 - Address: AA:01:83:58:E7:FD
ESSID:"NombreRedInalámbrica"
Protocol:IEEE 802.11bg
Mode:Master
Frequency:2.427 GHz (Channel 4)
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Quality=97/100 Signal level=-27 dBm
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
Extra: Last beacon: 191ms ago
(te salen cosas?....) Estupendo, ya puedes ir saltándote trozos de este artículo)

Salta al PASO 4


Si no es así, puedes descargarte la última versión del kernel (PASO 1) desde: http://www.kernel.org/, luego simplemente tendrás que configurarlo como indica el Tutorial de Linux.

Si optas por parchear el kernel, ve al PASO 3

2.4 desaparece por falta de tiempo en el mantenimiento (eso dicen). Ésta puede ser la excusa que necesitabas para pasarte definitivamente a esta joya tecnológica que es el núcleo 2.6.x. Necesitaremos configurar algunas opciones para sacarle partido a la tarjeta, además de que sin las fuentes (o al menos sin las cabeceras) no podemos compilar el driver. La última versión del núcleo de Linux está siempre disponible en ftp.kernel.org; en nuestro caso utilizaremos la URL

Si te bajas el kernel nuevo, podrías olvidarte de todos estos pasos.

Excepto muy probablemente el de actualizar el firmware apropiado:

PASO 1, BAJARSE EL KERNEL
{
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/
Las fuentes del driver ipw2100. Tendremos que compilarlo e instalarlo para que el núcleo pueda comunicarse con la tarjeta inalámbrica. Podemos obtener siempre la versión más reciente de

http://ipw2100.sourceforge.net/downloads.php
El firmware de la tarjeta. Es requerido por el driver para funcionar y es cargado en la tarjeta durante el arranque por los scripts de hotplug. La imagen binaria y propietaria de este firmware la obtenemos de


http://ipw2100.sourceforge.net/firmware.php
Aseguraos de descargar la versión correcta para la versión del driver que escojáis.

Para saber si el firmware correcto está funcionando, desde la línea de comandos (o una terminal gráfica) escribes dmesg, y saldrán información sobre la carga del sistema, para retroceder páginas atrás, pulsas Mayúsculas+Retroso de Página, y saldrá que tu controlador Wireless es tal o cual y el firmware es o no reconocido.

Para cargar el firmware (una vez descargado). Descomprimimos el fichero con las imágenes binarias y colocamos los ficheros *.fw en el directorio donde hotplug va a buscarlos, que es /usr/lib/hotplug/firmware, (o en otro sitio, según la distribución) creándolo si es necesario. El sistema de ficheros sysfs debe estar montado y por supuesto, hotplug debe estar instalado.

 

***********

El paquete wireless-tools. Nos proporcionará herramientas para configurar parámetros de la red wifi tales como el nombre de red o essid, el modo de funcionamiento de la tarjeta, la clave WEP, etc. Para obtener este paquete ojea primero los discos de tu distribución por si ya lo tuvieras, en caso contrario puedes acudir a la web de rpmfind y buscar allí el paquete con los binarios para tu distribución. Si usas Debian ya sabrás utilizar apt-get (wireless-tools está para stable, testing y unstable) y si usas Gentoo pues adivina... De todas formas siempre puedes acudir a la web del autor de las wireless-tools Jean Tourrilhes:

http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
y obtener allí el código fuente. Sigue los pasos indicados en el fichero INSTALL para la instalación.
El paquete hotplug. Son una serie de scripts que permiten conectar un dispositivo y tenerlo funcionando al instante, cargando los módulos necesarios. Muchos de vosotros tal vez lo conozcáis ya si habéis tenido que configurar el pendrive, pues los módulos ehci, uhci, ohci, etc. son cargados por hotplug. Nosotros lo utilizaremos para cargar el firmware de la tarjeta. Para obtener hotplug aplica el mismo algoritmo que en el punto anterior con las wireless-tools. De todas formas hotplug es un paquete bastante común y es frecuente encontrarse con él ya instalado. Para averiguarlo sólo tienes que hacer `ls /sbin/hotplug`. La web de hotplug la tenéis en
}
http://linux-hotplug.sourceforge.net

PASO 2: Instalar la tarjeta inalámbrica



En este apartado veremos todos los pasos a seguir para que nuestro sistema GNU/Linux reconozca la tarjeta de red inalámbrica de nuestra máquina Centrino. Tras finalizar el recorrido por todos ellos seremos capaces de cargar el driver y conocer todas las redes que nuestra tarjeta es capaz de rastrear. Puesto que vamos a hacer labores de administración del sistema no hace falta decir que en todo momento debemos estar actuando como superusuario. Configurando el núcleo.

Como ya hemos dicho usaremos un núcleo de la serie 2.6.

A continuación se listan las opciones a marcar en la etapa de configuración del núcleo (make config/menuconfig/gconfig) junto con la explicación de cada una de ellas.

CONFIG_MODULES

Loadable module support ->
[*] Enable loadable module support

Vamos a construir el driver como módulo, no dentro de un núcleo monolítico, así que necesitaremos el soporte para módulos.

CONFIG_KMOD

Loadable module support ->
[*] Automatic kernel module loading

Si seleccionamos esta opción algunas partes del núcleo podrán cargar módulos automáticamente sin necesidad de que se lo indiquemos nosotros en línea de comandos con modprobe.

CONFIG_HOTPLUG

General Setup ->
[*] Support for hot-pluggable devices

Si quieres "enchufar" dispositivos y tenerlos funcionando al instante, ya sea una tarjeta PCMCIA, un pendrive o un ratón USB, marca esta opción junto a la anterior. Para sacarle partido necesitarás también el paquete hotplug.

CONFIG_FW_LOADER

Device Drivers ->
Generic Driver Options ->
[*] Hotplug firmware loading support

Esta opción es necesaria cuando vamos a tener módulos externos al núcleo que necesitan cargar algún firmware para funcionar, como es el caso del driver ipw2100.

CONFIG_NET_RADIO

Device Drivers ->
Networking Support ->
Wireless LAN (non-hamradio) ->
[*] Wireless LAN drivers & Wireless Extensions

Habilita las Wireless Extensions, que son la interfaz que utiliza las wireless-tools, que recordemos nos permiten ajustar parámetros de la red inalámbrica.

CONFIG_CRYPTO, CONFIG_CRYPTO_ARC4, CONFIG_CRC32

Cryptographic options ->
[*] Cryptographic API ->
[*] ARC4 cipher algorithm
[*] CRC32


A partir de la versión 0.47, el driver ipw2100 utiliza los algoritmos de cifrado WEP proporcionados por el núcleo. Habilitando estas opciones tendremos disponible el cifrado WEP en nuestras comunicaciones con el driver ipw2100. No son necesarias para conectar con Icarum aunque sí podrían interesarte para montar alguna red pequeña en casa.

Una vez salvada la configuración compilamos el núcleo con nuestro conjuro favorito y lo instalamos, sin olvidar que no debemos borrar las fuentes porque las necesitaremos más tarde. Cómo construir un núcleo Linux

PASO 3: PARCHEAR EL KERNEL.
Construir el módulo

Sólo tendríamos que hacer esto, si no nos hubiéramos descargado todo el kernel (PASO 1) entonces haríamos:

{
Esta parte es más sencilla. Desempaquetamos el fichero que contiene el código fuente del driver con la siguiente secuencia de comandos:

# cp ipw2100-x.xx.tgz /usr/src/
# cd /usr/src
# tar xvzf ipw2100-x.xx.tgz
# cd ipw2100-x.xx
La instalación es tan sencilla como


# make
# make install
No olvides tener el código fuente del núcleo que acabas de compilar bajo /usr/src. No es necesario que exista un enlace 'linux' al directorio de tus fuentes pero sí que estés ejecutando ese núcleo porque el fichero Makefile usará la ruta /usr/src/linux-`uname -r` para acceder a ellas. Si acabas de compilarlo y no lo has instalado aún da igual, no reinices, sólo tienes que añadir al primer make lo siguiente:

KSRC=/ruta/al/directorio/con/las/fuentes
Si la instalación fue bien ahora tendremos un directorio en /lib/modules/`uname -r`/kernel/drivers/net/wireless llamado ipw2100 con los módulos construidos. Podéis obtener información de cada uno de ellos con la herramienta modinfo, por ejemplo:

}

Comprobamos que nuestro módulo (el driver) está y se puede cargar.

/sbin/modinfo ipw2100


Como nota interesante decir que cuando cargues el módulo más tarde (ahora no podrías) con modprobe la interfaz de red tendrá el nombre eth%d, donde 'd' es un número de interfaz libre (ya lo dijimos antes, bien sería eth0, eth1, wlan0...). Probablemente preferirás un nombre más acorde con el tipo de interfaz, digamos wlan%d. Hay dos formas para hacer ésto: o bien pasas esta información como parámetro al cargar el módulo:

modprobe ipw2100 if_name=wlan%d

o modificas el fichero fuente ipw2100.c tecleando esta línea en el directorio donde has descomprimido los fuentes del módulo:

Desde la línea de comandos indicamos al comando al comando "sed" que la cadena "eth%d/wlan%d" la modifique al fichero ipw2100.c y la nueva corrección quede en ipw2100.c.bueno, el siguiente comando renombre el fichero de salida al fichero ipw2100.c (Este cambio, en principio no está recomendado)

*********************************

sed s/eth%d/wlan%d/g ipw2100.c > ipw2100.c.bueno

mv ipw2100.c.bueno ipw2100.c
*********************************

De esta última manera vuelves a compilar y listo, cada vez que se cargue el módulo tu interfaz tendrá el nombre por defecto wlan0 (es poco probable que tengas más interfaces inalámbricos). El problema del primer método es que como verás a continuación, el módulo ipw2100 será cargado por hotplug automáticamente mediante una serie de scripts y resulta un tanto difícil meter mano a esos scripts. Así que el segundo método parece más razonable; pero no olvides volver a compilar e instalar tras el cambio.
Cargar el firmware

Para que el driver funcione es necesario que el firmware que hemos obtenido de la web de ipw2100 esté cargado en la tarjeta. Ya comentamos que este era un trabajo para hotplug, así que tenemos que tenerlo instalado en nuestro sistema. Si ya lo tenemos instalado en nuestra distribución debemos comprobar que existe el fichero /etc/hotplug/firmware.agent, de lo contrario deberíamos actualizar el paquete a una versión más reciente.

Pues bien, para que hotplug cargue el firmware de nuestra tarjeta en el arranque tenemos que poner las imágenes binarias de éste en un lugar donde hotplug pueda encontrarlas. Para ello descomprimimos el tarball con el firmware y copiamos todos los ficheros *.fw a /usr/lib/hotplug/firmware. Si tal directorio no existe lo creamos. Un último apunte para el firmware: debemos tener montado el sistema de ficheros virtual sysfs. Si el comando

mount | grep sysfs

no nos devuelve ningún resultado, deberemos montarlo nosotros mismos. Ésto es fácil, simplemente añade la siguiente línea al fichero /etc/fstab


none /sys sysfs defaults 0 0

Además, si observas esa línea verás que es necesario que exista el directorio sys en el directorio raíz, así que si no existe lo creamos. Por último hacemos

mount -a

y volvemos a lanzar el primer comando para comprobar que efectivamente ya tenemos sysfs en nuestro sistema. A partir de este momento el sistema de ficheros sysfs se montará automáticamente en cada arranque.

Probar el funcionamiento

Llega un momento crítico, si todo ha salido bien es la hora de probar si la tarjeta funciona como es debido. Después de haber instalado todo lo anterior reiniciamos la máquina para que hotplug cargue el firmware. Además, como la tarjeta wifi está enganchada al bus PCI y hotplug también gestiona estos dispositivos, el driver ipw2100 también será cargado junto al firmware, con lo que nos ahorramos cargarlo nosotros a mano con modprobe. Bueno vale, como no estamos en Windows que hasta para instalar un programa hay que reiniciar, podemos ahorrarnos ese engorroso paso volviendo a arrancar el servicio hotplug de esta manera

/etc/init.d/hotplug stop
/etc/init.d/hotplug start

(Esto depende de la distribución, no siempre se tiene este comando, y tampoco es necesario)

Debes comprobar por la salida que el módulo ipw2100 ha sido cargado. También echa un ojo a los últimos mensajes registrados por el núcleo con

dmesg

Al menos deberías poder ver estas dos líneas

ipw2100: 0000:02:07.0: Detected at mem: 0xE0200000-0xE0200FFF -> d055f000, irq: 5
eth0: Using hotplug firmware load.

PASO 4, KERNEL LISTO PARA FUNCIONAR!

PASO 4

El 50% ya está configurado.

La salida puede variar en la primera línea puesto que la configuración hardware de tu tarjeta puede ser diferente. Si hubiera algún error en la carga del módulo (firmware no encontrado, problemas con ACPI) lo podríamos averiguar con dmesg. Si has seguido todos los pasos como se indican es raro que encuentres algún error salvo por algunas opciones de configuración de tu núcleo que entren en conflicto con el módulo ipw2100. Si el error persiste echa un ojo a la sección de noticias de la web de ipw2100.

La manera definitiva de probar nuestra tarjeta será mediante el uso de las wireless-tools, que introducimos en la siguiente sección. Wireless-tools

El paquete wireless-tools es un conjunto de herramientas que utilizan el API de las Wireless Extensions proporcionado por el núcleo para ajustar parámetros específicos de las redes inalámbricas y obtener algunas estadísticas.

El conjunto completo de aplicaciones que vienen con este paquete son:

iwconfig
iwevent
iwgetid
iwlist
iwpriv
iwspy

Para una descripción detallada de cada una de las órdenes podéis utilizar las páginas de manual. Nosotros solamente vamos a utilizar para nuestros propósitos iwconfig e iwlist.

Podríamos decir que iwconfig es el equivalente a ifconfig para redes IP. La sintaxis general de este comando es

iwconfig interfaz acción parámetro

Por ejemplo

  1. ifconfig
  2. iwconfig eth1 essid "NombreLaRed"
  3. iwconfig eth1 key s:ClaveRedEnCadena
  4. ifconfig eth1 up
  5. dhclient eth1
  6. O también ifup eth1
    Puede ser que algunas distribuciones utilicen "pump", entonces
  7. Y para que se nos asignara IP pump -i Wireless
  8. Y en principio ya estaríamos navegando.

Viendo el ejemplo:

[root@localhost init.d]# iwconfig
lo no wireless extensions.

eth1 unassociated ESSID:off/any
Mode:Ad-Hoc Frequency=2.427 GHz Cell: Not-Associated
Bit Rate:0 kb/s Tx-Power=20 dBm Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

eth0 no wireless extensions.

sit0 no wireless extensions.

[root@localhost init.d]# iwconfig eth1 essid Wakitaki_Wire
[root@localhost init.d]# iwconfig eth1 key s:clavedered
[root@localhost init.d]# iwconfig
lo no wireless extensions.

eth1 IEEE 802.11g ESSID:"Wakitaki_Wire"
Mode:Ad-Hoc Frequency:2.427 GHz Cell: BB:16:A6:F6:F9:9F
Bit Rate:54 Mb/s Tx-Power=20 dBm Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:4D65-6C6E-2C33-3030-3030-762C-6D Security mode:restricted
Power Management:off
Link Quality=67/100 Signal level=-60 dBm Noise level=-85 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

eth0 no wireless extensions.

sit0 no wireless extensions.

[root@localhost init.d]# dhclient eth1

Para comprobar que has asignado ip haces un ping a www.google.com
[root@localhost init.d]# ping google.com
Si no consigues asignarle una dirección IP de forma automática, prueba a asignarle una manual:
ifconfig eth0 xxx.xxx.xxx.xxx netmask 255.255.255.xxx up
Lo típico:

ifconfig eth1 192.168.1.99 netmask 255.255.255.0 up

Procura realizar la configuración de la asignación de la IP con algún programa, estilo "setup", para eth1 (siendo ésta la red wifi, ya que eth0, será la red de cable)


Veamos algunos de las opciones que nos ofrece: iwconfig eth0 essid nombreRed De esta manera asociamos nuestra interfaz eth0 con una red virtual formada por un conjunto de puntos de acceso identificados por el essid o nombre de red. Si el nombre de red proporcionado es la cadena vacía, esto es, la cadena "", la interfaz se asociará con el mejor punto de acceso disponible, con el cual tengamos una señal más fuerte. Después de ejecutar la orden tendremos acceso a la LAN que hay detrás del punto de acceso con el que se nos asigne.

iwconfig eth0 mode {adhoc,managed,master,monitor} Un adaptador inalámbrico puede trabajar en varios modos que determinan la forma en que se comunica con los demás equipos de la red. Un punto de acceso trabaja en modo master y nosotros utilizaremos el modo managed para contactar con ese punto de acceso.

El modo ad-hoc se utiliza cuando queremos establecer comunicación con otro equipo directamente sin necesidad de un punto de acceso intermedio. iwconfig eth0 key "s:clave" Para proteger nuestras comunicaciones las cifraremos mediante el protocolo WEP definido en el estándar 802.11 asignando una clave con este comando. Para la clave usaremos cinco caracteres para cifrado de 40 bits y 13 caracteres para cifrado de 104 bits. No es necesaria clave WEP para acceder a la red de la Universidad de Murcia por motivos que veremos más adelante. iwconfig eth0 Muestra información sobre el enlace. Podemos ver el nombre de red (ESSID), el modo en el que está nuestra tarjeta, el punto de acceso que estamos utilizando y algunas cosas más. Uno de los valores interesantes es la calidad del enlace que nos da una idea de la calidad del servicio que puede ofrecernos el punto de acceso. Si la tarjeta no es inalámbrica o si el módulo no se cargó correctamente, al invocar esta orden veremos el siguiente mensaje:

eth0 no wireless extensions.

Por defecto nuestra tarjeta detectará el punto de acceso más "cercano" y se asociará con él. De todas maneras podemos ver qué redes hay disponibles ahí fuera con iwlist. Este comando tiene más posibilidades pero a nosotros sólo nos interesa ésta. Así, tecleamos

iwlist eth0 scan

y obtenemos una lista de todos los puntos de acceso y equipos en modo ad-hoc detectados por el interfaz. Entre la información reportada vemos el essid, así que si queremos conectarnos con un punto de acceso en particular usaremos el valor de essid dado por iwlist con iwconfig
Resumiendo

Vamos a ver los pasos que hemos seguido hasta tener instalada la tarjeta inalámbrica Intel PRO/Wireless 2100 en nuestro sistema GNU/Linux:
Obtener todo el software necesario.

Configurar, compilar e instalar el núcleo Linux de la serie 2.6 con las opciones necesarias para que funcionen todos los demás pasos restantes.

Compilar e instalar el driver ipw2100. Lo desempaquetamos en un directorio cualquiera (no es necesario que sea /usr/src) y lo instalamos como cualquier código fuente, recordando que los fuentes del núcleo recién instalado deben estar todavía presentes bajo /usr/src.

Cargar el firmware. Descomprimimos el fichero con las imágenes binarias y colocamos los ficheros *.fw en el directorio donde hotplug va a buscarlos, que es /usr/lib/hotplug/firmware, creándolo si es necesario. El sistema de ficheros sysfs debe estar montado y por supuesto, hotplug debe estar instalado.
Probar la tarjeta. Para ello volvemos a arrancar el servicio hotplug, que nos cargará el módulo de la tarjeta y el firmware. Finalmente instalamos las wireless-tools y confirmamos que nuestra tarjeta se instaló con éxito probando algunas de sus opciones.


2.- Configuración de la tarjeta de red inalámbrica
Antes de nada, el driver/módulo de tu adaptador de red inalámbrico debe estar cargado. Ya sea un adaptador PCI, PCMCIA o USB ésto está solucionado si lo instalamos correctamente y usamos hotplug. Si tu interfaz se llama wlan0 comprueba que


iwconfig wlan0

te da una salida apropiada. El comando iwconfig lo encontramos en el paquete wireless-tools.
Si tu interfaz de red wifi es válida, con el comando anterior podrás ver además el punto de acceso que tiene asociado.
Para comprobar si tu tarjeta ya está asociada con un punto de acceso simplemente ejecuta iwconfig con tu interfaz wifi. En el campo ESSID deberás ver el nombre icarum y en el campo Access Point un valor distinto de cero. Si no es así no te preocupes, simplemente tendremos que especificar el punto de acceso a mano con

iwconfig wlan0 essid icarum

Si después de ésto haces iwconfig de nuevo y ves que el campo Access Point es cero o que el campo Link Quality tiene un valor bajo, digamos por debajo de 40/100, tendrás que desplazaros a otra zona con mejor cobertura. Para ver los mapas con las zonas que disponen de servicio echa un ojo a

http://www.um.es/atica/icarum/cobertura Volver al inicio del documento

3.- Configuración del PC para usar DHCP

Para que nuestro equipo tenga acceso a la red de la Universidad de Murcia y podamos usar servicios como Webmail o SUMA nuestra interfaz debe tener una dirección IP asignada, puesto que si sólo estamos "enganchados" a un punto de acceso estamos comunicados nada más que a nivel de enlace.
La manera que te ofrece la red de la Universidad de Murcia de configurar a nivel IP tu interfaz es mediante el protocolo DHCP (Dynamic Host Configuration Protocol), gracias al cual no tendrás que tocar ningún fichero de configuración ni teclear absolutamente nada. Mediante este protocolo estándar de las redes IP tu máquina simplemente solicita una configuración IP para una interfaz y un servidor de DHCP disponible le contesta con la información solicitada. El cliente de DHCP es el programa encargado de solicitar dicha información mediante mensajes broadcast o de difusión, esperando una respuesta de algún servidor DHCP que escuche la petición. Clientes de DHCP hay varios, nosotros usaremos pump que se encuentra disponible en muchas distribuciones y es bastante fácil de usar.


Una vez tengas instalado el cliente de DHCP (en nuestro caso será pump), usa

  1. ifconfig wlan0 up
  2. dhclient wlan0
  3. o también ifup wlan0

O también, pump -i wlan0 y automágicamente ya tienes acceso al web de la Universidad de Murcia www.um.es, de donde puedes descargar el cliente de Redes Privadas Virtuales para completar tu configuración. ç

Linux-Party, ha modificado parte de este HOWTO configurar a la red inalámbrica, adaptándolo, y acelerando las conclusiones.

Recuerda que también hay aplicacione gráficas que te harán más fácil la instalación:


Otros artículos que le pudieran ser de interés:

Comentarios   

0 # Eggun 07-11-2007 20:50
Como parte ampliada, quería comentar:

Puedes hacerte un script que te conecte a tu red inalámbrica



---------------------
#!/bin/bash

ifconfig wlan0 tu-ip up
echo "conectando wlan0"
iwconfig wlan0 essid tu-essid nick tu-nick mode Managed channel 6 enc restricted s:tu-password
sleep 2
echo "agregando parametros a wlan0"
iwconfig wlan0 rate 22M txpower on txpower auto txpower 20 power on power all
echo "agrega ruta del gateway"
route add default gw 192.168.1.1 netmask 0.0.0.0 dev wlan0
echo "mostrando ruta"
route
---------------------


lo puedes incluir en /etc/rc.d/rc.local

Saludos.

O editar tu fichero /etc/sysconfig/ network-script/ ifcfg-eth1 y poner:

TYPE=Wireless
BOOTPROTO=dhcp
ESSID=wifipucp
ECURITYMODE=open
CHANNEL=1
MODE=Managed
KEY="s:TuPasswo rd",
# sin embargo en el caso de Fedora y Red Hat o CentOS se emplea
# el archivo adicional : >
/etc/sysconfig /network-script s/keys-wifi0
# (si la tarjeta wifi es reconocida como wifi0)


Se puede intentar una configuración desde la herramienta:

system-config-network-gui o system-config-network-tui

Saludos.
Responder | Responder con una citación | Citar
0 # Eggun 04-04-2008 18:14
Voy a hacer una revisión del artículo, de forma que quede estructurado, saltándose a pasos, como 1, 2, 3..., y la gente no tenga que leer el artículo completo, si por ejemplo, tiene el driver reconocido en el kernel del sistema.
Responder | Responder con una citación | Citar
0 # shinta87 06-11-2012 20:04
hey compa en mi pc de mesa tengo una pci encore rtl 8190 he probado todos los linux y ninguna me la ha hehco funcionar alguna idea?
Responder | Responder con una citación | Citar
0 # LinuxParty 07-11-2012 08:07
Dudo mucho, que con una Fedora 17, no tengas el driver para tu tarjeta gráfica... de todas formas, escribe desde la consola de texto:


lspci

Y así podrás ver el nombre de tu tarjeta Wireless PCI, y compruebas si está soportado en el último kernel, tras bajarte el código fuente y descomprimirlo, accedes al directorio y escribes:

make menuconfig ...........(Par a configurar)

Si lo encuentras...

make ............... .............. (Para compilar)
make modules ................(Par a compilar)
make modules_install .... (Para compilar)
make install ............... .... (Para instalar)
initrd ............... .............. (Para ajustar el grup)



NO OBSTANTE... Si tienes el driver DE WINDOWS, puedes utilizarlo en Linux..


Para más información sobre ello mirate:


******ubuntuforums.org/showthread.php?t=1433401
y también:
***s***www.google.es/search?q=realtek+rtl8190+linux

Para más información sobre ndiswrapper...

[javier@portatil-asus ~]$ yum info ndiswrapper
Complementos cargados:langpa cks, presto, refresh-package kit
Paquetes disponibles
Nombre : ndiswrapper
Arquitectura : i686
Versión : 1.57
Lanzamiento : 1.fc17
Tamaño : 35 k
Repositorio : rpmfusion-free
Descripción: El proyecto ndiswrapper hace que sea posible el uso de WLAN-Hardware
: Con Linux por medio de un módulo del kernel cargable que "envuelve
:. sobre" los drivers NDIS (Network Driver de Windows API). Estos rpms contener
: son sólo el módulo del kernel y el cargador. Usted también necesitará el controlador de Windows
: Para su tarjeta.
:
: ADVERTENCIA: Fedora-Kernels utilizar 4K pila tamaño. Muchos controladores de Windows
: Se necesitan al menos 8K pilas de tamaño. Para más información leer el wiki en:
: ***:/ndiswrapper.sourceforge.net

[javier@portatil-asus ~]$
Responder | Responder con una citación | Citar
0 # Maria concepcion 24-05-2014 03:16
Que hay!! Podría usar una foto de este blog para Puedo usar tus imágenes para mi mi web?
No veo en la red fotografías apropiadas para mi blog
y las tuyas son estupendas. Muchísimas gracias!!
Responder | Responder con una citación | Citar

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Encuesta de LinuxParty

¿Qué valoras más al visitar una Web?

Donar a LinuxParty

La mejor forma de darnos las gracias, es hacer una donación.


¿Quién está online?

Hay 221 invitados y ningún miembro en línea

Tutorial de Linux

Publicidad / Contacto | RSS / Atom | En Twitter | En Facebook

Copyleft LinuxParty © 2013.