Modify

Opened 3 years ago

Last modified 21 months ago

#20179 reopened defect

ieee80211w option rejected by hostapd

Reported by: simon.vetter Owned by: developers
Priority: normal Milestone: Chaos Calmer 15.05
Component: base system Version: Trunk
Keywords: Cc:

Description

On Chaos Chalmer rc3 on a TP-Link WDR3600, setting

option ieee80211w 1

in /etc/config/wireless prevents hostapd from starting up.

logread shows

Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Configuration file: /var/run/hostapd-phy1.conf
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Line 34: unknown configuration item 'ieee80211w'
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): 1 errors found in configuration file '/var/run/hostapd-phy1.conf'
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Failed to set up interface with /var/run/hostapd-phy1.conf
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Failed to initialize interface
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): cat: can't open '/var/run/wifi-phy1.pid': No such file or directory
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Command failed: Invalid argument
Sat Jul 25 08:26:33 2015 daemon.notice netifd: radio1 (998): Device setup failed: HOSTAPD_START_FAILED

This is a regression from Barrier Breaker where it was working fine. Perhaps a missing compile-time option?

Attachments (0)

Change History (25)

comment:1 follow-up: Changed 3 years ago by hauke

  • Resolution set to fixed
  • Status changed from new to closed

Since commit r45616 ieee80211w support is only active in the hostapd full version and not the mini version.

comment:2 in reply to: ↑ 1 Changed 2 years ago by anonymous

Replying to hauke:

Since commit r45616 ieee80211w support is only active in the hostapd full version and not the mini version.

How to turn it on then? Is there a package to install? Any help would be appreciated.

comment:3 Changed 2 years ago by timothy.redaelli@…

root@OpenWrt:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='15.05-rc3'
DISTRIB_REVISION='r46163'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='lantiq/xrx200'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05-rc3'
DISTRIB_TAINTS=
root@OpenWrt:~# opkg list-installed | grep hostapd
hostapd - 2015-03-25-1
hostapd-common - 2015-03-25-1
root@OpenWrt:~# /usr/sbin/hostapd -P /var/run/wifi-phy0.pid -B /var/run/hostapd-phy0.conf
Configuration file: /var/run/hostapd-phy0.conf
Line 31: unknown configuration item 'ieee80211w'
1 errors found in configuration file '/var/run/hostapd-phy0.conf'
Failed to set up interface with /var/run/hostapd-phy0.conf
Failed to initialize interface
root@OpenWrt:~#

comment:4 Changed 2 years ago by hauke

you have to install wpad or hostapd and not the mini versions.

comment:5 Changed 2 years ago by rraptorr@…

I've run into the same issue. The hostapd package from 15.05-rc3 does not have ieee80211w support (yes, I'm using full hostapd version, not mini).

Tested with image builder of 15.05-rc3 with ar71xx/generic.

comment:6 Changed 2 years ago by rraptorr@…

  • Resolution fixed deleted
  • Status changed from closed to reopened

I've just checked latest snapshot. It also does not have 80211w support compiled in (this package http://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/packages/base/hostapd_2015-03-25-1_ar71xx.ipk).

comment:7 Changed 2 years ago by rraptorr@…

Upon a closer look, r45616 is exactly the reason why 802.11w does not work. CONFIG_IEEE80211W is an option that was previously appended to DRIVER_MAKEOPTS. After r45616 it became a top level make variable, that is never used anywhere. I'll try to send a patch soon.

comment:8 Changed 2 years ago by rraptorr@…

My patch got merged in r46737

comment:9 Changed 2 years ago by hauke

  • Resolution set to fixed
  • Status changed from reopened to closed

thanks for sending the patch, fix was fixed in r46737

comment:10 Changed 2 years ago by anonymous

Shouldn't that fix be backported to CC15.05?
The option is still broken there ...
https://dev.openwrt.org/browser/branches/chaos_calmer/package/network/services/hostapd/Makefile#L73

comment:11 Changed 2 years ago by anonymous

Hey,

i try to get the 802.11w aka Authenticated Management Frames working.
I use the current chaos calmer branch (commit a83b8bd5fd94b1c2c4f4f89eafebe98f5e572366)
The router is a Tp-Link WR1043ND Version 1.

