berlin-open-wireless-lab / DAWN

Decentralized WiFi Controller
GNU General Public License v2.0
367 stars 63 forks source link

Solved: DAWN fail on multiple SSID with different subnet IP #228

Closed davidngrc closed 1 year ago

davidngrc commented 1 year ago

My AX3600 router has 3 radio. I have two SSID, one is PrivateNet on 10.1.1.x the other one is Guest network on 192.168.3.x


Previous setup SSID PrivateNet on radio 0 (2.4G) and 1 (5G) with DAWN SSID Guest on radio 2 (5G) WithOut DAWN it work perfectly.

with DAWN means, on the /etc/config/wireless, it include below code, and enabled 802.11r Fast Transition in the specific radio option bss_transition '1' option wnm_sleep_mode '1' option time_advertisement '2' option time_zone 'GMT0' option ieee80211k '1' option rrm_neighbor_report '1' option rrm_beacon_report '1'

without DAWN means, no above code, and disabled 802.11r Fast Transition in the specific radio .


but now I change my setup to SSID PrivateNet on radio 0 (2.4G) and 1 (5G) and 2 (5G) with DAWN SSID Guest on radio 0 (2.4G) and 1 (5G) and 2 (5G) with DAWN

the first SSID PrivateNet works the 2nd SSID Guest, in the log, EAPOL-4WAY-HS-COMPLETED, then it keep sending BEACON-REQ-TX-STATUS xx:xx:xx:xx:xx:xx yy ack=1 after few second, the wifi device fail to connect to the SSID Guest, and there is no further log, or any mention of getting the IP.

I think this is because my DAWN config, option broadcast_ip '10.1.1.255' I check the DAWN source code, it seems there is no way I can setup another broadcast_ip '192.168.3.255' for my second SSID.

I just did a test, assign all 3 radio on SSID Guest interface to same network as PrivateNet, which is 10.1.1.x and now device successfully connect to SSID Guest. so this is an issue of DAWN failing on multiple SSID with different subnet IP.


there is no mention of multiple broadcast ip in this repository or in https://openwrt.org/docs/guide-user/network/wifi/dawn

Please help.

I see there is a issue ignoring SSID, which is sort of related to this issue, but not implemented. https://github.com/berlin-open-wireless-lab/DAWN/issues/197

davidngrc commented 1 year ago

I make it working SSID PrivateNet on radio 0 (2.4G) and 1 (5.1G) and 2 (5.7G) SSID GuestNet on radio 0 (2.4G) and 1 (5.1G) and 2 (5.7G) not sure how, but here is what I did.

  1. install DAWN, and luci-app-dawn, and set DAWN config option broadcast_ip to the PrivateNet, in my case it is '10.1.1.255'

  2. apply below to all 3 radios in the /etc/config/wireless option bss_transition '1' option wnm_sleep_mode '1' option time_advertisement '2' option time_zone 'GMT0' option ieee80211k '1' option rrm_neighbor_report '1' option rrm_beacon_report '1'

  3. for '802.11r Fast Transition' Disable it in all Guest network interface in the OpenWrt Web UI Enable it in all PrivateNet interface in the OpenWrt Web UI

below is the config for /etc/config/wireless

config wifi-device 'radio0'
    option type 'mac80211'
    option path 'soc/20000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
    option channel 'auto'
    option band '5g'
    option htmode 'VHT80'
    option cell_density '0'
    option country 'KR'
    option bss_transition '1'
    option wnm_sleep_mode '1'
    option time_advertisement '2'
    option time_zone 'GMT8'
    option ieee80211k '1'
    option rrm_neighbor_report '1'
    option rrm_beacon_report '1'
    option log_level '0'

config wifi-device 'radio1'
    option type 'mac80211'
    option path 'platform/soc/c000000.wifi'
    option channel 'auto'
    option band '5g'
    option htmode 'HE160'
    option cell_density '0'
    option country 'KR'
    option bss_transition '1'
    option wnm_sleep_mode '1'
    option time_advertisement '2'
    option time_zone 'GMT8'
    option ieee80211k '1'
    option rrm_neighbor_report '1'
    option rrm_beacon_report '1'
    option log_level '0'

config wifi-device 'radio2'
    option type 'mac80211'
    option path 'platform/soc/c000000.wifi+1'
    option channel '13'
    option band '2g'
    option htmode 'HE40'
    option cell_density '0'
    option country 'KR'
    option bss_transition '1'
    option wnm_sleep_mode '1'
    option time_advertisement '2'
    option time_zone 'GMT8'
    option ieee80211k '1'
    option rrm_neighbor_report '1'
    option rrm_beacon_report '1'
    option log_level '0'

config wifi-iface 'wifinet0'
    option device 'radio0'
    option network 'lan'
    option mode 'ap'
    option ssid 'PrivateNet'
    option encryption 'sae-mixed'
    option key '********'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B1'
    option ieee80211r '1'
    option ft_over_ds '0'
    option ft_psk_generate_local '1'

config wifi-iface 'wifinet1'
    option device 'radio1'
    option network 'lan'
    option mode 'ap'
    option ssid 'PrivateNet'
    option encryption 'sae-mixed'
    option key '********'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B2'
    option ieee80211r '1'
    option ft_over_ds '0'
    option ft_psk_generate_local '1'

config wifi-iface 'wifinet2'
    option device 'radio2'
    option network 'lan'
    option mode 'ap'
    option ssid 'PrivateNet'
    option encryption 'sae-mixed'
    option key '********'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B3'
    option ieee80211r '1'
    option ft_over_ds '0'
    option ft_psk_generate_local '1'

config wifi-iface 'wifinet3'
    option device 'radio0'
    option network 'guest'
    option mode 'ap'
    option ssid 'GuestNet'
    option encryption 'sae-mixed'
    option isolate '1'
    option key '12345678'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B4'

config wifi-iface 'wifinet4'
    option device 'radio1'
    option network 'guest'
    option mode 'ap'
    option ssid 'GuestNet'
    option encryption 'sae-mixed'
    option isolate '1'
    option key '12345678'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B5'

config wifi-iface 'wifinet5'
    option device 'radio2'
    option network 'guest'
    option mode 'ap'
    option ssid 'GuestNet'
    option encryption 'sae-mixed'
    option isolate '1'
    option key '12345678'
    option wpa_disable_eapol_key_retries '1'
    option ieee80211w '1'
    option macaddr '12:34:56:78:9A:B6'