Client connected to WiFi gets randomly dropouts

Hi All,

First timer using OpenWRT, I've got myself some " D-Link M32 Eagle Pro AI AX3200 Mesh Wi-Fi 6 Router" and have meshed 3 of them on 5Ghz, however clients connected to the network are randomly getting no internet for like 30sec or something before its been restored.

NBN -> AX3200 Router with Mesh Config to AP1 and AP2

Is there something I can find the root cause for the clients randomly getting no internet and then its being restored?

Thanks
Synice

Are these devices running Openwrt?

all of them except the NBN HFC modem.

We still aren't any wiser which version of OpenWrt, what kind of mesh you have configured (there are more than a handful of vastly different variants), what your wireless settings are, etc. pp.

Since they’re running openwrt, let’s see the configs. Make sure you indicate which unit is which.

Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have:

ubus call system board
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/config/firewall

Main Router connected to the Internet via WAN

ubus call system board

root@MainRouter:~# ubus call system board
{
        "kernel": "5.15.167",
        "hostname": "MainRouter",
        "system": "ARMv8 Processor rev 4",
        "model": "D-Link EAGLE PRO AI M32 A1",
        "board_name": "dlink,eagle-pro-ai-m32-a1",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "23.05.5",
                "revision": "r24106-10cc5fcd00",
                "target": "mediatek/mt7622",
                "description": "OpenWrt 23.05.5 r24106-10cc5fcd00"
        }
}

cat /etc/config/network

root@MainRouter:~# cat /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 ula_prefix 'fd81:0614:c465::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'wan'
        option proto 'dhcp'
        option hostname '*'
        option peerdns '0'
        list dns '1.1.1.1'
        list dns '9.9.9.9'
        list dns '8.8.8.8'
        list dns '8.8.4.4'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'

config interface 'bat0'
        option proto 'batadv'
        option routing_algo 'BATMAN_IV'
        option bridge_loop_avoidance '1'
        option gw_mode 'server'
        option hop_penalty '30'

config interface 'batmesh'
        option proto 'batadv_hardif'
        option master 'bat0'

config device
        option type 'bridge'
        option name 'BR-Guest'
        option bridge_empty '1'

config interface 'Guest'
        option proto 'static'
        option device 'BR-Guest'
        option ipaddr '192.168.200.1'
        option netmask '255.255.255.0'

cat /etc/config/wireless

root@MainRouter:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/18000000.wmac'
        option channel '4'
        option band '2g'
        option htmode 'HT20'
        option cell_density '0'
        option country 'AU'

config wifi-device 'radio1'
        option type 'mac80211'
        option path '1a143000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
        option channel 'auto'
        option band '5g'
        option htmode 'HE80'
        option cell_density '0'
        option country 'AU'

config wifi-iface 'wifinet2'
        option device 'radio1'
        option mode 'mesh'
        option encryption 'sae'
        option mesh_fwding '1'
        option mesh_rssi_threshold '0'
        option key '#redacted'
        option mesh_id 'home-mesh'
        option network 'lan'

config wifi-iface 'wifinet1'
        option device 'radio1'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '7661'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

config wifi-iface 'wifinet3'
        option device 'radio0'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '4E6F'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

config wifi-iface 'wifinet4'
        option device 'radio0'
        option mode 'ap'
        option ssid 'Novag'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '0000'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'Guest'

config wifi-iface 'wifinet5'
        option device 'radio1'
        option mode 'ap'
        option ssid 'Novag'
        option encryption 'psk2'
        option key 'joinguest'
        option ieee80211r '1'
        option mobility_domain '0000'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'Guest'

cat /etc/config/dhcp

root@MainRouter:~# cat /etc/config/dhcp

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option cachesize '150000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'
        option filter_aaaa '0'
        option filter_a '0'
        list rebind_domain 'dns.msftncsi.com'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        option ra_slaac '1'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '3'

config dhcp 'Guest'
        option interface 'Guest'
        option start '100'
        option limit '150'
        option leasetime '12h'

cat /etc/config/firewall

root@MainRouter:~# cat /etc/config/firewall

config defaults
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        list network 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'

config zone
        option name 'wan'
        list network 'wan'
        list network 'wan6'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option masq '1'
        option mtu_fix '1'

config forwarding
        option src 'lan'
        option dest 'wan'

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option icmp_type 'echo-request'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-IGMP'
        option src 'wan'
        option proto 'igmp'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCPv6'
        option src 'wan'
        option proto 'udp'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-MLD'
        option src 'wan'
        option proto 'icmp'
        option src_ip 'fe80::/10'
        list icmp_type '130/0'
        list icmp_type '131/0'
        list icmp_type '132/0'
        list icmp_type '143/0'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Input'
        option src 'wan'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Forward'
        option src 'wan'
        option dest '*'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-IPSec-ESP'
        option src 'wan'
        option dest 'lan'
        option proto 'esp'
        option target 'ACCEPT'

config rule
        option name 'Allow-ISAKMP'
        option src 'wan'
        option dest 'lan'
        option dest_port '500'
        option proto 'udp'
        option target 'ACCEPT'

config zone
        option name 'guest'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'Guest'

config forwarding
        option src 'guest'
        option dest 'wan'

config rule
        option name 'Allow-DNS-Guest'
        option src 'guest'
        option dest_port '53'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCP-Guest'
        list proto 'udp'
        option src 'guest'
        option dest_port '67'
        option target 'ACCEPT'

AP1
ubus call system board


root@AP1:~# ubus call system board
{
        "kernel": "5.15.167",
        "hostname": "AP1",
        "system": "ARMv8 Processor rev 4",
        "model": "D-Link EAGLE PRO AI M32 A1",
        "board_name": "dlink,eagle-pro-ai-m32-a1",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "23.05.5",
                "revision": "r24106-10cc5fcd00",
                "target": "mediatek/mt7622",
                "description": "OpenWrt 23.05.5 r24106-10cc5fcd00"
        }
}

cat /etc/config/network

root@AP1:~# cat /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 ula_prefix 'fd7a:2926:93ec::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'wan'

config interface 'lan'
        option device 'br-lan'
        option proto 'dhcp'
        option defaultroute '0'

config device
        option type 'bridge'
        option name 'BR-Guest'
        option bridge_empty '1'

config interface 'Guest'
        option proto 'static'
        option device 'BR-Guest'
        option ipaddr '192.168.200.2'
        option netmask '255.255.255.0'
        option gateway '192.168.200.1'

cat /etc/config/wireless


root@AP1:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/18000000.wmac'
        option channel '4'
        option band '2g'
        option htmode 'HT20'
        option cell_density '0'

config wifi-device 'radio1'
        option type 'mac80211'
        option path '1a143000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
        option channel '36'
        option band '5g'
        option htmode 'HE80'
        option cell_density '0'

config wifi-iface 'wifinet2'
        option device 'radio1'
        option mode 'mesh'
        option encryption 'sae'
        option mesh_id 'home-mesh'
        option mesh_fwding '1'
        option mesh_rssi_threshold '0'
        option key '#redacted'
        option network 'lan'

config wifi-iface 'wifinet1'
        option device 'radio1'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '7661'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

config wifi-iface 'wifinet3'
        option device 'radio0'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '4E6F'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

config wifi-iface 'wifinet4'
        option device 'radio0'
        option mode 'ap'
        option ssid 'Novag'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '0000'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'Guest'

config wifi-iface 'wifinet5'
        option device 'radio1'
        option mode 'ap'
        option ssid 'Novag'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '0000'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'Guest'

cat /etc/config/dhcp

root@AP1:~# cat /etc/config/dhcp

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option cachesize '1000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'
        option filter_aaaa '0'
        option filter_a '0'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'hybrid'
        option ra 'hybrid'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

config dhcp 'Guest'
        option interface 'Guest'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option ignore '1'

cat /etc/config/firewall


root@AP1:~# cat /etc/config/firewall

config defaults
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'guest'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'Guest'

AP2
ubus call system board

root@AP2:~# ubus call system board
{
        "kernel": "5.15.167",
        "hostname": "AP2",
        "system": "ARMv8 Processor rev 4",
        "model": "D-Link EAGLE PRO AI M32 A1",
        "board_name": "dlink,eagle-pro-ai-m32-a1",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "23.05.5",
                "revision": "r24106-10cc5fcd00",
                "target": "mediatek/mt7622",
                "description": "OpenWrt 23.05.5 r24106-10cc5fcd00"
        }
}

cat /etc/config/network

root@AP2:~# cat /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 ula_prefix 'fd89:c166:2db1::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'wan'

config interface 'lan'
        option device 'br-lan'
        option proto 'dhcp'


cat /etc/config/wireless

root@AP2:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/18000000.wmac'
        option channel '4'
        option band '2g'
        option htmode 'HT20'
        option cell_density '0'
        option country 'AU'

config wifi-device 'radio1'
        option type 'mac80211'
        option path '1a143000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
        option channel '36'
        option band '5g'
        option htmode 'HE80'
        option cell_density '0'

config wifi-iface 'wifinet0'
        option device 'radio1'
        option mode 'mesh'
        option encryption 'sae'
        option mesh_id 'home-mesh'
        option mesh_fwding '1'
        option mesh_rssi_threshold '0'
        option key '#redacted'
        option network 'lan'

config wifi-iface 'wifinet1'
        option device 'radio1'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain '7661'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

config wifi-iface 'wifinet2'
        option device 'radio0'
        option mode 'ap'
        option ssid 'Nova'
        option encryption 'psk2'
        option key '#redacted'
        option ieee80211r '1'
        option mobility_domain 'AE6F'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option network 'lan'

cat /etc/config/dhcp

root@AP2:~# cat /etc/config/dhcp

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

cat /etc/config/firewall

root@AP2:~# cat /etc/config/firewall

config defaults
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

I'm not an expert on B.A.T.M.A.N, so I cannot advise there. But here are some things I do see that I'd recommend changing...

  1. Don't use 802.11r/fast roaming. Turn it off on all of the devices. Some client devices don't work well with this standard, and it can actually cause more harm than good.
  2. Change your radio configuration such that each AP's radio is manually set for the channels and power levels. The goal is to have each AP using non-overlapping channels relative to its neighbors, and often it is best to lower the power levels to reduce the size of the overlap area. These two things will encourage the client devices to make better roaming choices (it is a client side process).
  3. Consider changing the satellite APs such that the guest network is unmanaged (option proto 'none'). There is no need for the APs to have an address on that network; only the main router needs an address.
1 Like

Ive deleted the wireless config and recreated them as non-roaming on MainRouter, AP1. AP2

The meshing appears to be working.

At the moment, the wifi is working, perhaps i should wireshark and capture the packets

see attached Wireshark Captures

To be clear, this is not "non-roaming," it is just not using fast roaming. As long as the APs are configured properly, devices will roam between them without any issue. 802.11r is not required for roaming to work; it can improve it in some circumstances, it can harm it in others.

I've reverted the upstream DNS config as I saw many errors on that side now that im using the ISP's DNS, I am not seeing the drops, but will need to monitor it.

This is the network diagram layout i have so far