I build the firmware with built-in hostapd-full package.

I insert this manually: /changeset/46737.html

But as soon as I add this line into /etc/config/wireless
option ieee80211w '1'
and restart wifi/router, WiFi isn't available.

the syslog shows:

Sat Aug 29 14:40:07 2015 daemon.info procd: - init complete -

Sat Aug 29 14:40:07 2015 daemon.notice netifd: radio0 (1630): 20/40 MHz operation not permitted on channel pri=9 sec=13 based on overlapping BSSes

Sat Aug 29 14:40:07 2015 daemon.notice netifd: radio0 (1630): Using interface wlan0 with hwaddr 90:f6:52:dc:16:80 and ssid "TP-WR1043ND"

Sat Aug 29 14:40:09 2015 user.notice root: starting ntpclient
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): WPS: Converting push_button to virtual_push_button for WPS 2.0 compliance
Sat Aug 29 14:40:09 2015 kern.info kernel: [   44.560000] br-lan: port 2(wlan0) entered forwarding state
Sat Aug 29 14:40:09 2015 kern.info kernel: [   44.560000] br-lan: port 2(wlan0) entered forwarding state
Sat Aug 29 14:40:09 2015 kern.info kernel: [   44.570000] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): Interface initialization failed
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): wlan0: interface state HT_SCAN->DISABLED
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): wlan0: AP-DISABLED 
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): wlan0: interface state DISABLED->DISABLED
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): wlan0: AP-DISABLED 
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): hostapd_free_hapd_data: Interface wlan0 wasn't started
Sat Aug 29 14:40:09 2015 daemon.notice netifd: radio0 (1630): nl80211: deinit ifname=wlan0 disabled_11b_rates=0
Sat Aug 29 14:40:10 2015 kern.info kernel: [   44.590000] device wlan0 left promiscuous mode
Sat Aug 29 14:40:10 2015 kern.info kernel: [   44.600000] br-lan: port 2(wlan0) entered disabled state
Sat Aug 29 14:43:56 2015 daemon.notice netifd: radio0 (1630): ELOOP: remaining socket: sock=18 eloop_data=0xb78a70 user_data=(nil) handler=0x418661
Sat Aug 29 14:43:56 2015 daemon.notice netifd: radio0 (1630): cat: can't open '/var/run/wifi-phy0.pid': No such file or directory
Sat Aug 29 14:43:56 2015 daemon.notice netifd: radio0 (1630): Command failed: Invalid argument
Sat Aug 29 14:43:56 2015 kern.info kernel: [   45.200000] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
Sat Aug 29 14:43:57 2015 kern.info kernel: [   45.580000] device wlan0 entered promiscuous mode

my try to start hostapd manually (fake MAC):

root@TP-WR1043ND:~# hostapd -P /var/run/wifi-phy0.pid /var/run/hostapd-phy0.conf
Configuration file: /var/run/hostapd-phy0.conf
wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE
ACS: Automatic channel selection started, this may take a bit
wlan0: interface state COUNTRY_UPDATE->ACS
wlan0: ACS-STARTED
wlan0: ACS-COMPLETED freq=2447 channel=8
wlan0: interface state ACS->HT_SCAN
20/40 MHz operation not permitted on channel pri=8 sec=12 based on overlapping BSSes
Using interface wlan0 with hwaddr 90:XX:XX:XX:XX:XX and ssid "TP-WR1043ND"
WPS: Converting push_button to virtual_push_button for WPS 2.0 compliance
Interface initialization failed
wlan0: interface state HT_SCAN->DISABLED
wlan0: AP-DISABLED
wlan0: interface state DISABLED->DISABLED
wlan0: AP-DISABLED
hostapd_free_hapd_data: Interface wlan0 wasn't started
nl80211: deinit ifname=wlan0 disabled_11b_rates=0
ELOOP: remaining socket: sock=13 eloop_data=0x5aaa18 user_data=(nil) handler=0x418661

If you comment the 80211w part:

