[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Una de hostapd en debian 7...



El 22/03/17 a las 00:16, luisededios escribió:
Saludos a todos,

Estoy retomando un tema que tengo pendiente desde hace algún tiempo
porque aun no lo he logrado poner en marcha. Me refiero a la
implementación de un AP wifi en una laptop DELL a la cual le he
instalado dos mini tarjetas wifi, wlan0 y wlan2.

Hasta donde he llegado he logrado que el AP montado sobre wlan0 conecte
a otros dispositivos móviles y también que la laptop se conecte a la
red(un móvil con zona wifi y datos móviles activados) mediante wlan2,
pero parece que tengo problemas con el enrutamiento ip desde wlan0 y
wlan2 en la propia laptop pues los móviles que se conectan al AP de la
laptop no logran navegar. Desde la laptop si puedo navegar, pero desde
los móviles conectados al AP de la laptop no logro navegar.

La ip del móvil con zona wifi y datos móviles activados es 192.168.43.1,
y la laptop toma la 192.168.43.156. Luego, el AP de la laptop tiene la
ip fija 192.168.42.1 y asigna bien ips al resto de móviles que se conectan.

Repito. Desde la laptop puedo navegar correctamente pero desde los
móviles conectados a ella no logro navegar.

Muestro la condiguración que he heco por si algún experto pueda
mostrarme el error que estoy comentiendo.

1) Configurando el adaptador wifi(wlan0) con ip estática.

/etc/network/interfaces
allow-hostplug wlan0
iface wlan0 inet static
address 192.168.42.1
netmask 255.255.255.1

2) Instalación y conf del server DHCP.

apt-get install isc-dhcp-server

/etc/dhcp/dhcpd.conf
# option domain-name
# option domain-name-server
authoritative;

subnet 192.168.42.0 netmask 255.255.255.0 {
range 192.168.42.10 192.168.42.50;
option broadcast-address 192.168.42.255;
option routers 192.168.42.1;
default-lease-time 600;
max-lease-time 7200;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
}

En /etc/default/isc-dhcp-server
DHCP_CONF=/etc/dhcp/dhcpd.conf
INTERFACES="wlan0"

3) Instalar y conf de hostapd.

interfaces=wlan0
driver=nl80211
ssid=test
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
#wpa=2                   #todo lo que sigue si pongo contraseña al AP
#wpa_passphrase=secret
#wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP
#rsn_pairwise=CCMP

En /etc/default/hostapd
DAEMON_CONF="/etc/hostapd/hostapd.conf"

4) Configurando el enrutamiento IP entre wlan0 y wlan2.

En /etc/sysctl.conf
net.ipv4.ip_forward=1

ejecutar,

sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Para implementar un router en el AP, ejecutar,

iptables -t nat -A POSTROUTING -o wlan2 -j MASQUERADE
iptables -A FORWARD -i wlan2 -o wlan0 -m state --state
RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o wlan2 -j ACCEPT

Para salvar las tablas de ruteo en /etc/iptables.ipv4.nat, ejecutar,

sh -c "iptables-save > /etc/iptables.ipv4.nat"

Adicionar, al final del fichero /etc/network/interfaces, lo siguiente
para restaurar las tablas de ruteo cuando se inicia el AP.

pre-up iptables-restore < /etc/iptables.ipv4.nat

HASTA AQUI

A mi juicio, el problema lo tengo en las sentencias de iptables.

Este procedimiento lo he tomado desde un tutorial que encontré, en cual
se enrutaba desde eth0 hasta wlan0 y yo lo ajusté sustituyendo eth0 por
wlan2 pues tengo dos mini tarjeta wifi instaladas.

Anticipadamente, reciban mis agradecimientos.


Te estás complicando la vida en extremo, y estás cargando cosara "raras" en las direcciones de red

Si no tienes una restricción de acceso a la red en wlan2, ya sea por MAC, nombre de dominio o alguna otra cosa, y que pueda servir como servidora DNS y DHCP a cualquier conexión, lo que debes hacer es un puente: https://wiki.debian.org/es/Compartir_red_fisica_con_WiFi

Ahora bien, si el proveedor de red te ha puesto trabas, debes configurarte como servidor y enmascarar todo a través de tu computadora.

#/etc/network/interfaces
 allow-hostplug wlan0
 iface wlan0 inet static
 address 192.168.42.1
 netmask 255.255.255.0
 network 192.168.42.0
 broadcast 192.168.42.255
post-up /etc/init.d/hostapd force-reload --> ES NECESARIO REINICIAR HOSTAPD LUEGO DE CONFIGURAR EL AP

#/etc/dhcp/dhcpd.conf
 ddns-update-style none;
 option domain-name "local";
 option domain-name-servers 192.168.42.1;
 authoritative;
 log-facility local7;

 subnet 192.168.42.0 netmask 255.255.255.0 {
range 192.168.42.10 192.168.42.20;---> ACÁ VA EL LÍMITE DE CONEXIONES QUE QUIERAS PONER
  option routers 192.168.42.1;
 }


#/etc/default/isc-dhcp-server
 INTERFACES="wlan0"


hostapd está bien.

Ahora, no te embrolles tanto con iptables.

Edita (o crea) el archivo /etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Configuración IPTables
# Eliminar todas las reglas
iptables -F
iptables -t nat -F
iptables -t mangle -F

# Configurar NAT
iptables -t nat -A POSTROUTING -o wlan2 -j MASQUERADE
iptables -A FORWARD -i wlan2 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o wlan2 -j ACCEPT

# Mensaje de ejecución
echo "OK - rc.local ejecutado."

exit 0




Suerte

JAP





















Reply to: