Hi,
I have the following setup in my home:
- 1x TP-Link Archer C6 v3 - 22.03.02
- 1x TP-Link TL-SG105PE (stock firmware) - Just powering the EAP235-Wall devices
- 2x TP-Link EAP 235-Wall - 22.03.02
Situation:
I have configured the C6 as the central device of the network, hosting the DHCP (IPv4 only). In total I host 3 different SSIDs spanned over all three APs utilizing also utilizing several VLANs. In general WiFi runs stable until I start moving within the house. FT/roaming apparently fails and after reconnecting it takes several minutes for a new DHCP lease to be established.
For the sake of simplicity only one radio (2.4 GHz), one SSID and one VLAN (VLAN ID 10) is relevant, as this is sufficient to reproduce the roaming issue. The roaming device is an iPhone in the logged case below. Notebooks also struggle roaming around.
Configuration:
C6: /etc/config/network:
config interface 'loopback'
option device 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option packet_steering '1'
option ula_prefix 'fdda:dead:beef::/48'
config device
option name 'br-lan'
option type 'bridge'
list ports 'lan1'
list ports 'lan2'
list ports 'lan3'
config interface 'lan'
option proto 'static'
option netmask '255.255.255.0'
option ipaddr '10.0.10.1'
option device 'br-lan.10'
option delegate '0'
config bridge-vlan
option device 'br-lan'
option vlan '10'
list ports 'lan1:u*'
C6: /etc/config/dhcp:
config dnsmasq
option domainneeded '1'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option expandhosts '1'
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
option localservice '1'
option ednspacket_max '1232'
option local '/bub/'
option domain 'bub'
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv4 'server'
list dhcp_option '6,10.0.20.100'
option force '1'
config odhcpd 'odhcpd'
option maindhcp '0'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'
option loglevel '4'
C6: /etc/config/wireless
config wifi-device 'radio0'
option type 'mac80211'
option path '1e140000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
option channel '1'
option band '2g'
option htmode 'HT20'
option cell_density '0'
config wifi-device 'radio1'
option type 'mac80211'
option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
option channel '36'
option band '5g'
option htmode 'VHT80'
option cell_density '0'
config wifi-iface 'wifinet0'
option device 'radio0'
option mode 'ap'
option ssid 'Bub-Net'
option key '******'
option network 'lan'
option ieee80211r '1'
option ft_over_ds '0'
option ft_psk_generate_local '1'
option encryption 'psk2'
option dtim_period '3'
option mobility_domain '1111'
option pmk_r1_push '1'
EAP235-1: /etc/config/network
config interface 'loopback'
option device 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option packet_steering '1'
option ula_prefix 'fd15:c17c:ca22::/48'
config device
option name 'br-lan'
option type 'bridge'
list ports 'lan0'
list ports 'lan1'
list ports 'lan2'
list ports 'lan3'
config interface 'lan'
option proto 'dhcp'
option device 'br-lan.10'
option delegate '0'
config bridge-vlan
option device 'br-lan'
option vlan '10'
list ports 'lan0:u*'
list ports 'lan1:u*'
list ports 'lan2:u*'
EAP235-1: /etc/config/wireless
config wifi-device 'radio0'
option type 'mac80211'
option path '1e140000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
option channel '1'
option band '2g'
option htmode 'HT20'
option cell_density '0'
config wifi-device 'radio1'
option type 'mac80211'
option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
option channel '36'
option band '5g'
option htmode 'VHT80'
option cell_density '0'
config wifi-iface 'wifinet0'
option device 'radio0'
option mode 'ap'
option ssid 'Bub-Net'
option key '******'
option network 'lan'
option ieee80211r '1'
option ft_over_ds '0'
option ft_psk_generate_local '1'
option encryption 'psk2'
option dtim_period '3'
option mobility_domain '1111'
option pmk_r1_push '1'
Initial connection log:
EAP235-1 | Wed Mar 15 09:13:56 2023 daemon.notice hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: did not acknowledge authentication response
EAP235-1 | Wed Mar 15 09:13:56 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: associated (aid 4)
EAP235-1 | Wed Mar 15 09:13:56 2023 daemon.notice hostapd: wlan0: AP-STA-CONNECTED de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:13:56 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c WPA: pairwise key handshake completed (RSN)
EAP235-1 | Wed Mar 15 09:13:56 2023 daemon.notice hostapd: wlan0: EAPOL-4WAY-HS-COMPLETED de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:13:56 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:13:56 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:13:57 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:13:57 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c xxx
Roam from EAP235-1 to C6:
EAP235-1 | Wed Mar 15 09:47:23 2023 daemon.notice hostapd: wlan0: AP-STA-DISCONNECTED de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:47:23 2023 daemon.err hostapd: nl80211: kernel reports: key addition failed
C6 | Wed Mar 15 09:47:23 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: associated (aid 1)
C6 | Wed Mar 15 09:47:23 2023 daemon.notice hostapd: wlan0: AP-STA-CONNECTED de:ad:be:ef:d3:3c
Roam from C6 to EAP235-1:
EAP235-1 | Wed Mar 15 09:49:32 2023 daemon.err hostapd: nl80211: kernel reports: key addition failed
EAP235-1 | Wed Mar 15 09:49:32 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: associated (aid 4)
EAP235-1 | Wed Mar 15 09:49:32 2023 daemon.notice hostapd: wlan0: AP-STA-CONNECTED de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:49:33 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:49:33 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c xxx
C6 | Wed Mar 15 09:49:35 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:49:35 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c xxx
C6 | Wed Mar 15 09:49:37 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:49:37 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c xxx
C6 | Wed Mar 15 09:49:42 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:49:42 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
[...] 4 more repetitions
C6 | Wed Mar 15 09:50:02 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:50:02 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:50:02 2023 daemon.notice hostapd: wlan0: AP-STA-DISCONNECTED de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:50:02 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: disassociated
EAP235-1 | Wed Mar 15 09:50:03 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: authenticated
EAP235-1 | Wed Mar 15 09:50:03 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: associated (aid 4)
EAP235-1 | Wed Mar 15 09:50:03 2023 daemon.notice hostapd: wlan0: AP-STA-CONNECTED de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:50:03 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c WPA: pairwise key handshake completed (RSN)
EAP235-1 | Wed Mar 15 09:50:03 2023 daemon.notice hostapd: wlan0: EAPOL-4WAY-HS-COMPLETED de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:50:03 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:50:03 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
[...] 14 more repetitions
C6 | Wed Mar 15 09:52:35 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:35 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:52:36 2023 daemon.notice hostapd: wlan0: AP-STA-DISCONNECTED de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:52:36 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: disassociated
EAP235-1 | Wed Mar 15 09:52:37 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: authenticated
EAP235-1 | Wed Mar 15 09:52:37 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c IEEE 802.11: associated (aid 4)
EAP235-1 | Wed Mar 15 09:52:37 2023 daemon.notice hostapd: wlan0: AP-STA-CONNECTED de:ad:be:ef:d3:3c
EAP235-1 | Wed Mar 15 09:52:37 2023 daemon.info hostapd: wlan0: STA de:ad:be:ef:d3:3c WPA: pairwise key handshake completed (RSN)
EAP235-1 | Wed Mar 15 09:52:37 2023 daemon.notice hostapd: wlan0: EAPOL-4WAY-HS-COMPLETED de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:37 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:37 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
[...] 3 more repetitions
C6 | Wed Mar 15 09:52:53 2023 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(br-lan.10) de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:53 2023 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:54 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c
C6 | Wed Mar 15 09:52:54 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan.10) 10.0.10.149 de:ad:be:ef:d3:3c xxx