root@TP-WR1043ND:~# vim /etc/config/wireless
root@TP-WR1043ND:~# vim /var/run/hostapd-phy0.conf
root@TP-WR1043ND:~# hostapd -P /var/run/wifi-phy0.pid /var/run/hostapd-phy0.conf
Configuration file: /var/run/hostapd-phy0.conf
wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE
ACS: Automatic channel selection started, this may take a bit
wlan0: interface state COUNTRY_UPDATE->ACS
wlan0: ACS-STARTED
wlan0: ACS-COMPLETED freq=2452 channel=9
wlan0: interface state ACS->HT_SCAN
20/40 MHz operation not permitted on channel pri=9 sec=13 based on overlapping BSSes
Using interface wlan0 with hwaddr 90:XX:XX:XX:XX:XX and ssid "TP-WR1043ND"
WPS: Converting push_button to virtual_push_button for WPS 2.0 compliance
wlan0: interface state HT_SCAN->ENABLED
wlan0: AP-ENABLED

comment:12 Changed 2 years ago by hauke

This is now also in CC.

Could you start hostapd with more debugging info.

comment:13 Changed 2 years ago by anonymous

Yes, but it seems there is nothing to see

root@TP-WR1043ND:~# /usr/sbin/hostapd -dd -t -P /var/run/wifi-phy0.pid /var/run/hostapd-phy0.conf
1440924415.434987: Configuration file: /var/run/hostapd-phy0.conf
1440924415.569807: wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE
1440924415.576396: wlan0: interface state COUNTRY_UPDATE->HT_SCAN
1440924416.883861: 20/40 MHz operation not permitted on channel pri=9 sec=5 based on overlapping BSSes
1440924416.887033: Using interface wlan0 with hwaddr 90:XX:XX:XX:XX:XX and ssid "TP-WR1043ND"
1440924417.451091: WPS: Converting push_button to virtual_push_button for WPS 2.0 compliance
1440924417.514706: Interface initialization failed
1440924417.514809: wlan0: interface state HT_SCAN->DISABLED
1440924417.514925: wlan0: AP-DISABLED
1440924417.515009: wlan0: interface state DISABLED->DISABLED
1440924417.515433: wlan0: AP-DISABLED
1440924417.515799: hostapd_free_hapd_data: Interface wlan0 wasn't started
1440924417.515899: nl80211: deinit ifname=wlan0 disabled_11b_rates=0
1440924417.542478: ELOOP: remaining socket: sock=13 eloop_data=0x951430 user_data=(nil) handler=0x418661

comment:14 Changed 2 years ago by anonymous

  • Resolution fixed deleted
  • Status changed from closed to reopened

hostapd wont start neither with

ieee80211w='1'

nor

ieee80211w='2'

Atleast ieee80211w='0' works fine. In my comment above is the debug log.

comment:15 Changed 2 years ago by nbd

which package and openwrt revision did you install?

comment:16 Changed 2 years ago by anonymous

root@TP-WR1043ND:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='Chaos Calmer'
DISTRIB_REVISION='r46743'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ar71xx/generic'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05'
DISTRIB_TAINTS='no-all busybox'
root@TP-WR1043ND:~# hostapd -V
hostapd: invalid option -- V
hostapd v2.5-devel
User space daemon for IEEE 802.11 AP management,
IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
Copyright (c) 2002-2015, Jouni Malinen <j@w1.fi> and contributors

comment:17 Changed 2 years ago by nbd

are you using wpad-mini or wpad?

comment:18 Changed 2 years ago by anonymous

None. If you use hostpad-full, you are not allowed to use wpad at all.

comment:19 Changed 2 years ago by nbd

  • Resolution set to fixed
  • Status changed from reopened to closed

fix backported to 15.05 in r46751

comment:20 Changed 2 years ago by anonymous

Not working for me with full version of hostapd, ieee80211w=1 on 15.05 r46767, 1043ND v1. It does work with ieee80211w=0.

Is it working for anyone? If yes can you please post your wireless config and package list?

