3 votos

Configurar punto de acceso wifi en laptop con hostapd

Básicamente tratando de configurar un laptop linux como un router wifi que otros ordenadores portátiles y móviles pueden conectarse y luego podemos manipular el tráfico en algunas pruebas (con menores anchos de banda y los casquillos etcetera.) el tráfico de red

Mi archivo de configuración hostapd es,

interface=wlan0
driver=nl80211
ssid=atest
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=1234567890
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

pero hostapd siempre falla, con la opción -d ver esto,

random: Trying to read entropy from /dev/random
Configuration file: /etc/hostapd/hostapd.conf
nl80211: interface wlan0 in phy phy0
rfkill: initial event: idx=1 type=2 op=0 soft=1 hard=0
rfkill: initial event: idx=2 type=1 op=0 soft=0 hard=0
nl80211: Using driver-based off-channel TX
nl80211: Register frame command failed (type=208): ret=-114 (Operation already in progress)
nl80211: Register frame match - hexdump(len=2): 04 0a
nl80211: Failed to register Action frame processing - ignore for now
nl80211: Add own interface ifindex 4
nl80211: Set mode ifindex 4 iftype 3 (AP)
nl80211: Failed to set interface 4 to mode 3: -95 (Operation not supported)
nl80211: Interface already in requested mode - ignore error
nl80211: Create interface iftype 6 (MONITOR)
nl80211: New interface mon.wlan0 created: ifindex=16
nl80211: Add own interface ifindex 16
BSS count 1, BSSID mask 00:00:00:00:00:00 (0 bits)
nl80211: Regulatory information - country=00
nl80211: 2402-2472 @ 40 MHz
nl80211: 2457-2482 @ 20 MHz
nl80211: 2474-2494 @ 20 MHz
nl80211: 5170-5250 @ 40 MHz
nl80211: 5735-5835 @ 40 MHz
nl80211: Added 802.11b mode based on 802.11g information
Completing interface initialization
Mode: IEEE 802.11g  Channel: 1  Frequency: 2412 MHz
nl80211: Set freq 2412 (ht_enabled=0 sec_channel_offset=0)
nl80211: Failed to set channel (freq=2412): -16 (Device or resource busy)
Could not set channel for kernel driver
wlan0: Unable to setup interface.
Flushing old station entries
Could not connect to kernel driver.
Deauthenticate all stations
nl80211: Remove interface ifindex=16
netlink: Operstate: linkmode=0, operstate=6
nl80211: Set mode ifindex 4 iftype 2 (STATION)

Se agradecería mucho cualquier ayuda para que esto funcione.

4voto

e3495026 Puntos 31

(a partir de http://stackoverflow.com/a/22845597 )

Parece que el problema es que hostapd 2.1 ahora está saliendo en un error que anteriormente había ignorado. Este es reproducible en el escritorio de Ubuntu versiones, como la de recursos (WLAN) está ocupado.

Si apaga los programas que tienen acceso a los recursos, hostapd tiene una oportunidad para apoderarse de ella y de trabajo.

En el escritorio de Ubuntu 14.04 beta, una solución es desactivar los programas que están usando el wifi en cuestión.

Esto funcionó para mí:

sudo nmcli nm wifi off
sudo rfkill unblock wlan

luego hostapd puede iniciar normalmente desde la línea de comandos. Por supuesto, si usted quiere hostapd para que inicie usted debe asegurarse de que el administrador de red no es el acaparamiento de los recursos antes de tiempo.

2voto

harmic Puntos 121

Yo tenía el mismo problema, la ejecución de pidora 2014 (Fedora 20 remix para Raspberry Pi). La respuesta es básicamente la misma que la de los otros dos que se dan aquí: wpa_supplicant fue corriendo que impidió hostapd de utilizar el dispositivo.

Pero en caso de que alguien más lo encuentra útil, aquí es el procedimiento que utiliza para resolver.

En mi caso, wpa_supplicant fue comenzado por NetworkManager, que es un demonio se usa en la mayoría de las distribuciones modernas de linux para el control de la red. Mientras que funciona bien en un entorno de escritorio, no parece soporte de configuración AP, y constantemente re-generado wpa_supplicant incluso cuando traté de detenerlo manualmente.

La solución fue desactivar el servicio NetworkManager y permitir que el "legado" del servicio de red, que utiliza simples scripts de inicio para el control de las interfaces de red:

sudo systemctl disable NetworkManager.service 
sudo systemctl enable network.service

Después de este hostapd comenzó y funcionaba correctamente.

1voto

Dominic Gifford Puntos 46

Hostapd no está activado el canal de la tarjeta de red mediante el controlador de nl80211:

Mode: IEEE 802.11g  Channel: 1  Frequency: 2412 MHz
nl80211: Set freq 2412 (ht_enabled=0 sec_channel_offset=0)
nl80211: Failed to set channel (freq=2412): -16 (Device or resource busy)

¿El código de error es una indicación de que algo más está utilizando el dispositivo para que el cambio de canal no está permitido - quizás wpa_supplicant está ejecutando en segundo plano?

-1voto

Naeem Puntos 1023

Uso systemctl --force stop wpa_supplicant.service , entonces hostapd v2.1 como normal.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: