How to prevent idle WDS stations from being dropped?

Following up on this discussion: Ath10k: the dreadful bug "deauthenticated due to inactivity (timer DEAUTH/REMOVE)" - #11 by huj3r

I've got OpenWrt 22.05.03 running on two Linksys WRT1900ACS routers. I've got "Disable Inactivity Polling" and "Disassociate on Low Acknowledgement" unchecked, so polling should be taking place but in spite of that the WDS Client keeps on dropping the connection to the WDS AP due to:

[ 2807.808995] phy0-sta0: disassociated from 60:38:e0:db:af:83 (Reason: 4=DISASSOC_DUE_TO_INACTIVITY)

I know that the idle timeout polling is at fault because if I decrease the value of "Station inactivity limit" to 1 minute, I start getting disconnects at this frequency.

I understand that I can work around this problem by increasing the timeout to a large value, but I'd like to know why the polling isn't reseting the timer.

How can I debug this further? Is this a known issue for WDS configurations?

Thank you.

1 Like

You are not really a mesh network; try this.

I don't understand. Why do you think my configuration is not really a mesh network? I am trying to extend the range of a single SSID using a second router as a repeater. Clients from one router must be able to see each other.

In any case, I found instructions for increasing hostapd's logging level at https://openwrt.org/docs/guide-developer/debugging#logging_hostapd_behaviour but didn't find anything new/meaningful to fix this problem.

It is just, I've found, WDS to be problematic.

Have not experienced your errors on my WDS setup. Has been very stable for years. I make sure settings are kept at default and use WPA2/AES for encryption. Maybe try resetting your APs and start over again and just leave everything at default. Set country code and choose a clear frequency for the WDS connection.

For the record, ever since I extended the "Station inactivity limit" from 5 minutes to 1 day, my WDS set up is rock-solid...

This is in spite of having "Disable Inactivity Polling" unchecked and "Disassociate On Low Acknowledgement" checked, which is the default setup.

You can set up slow rate ping on either router to other to keep link up.

True. But I am getting the same problem for other devices as well. My android phone keeps on getting disconnected every 5 minutes.

Are we sure that "idle timeout polling" actually works properly in 23.05.03? I haven't seen it work for any device on my end. Have you?

works perfectly mt76 ath9k ath10k

Do you have any visual indication it works, as in log entries? If so, what log lines should I be looking for?

See my post here; do you still have many inactivity reconnections even with that configuration?

In my case, setting Station Inactivity Limit to 86400 was enough to avoid undesired disconnects. I didn't have to touch dtim_period or disassoc_low_ack.