root@OpenWrt:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='15.05'
DISTRIB_REVISION='r46767'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ar71xx/generic'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05'
DISTRIB_TAINTS=''
root@OpenWrt:~# opkg list-installed hostapd
hostapd - 2015-03-25-1
root@OpenWrt:~# opkg list-installed *mini*
root@OpenWrt:~#
wireless.@wifi-iface[0].ieee80211w='1'
root@OpenWrt:~# hostapd -dd /var/run/hostapd-phy0.conf
Configuration file: /var/run/hostapd-phy0.conf
wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE
Using interface wlan0 with hwaddr xx:xx:xx:xx:xx:xx and ssid "OpenWRT"
Interface initialization failed
wlan0: interface state COUNTRY_UPDATE->DISABLED
wlan0: AP-DISABLED
wlan0: Unable to setup interface.
wlan0: interface state DISABLED->DISABLED
wlan0: AP-DISABLED
hostapd_free_hapd_data: Interface wlan0 wasn't started
nl80211: deinit ifname=wlan0 disabled_11b_rates=0
ELOOP: remaining socket: sock=13 eloop_data=0x9a20a0 user_data=(nil) handler=0x418681

comment:21 Changed 2 years ago by anonymous

  • Resolution fixed deleted
  • Status changed from closed to reopened

Issue not fixed.

comment:22 Changed 2 years ago by Deepak Panwar

Hi,

I am trying to enable 80211.w on Linksys WRT1900ACv (mwlwifi). I am using wpad-full version on OpenWRT CC - r46773. But, it seems that CONFIG_IEEE80211W compilation flag is enabled only for ath9k driver.

Also, I tried enabling it through a patch in package/network/services/hostapd/Makefile, but bad luck...

mwlwifi driver itself has very less information available in public domain. Did anybody try it on Marwell driver? Would WRT1900ACv1, WRT1900ACv2 or WRT1900ACS support 80211.w feature?

Thanks.

comment:23 Changed 2 years ago by bryan.paradis@…

Still broken for me like as about with r46767 running hostapd full

root@OpenWrt:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='15.05'
DISTRIB_REVISION='r46767'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ar71xx/generic'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05'
DISTRIB_TAINTS=

comment:24 Changed 21 months ago by treycarr@…

I've attached the information I know below. I bought a router to get ieee80211w working, and am failing so far. I guess I'll try to find the installer for 46737 to see if it will work. I'm open to other suggestions! Thank you for your help.

root@OpenWrt:~# cat /etc/openwrt_release
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='15.05.1'
DISTRIB_REVISION='r48532'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ar71xx/generic'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05.1'
DISTRIB_TAINTS=

I believe I'm using the ath9k module:
root@OpenWrt:~# modprobe ath9k
ath9k is already loaded

Error from logread is:
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): Configuration file: /var/run/hostapd-phy0.conf
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): Line 32: unknown configuration item 'ieee80211w'
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): 1 errors found in configuration file '/var/run/hostapd-phy0.conf'
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): Failed to set up interface with /var/run/hostapd-phy0.conf
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): Failed to initialize interface
Sun Jan 31 19:14:53 2016 daemon.notice netifd: radio0 (1512): Device setup failed: HOSTAPD_START_FAILED

comment:25 Changed 21 months ago by treycarr@…

Well never mind, I got it working.

I had to remove wpad-mini, and install hostapd. Now it works!

Unfortunately, I found that only a new iPhone 6, and 2013 Macbook Air, and 2014 Macbook Pro worked with 802.11w enabled.

What doesn't work was an iPhone 5, iPad mini 2, Google Nexus 5 (2014), and none of my HP or Dell laptops. The HP laptop, when running this command: netsh wlan show drivers reported that "802.11w Management Frame Protection supported : No" so no surprise it doesn't work. This is a 2010 laptop. The Dell laptop reported "Yes" for the same question, and is a 2015 laptop with an Intel 802.11AC wireless chipset. It did not work either. Interestingly, on the older HP laptop (both Windows 10 by the way) there was an X symbol for wifi for the 802.11w network. The Dell had no such 'X'. It still doesn't work. I did upgrade all of the drivers for both with no success.

So as cool as this feature is to block DeAuth attempts against my network, the usefulness is tempered by the fact that many of my clients apparently do not support 802.11w. Thanks for the good work you all do in OpenWRT!

Add Comment

Modify Ticket

Action
as reopened .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.