La Raspberry Pi se puede conectar a una red Wi-Fi utilizando un dongle USB, pero utilizando el mismo dispositivo de también se podemos convertir Raspberry Pi en un punto de acceso inalámbrico. Una vez configurado correctamente, esto va a permitir que otros dispositivos inalámbricos se conecten a tu Pi y opcionalmente puede en rutar todo el tráfico a través del puerto Ethernet y en el Internet (a través del router de su ISP).

Configure el adaptador inalámbrico con una dirección IP estática

Instalar y configurar un servidor DHCP

Instalar y configurar el daemon de punto de acceso

Configurar el en rutamiento IP entre la red inalámbrica y Ethernet

Configure el adaptador inalámbrico con una dirección IP estática

Editamos el archivo “/etc/network/interfaces” para asignar una ip estatica al dispositivo Wlan0

Ahora reiniciamos

Instalar y configurar un servidor DHCP

Ignorar los errores ya que el servidor DHCP no esta configurado. Ahora editamos el archivo de configuración:

Añadir # delante de las opciones del parametro “option domain-name”

Quitar # delante de la opcion “authoritative;”

Al final del archivo añadir lo siguinte:

Hacer que el adaptador inalámbrico se por defecto para la solicitud de DHCP:

Cambiar «INTERFACES=»»” por “INTERFACES=»wlan0″

Reiniciar servicio

Instalar y configurar el daemon de Punto de Acceso

Aqui seguro que tendremos un problema, si instalamos hostapd directamente de los repositorios, por defecto se instala con el controlado generico de wifi puede ser que tengamos suerte y funcione, pero si temos otro controlador de wifi diferente entonce este metodo no funcionara tendremos que crear y compilar nuestro propio hostapd opcion B.

Opción A

Editamos el archivo de configuración hostapd y crear una red inalámbrica:

Esta configuracion es una de las mas estendidas de la red, podemos ver que el nombre del wifi sera MiAcceso estara en el canal 6 con una seguridad wpa y una contraseña raspberry, tambien vemos que el driver wifi ws n180211 y que hay otro desactivado.

Aqui es el punto que si no sabemos que controlador usa tiene nuestra usb wifi hay que usar la opcion B

Ahora hay que decirle al deamon hostapd donde esta el archivo de configuracion de la red.

Quitamos # delante de “DAEMON_CONF” y añadimos la direcion del archivo anterior

Opción B

En mi caso quiero quiero realizar un punto de acceso con Realtek RTL8188, por lo tanto el hostapd esta mal configurado, y lo podemos comprobar:

Vemos que el controlador generico falla, asi que la mejor solucion es crear un hostapd especifico para nuestro dispositivo.

Primero desintalaremos hostapd

Descargamos el paque para crear nuestro hostapd y descompromimos.

Esto tardara un ratito cuando finalice hay que intalar el nuevo hostapd

Esto ultimo mueve y crea hostapd binary en /usr/local/bin, y inicia script y crear un archivo de configuración en /etc/hostapd/hostapd.conf.

Leer este archivo porque aqui esta la configuracion del punto de acceso y la contraseña de este.

Reseteamos el servicio y comprobamos que ya funciona

Funcionamiento hostapd

Para saber las ip que tienen activas el servidor podemos utilizar:

Para iniciar el cliente hostapd

-d: para mostrar el modo debug

-dd: muestra mas información

Iniciar el servicio

Para iniciar el servicio por «daemon in the background» el log esta en /var/log/syslog

Para que el servivio hostapd se inicie automaticamente tenemos que editar el script de inicio, tenemos que añadir la direccion del archivo de configuracion.

Configurar el enrutamiento IP entre la red inalámbrica y Ethernet

Este punto es importante crearemos las tablas de enrutamiento y la configuracion y la expedicion de IPv4

Editamos /etc/sysctl.conf

Quitamos # delante de la linea net.ipv4.ip_forward=1

Ejecutamis el siguiente comando para activar el desvío de ahora:

Ahora vamos a configurar Raspberry como router con los comandos siguientes:

Guardamos la tabla de enrutamiento en /etc/iptables.ipv4.nat

Editamos “/etc/network/interfaces“: Y añadir la siguiente línea al final del archivo. Esta línea va a restaurar la tabla de enrutamiento cada vez que se inicia Raspberry:

print