On Mon, 2019-10-21 at 20:42 -0700, Clive McCarthy via networkmanager- list wrote: > I have a situation where I have multiple APs in a building all with > the same SSID and WPA key but set to non-clashing frequencies. When I > close my laptop and WiFi shuts down and I move to a new location the > Network Manager seems to connect to the original AP, rather than one > with a much stronger signal. > > The algorithm for AP connection is suboptimal (in other words dumb). > The selection process should scan ALL APs, figure out which ones are > known (SSID and WPA); measure their signal strength and then choose > the known AP with the strongest signal. > > How hard is that?
This is what NetworkManager should already be doing. Two things to check: 1) NetworkManager depends on being notified by systemd or upower that the laptop has suspended so that it can reconfigure when it wakes up. It should be pretty clear if that's happening through the NetworkManager logs because it will say that it's going to sleep and waking up. For example: NetworkManager[1198]: <info> [1571720491.7590] manager: sleep: sleep requested (sleeping: no enabled: yes) NetworkManager[1198]: <info> [1571720491.7599] device (wlp61s0): state change: disconnected -> unmanaged (reason 'sleeping', sys-iface-state: 'managed') NetworkManager[1198]: <info> [1571720491.7615] manager: NetworkManager state is now ASLEEP NetworkManager[1198]: <warn> [1571752873.5481] sup-iface[0x55f38553aaa0,wlp61s0]: connection disconnected (reason -3) NetworkManager[1198]: <info> [1571752873.5504] device (wlp61s0): supplicant interface state: completed -> disconnected NetworkManager[1198]: <info> [1571752873.5803] manager: sleep: wake requested (sleeping: yes enabled: yes) NetworkManager[1198]: <info> [1571752873.6556] device (wlp61s0): state change: activated -> unmanaged (reason 'sleeping', sys-iface-state: 'managed') 2) enabling debug logging in wpa_supplicant with these two commands will show you exactly what's going on: sudo dbus-send --system --print-reply --dest=fi.w1.wpa_supplicant1 /fi/w1/wpa_supplicant1 org.freedesktop.DBus.Properties.Set string:fi.w1.wpa_supplicant1 string:DebugTimestamp variant:boolean:true sudo dbus-send --system --print-reply --dest=fi.w1.wpa_supplicant1 /fi/w1/wpa_supplicant1 org.freedesktop.DBus.Properties.Set string:fi.w1.wpa_supplicant1 string:DebugLevel variant:string:"msgdump" this will dump logs to wherever your system typically sends system logs, like the systemd journal or syslog. Once you have these logs, please review them to ensure there is no private information and then attach them to a reply so that we can figure out what's going on. Thanks! Dan _______________________________________________ networkmanager-list mailing list [email protected] https://mail.gnome.org/mailman/listinfo/networkmanager-list
