Cómo crear una red Ad-Hoc inalámbrica …

19 02 2010

Las redes inalámbricas operan de modo similar a las redes cableadas.  Los modos en que pueden operar son diversos entre los que se destacan Master, Slave, Ad-Hoc y Observer.  El modo Master ó AP ( Access Point ) brinda la posibilidad de poder interconectar varios puntos clientes a través de un enrutador.  El modo Slave brinda la posibilidad a un cliente de asociarse a un punto de red en modo Master para establecer sus comunicaciones.  Este es el modo más utilizado hoy en día para enlazar redes inalámbricas Master-Slave.  El modo Ad-Hoc brinda la posibilidad de un enlace P2P ( punto a punto ) aunque con algunos beneficios sobre el método tradicional cableado.  Por último el modo Observer es un modo de conexión donde no hay transferencia de datos desde el cliente.  Se emplea meramente con fines de prueba y monitoreo donde la estación juega un rol pasivo en las transmisiones.

En este artículo veremos cómo crear enlaces Ad-Hoc entre redes inalámbricas en sistemas GNU/Linux.  Antes de comenzar es necesario verificar si el controlador que utilizamos para nuestro dispositivo de red inalámbrico brinda soporte para este tipo de enlaces.  En ocasiones la versión libre o propietaria que existe hasta el momento no lo brinda, y por tanto no permite realizar este tipo de conexiones.  El mejor sitio que he podido ver es este LinuxWireless.  Pueden consultar el sitio para ver si en su controlador está soportado este modo.

Configuración del servidor

Primero hay que dar de baja a la interfaz de red.  En dependencia del dispositivo que utilicemos habrá que especificar la entrada correcta.

# ifconfig wlan0 down

Ahora procedemos a a la configuración de la interface, pasando a modo ad-hoc el wireless tengan en cuenta que no todas las tarjetas inalámbricas pueden hacer esto, debido a que no todas tienen drivers nativos o completos para linux, para pasarla a modo ad-hoc ejecutamos lo siguiente:

# iwconfig wlan0 mode ad-hoc

Continuamos dándole un nombre a la red que vamos a crear, este nombre es el que se podrá ver al detectar la red ya sea por medio de un #iwlist o algún software para wifi (ejemplo wicd). Para ello ejecutamos el siguiente comando:

# iwconfig wlan0 essid "miRed"

Luego de ello procedemos a configurar el canal y es por medio del cual fluirán los datos. Si existen más redes en el área les recomendaría utilizar un canal que este libre.

# iwconfig wlan0 channel 6

Seguridad en la red por medio de contraseña, este paso es opcional esto dependerá de en donde vivan o los datos que manejen en la red, para ello ejecutamos el siguiente comando:

# iwconfig wlan0 key "0123456789"

Para ejecutar las instrucciones anteriores con un solo comando:

# iwconfig wlan0 mode ad-hoc essid "servidorx" channel 7 key "0123456789"

Ahora le damos una dirección ip al servidor, esto servirá para que el cliente pueda encontrar al servidor dentro de la red y viceversa, no asignaremos mascar de sub-red, dejaremos que el sistema se encargue de ello, asi que solo ejecutamos el siguiente comando:

# ifconfig wlan0 192.162.0.1

Ahora procedemos a habilitar el redireccionamiento. Ejecutamos el siguiente comando:

# echo 1 > /proc/sys/net/ipv4/ip_forward

Por último configuramos un cortafuegos ( firewall ) para redireccionar los paquetes desde una interfaz a otra. En este caso usaremos iptables que permitirá compartir la conectividad principal al cliente. Para ello ejecutamos:

# iptables -t nat -A POSTROUTING -s 192.162.0.0/24 -j MASQUERADE

Configuración del Cliente

Para configurar el cliente es de la misma manera que el servidor sólo que con algunos parámetros invertidos.  En este caso de ejemplo usaremos otra interfaz de red para que el usuario no se pierda en la explicación.  En este caso usaremos una tarjeta de red Atheros ( ath0 ).

# ifconfig ath0 down
# iwconfig ath0 mode ad-hoc essid "miRed" channel 6 key "0123456789"

Pasaremos a configurar ahora el ip de la máquina cliente. Recuerden que el servidor tenía el 192.168.0.1. Pondremos otra dirección:

# ifconfig ath0 192.162.0.2

Ahora procedemos a enrutar el servidor con el cliente, eso lo hacemos con el siguiente comando, en donde la ip que escribimos tiene que ser la del servidor:

# route add default gw 192.162.0.1

Clientes Visuales

Además del modo de configuración a nivel de línea de comandos, existen vías para configurar los enlaces utilizando clientes con interfaces visuales. De los más cómodos que existen podemos encontrar el NetworkManager y el Wicd-client.

Referencias

Compartir internet por medio de wifi sin router inalámbrico

Gracias a Lázaro Abreu Reche por sugerirme el artículo

Advertisements




Red inalámbrica Intel 3945 y 4965 …

3 09 2008

El proyecto que antes soportaba a este modelo de tarjetas era el ipw3945. Actualmente ya está descontinuado y le sucede el proyecto iwl3945 mantenido por el grupo de desarrollo de intel. Actualmente brindan soporte para las iw3945 e iw4965. Para configurar esta tarjeta seguiremos una filosofía similar a otras tarjetas de red inalámbricas que existen. Configuraremos un módulo que controlará el dispositivo e instalaremos un archivo que contendrá una firma del fabricante ( firmware ) para su uso.

Núcleo 2.6.24

El módulo ya viene como parte del núcleo 2.6.24. Si desea puede optar por esta variante lo que le ahorrará tener que compilar el módulo directamente y aprovechará muchas de las funcionalidades que trae esta versión del núcleo. Simplemente active los siguientes símbolos a la hora de compilar para habilitar la 3945:

CONFIG_IWL3945
CONFIG_MAC80211
CONFIG_WLAN_80211

Módulo iwl3945

Otra vía para instalar el módulo de la inalámbrica es bajándonos el código fuente del fabricante y compilándolo. Lo podemos encontrar en el sitio del proyecto así como una guía de construcción e instalación. Noten que debemos en este caso construir el subsistema Mac802111 que también viene en el sitio.

Una vez que habilitemos el módulo por alguna de las 2 vías necesitaremos instalar la firma del fabricante en una ubicación específica en el sistema. Aunque varía entre distribuciones una ubicación estándar para instalarla puede ser en /lib/firmware o en /lib/. Bajaremos de aquí el archivo firmware-iw3945. Descompactemos la carpeta y ubiquemos el fichero en la ubicación del firmware. Luego:

# modprobe -r iwl3945
# modprobe iwl3945

Para comprobar si cargó sin problemas haremos:

# iwconfig
lo        no wireless extensions.
eth1      no wireless extensions.
wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:xxxxxx
Mode:Managed  Frequency:2.452 GHz  Access Point: 00:16:01:59:DA:2A
Bit Rate=18 Mb/s   Tx-Power=27 dBm
Retry min limit:7   RTS thr:off   Fragment thr=2346 B
Encryption key:off
Link Quality=92/100  Signal level=-39 dBm  Noise level=-63 dBm
Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Tendremos entonces un dispositivo llamado wlan0 para nuestra inalámbrica. En caso de que no muestre información sobre un dispositivo debemos revisar los registros del sistema ( dmesg, o /var/log/syslog ) y ver si se presenta alguna anomalía con el firmware.