sábado, 13 de septiembre de 2014

Interfaz de red con modo Access Point en Fedora


Hola, este es un nuevo articulo para todos mis lectores, esta vez es para solucionar un problema que tal vez muchos tienen, el problema es el siguiente:

¿Alguna vez intentaron crear una red Ad-Hoc con vuestra laptop para compartir el internet mediante Wi-Fi con vuestro teléfono Android?

Pues ocurre que en algunos dispositivos Android no vienen las librerías necesarias para poder conectarse a redes Ad-Hoc, esto puede solucionarse de muchas formas, una de ellas es rootear el teléfono, instalar un recovery y luego instalar un parche con las librerías necesarias al teléfono, aunque este método es el mas peligroso pero optimo, aquí les traigo otro método, y es ese método es hacer que nuestra laptop use el adaptador inalámbrico para crear una red ya no en modo Ad-Hoc sino mas bien en modo Infraestructura como si se tratase de un access point de silicio y plástico, este procedimiento fue probado en mi laptop con Fedora y no debe de variar mucho en otras distros GNU/Linux.

Así que empecemos!!

  1. Lo primero que necesitaremos son dos paquetes:

  2. hostapd: Un servicio que hace que nuestra tarjeta Wi-Fi se comporte como un access point.
    dhcp: Otro servicio que nos ayudara a brindarle una configuración de red automáticamente a los dispositivos que se conecten a la red inalámbrica.

    Instalamos estos dos paquetes desde la terminal con:

    # yum install hostapd dhcp

  3. Configuramos hostapd
  4. Usamos algun editor de texto para editar /etc/hostapd/hostapd.conf, usen el que les de la gana pero ese archivo tiene que tener la siguiente configuración:
    ctrl_interface=/var/run/hostapd
    ctrl_interface_group=wheel
    macaddr_acl=0
    auth_algs=1
    ignore_broadcast_ssid=0

    wpa=3
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=TKIP
    rsn_pairwise=CCMP

    wpa_passphrase=4LGunP4sSw0rD
    driver=nl80211
    interface=wlp1s0
    hw_mode=g
    channel=1
    ssid=UnNombreDeRed

    Creo que no es necesario explicar esto pues es un poco obvio y ademas en el mismo archivo de configuración hostapd.conf esta explicado para que sirve cada una de estas lineas.

  5. Configuramos el servidor DHCP
  6. Editamos el archivo de configuración /etc/dhcp/dhcpd.conf y le agregamos lo siguiente:
    subnet 192.168.100.0 netmask 255.255.255.0 {
            range 192.168.100.30 192.168.100.40;
            option subnet-mask 255.255.255.0;
            option domain-name-servers 8.8.4.4, 8.8.8.8;
            option routers 192.168.100.1;
    }

    Aquí tampoco hay mucho que explicar, solo le damos parámetros para que el servidor DHCP asigne direcciones entre 192.168.100.30 y 192.168.100.40 con la computadora misma configurada como puerta de enlace y los DNS son los de Google.

  7. Detener el servicio NetworkManager
  8. Necesitamos detener este servicio pues el servicio hostapd necesita usar el hardware y no puede usarlo mientras otro proceso como NetworkManager lo esté usando. Tecleamos en terminal lo siguiente:
     # service NetworkManager stop
    Esto significa que nuestra aplicación que controla la red desde la barra de estado dejará de funcionar.
    El applet de red de mi XFCE


  9.  Configuramos manualmente la dirección IP de nuestra computadora
  10. Para poder emitir una señal inalámbrica con acceso a internet primero nuestra computadora tiene que tener acceso a internet, para ello tecleamos en nuestro terminal:
    # ifconfig p4p1 192.168.1.35 netmask 255.255.255.0
    # route add default gw 192.168.1.1
    # echo -e "nameserver 8.8.8.8\nnameserver 8.8.4.4">>/etc/resolv.conf

    En donde 192.168.1.35 es la dirección IP que deseamos asignar a nuestra computadora, 255.255.255.0 es la mascara de sub red, 192.168.1.1 es la puerta de enlace, 8.8.8.8 y 8.8.4.4 son los servidores DNS de Google, estos datos pueden cambiar según la configuración que ustedes usen en vuestra red.

    Luego de esto comprobamos si tenemos internet comprobando si hay respuesta de google.com mediante ping:
    # ping google.com

  11. Configuramos nuestra interfaz Wi-Fi 
  12. Configuramos la interfaz Wi-Fi que usaremos como access point, en mi caso es  wlp1s0, así que configurare su dirección IP:

    # ifconfig wlp1s0 192.168.100.1 netmask 255.255.255.0

  13. Ahora si estamos listos para iniciar los servicios hostapd y dhcpd
  14. # service dhcpd start
    # service hostapd start

Eso es todo, ya podemos buscar redes inalámbricas con nuestro teléfono Android y conectarnos sin problema alguno. Si el procedimiento les parece muy extenso, siempre se puede juntar todas estas lineas en un archivo de script bash y ejecutarlo fácilmente cada que necesitemos compartir internet con nuestro teléfono Android.

Espero les sirva este articulo, yo me iré a almorzar pues me muero de hambre así que me despido hasta una próxima oportunidad.

EOF

2 comentarios:

  1. Los comandos ifconfig, route...están anticuados: hay que usar ip
    El comando service está anticuado: hay que usar systemctl

    ResponderEliminar
    Respuestas
    1. gracias por la información, la tomare en cuenta para próximos artículos

      Eliminar