Wireguard Windows keeps using lower priority interface (wifi) when a higher priority interface (wired) becomes available
Daniel Gröber
dxld at darkboxed.org
Sun Nov 19 14:54:31 UTC 2023
Hi Dave,
On Thu, Oct 19, 2023 at 09:43:46AM +0200, Dave Mifsud wrote:
> Has anyone come across this issue? Can anything be done, apart from
> creating a trigger in windows such that whenever a wired connection
> becomes available Wireguard is restarted? We would like to avoid this,
> as the solution seems too drastic.
Sounds very similar to the behaviour I'm seeing with the Linux kernel
implementation. This is intentional as best I can tell, it's called "sticky
sockets".
See my lament thread "Wg source address is too sticky for multihomed
systems aka multiple endpoints redux"
https://lists.zx2c4.com/pipermail/wireguard/2023-July/008111.html
It's safe to say many people have run into this and I think will continue
to do so as multihoming (aka wifi+ethernet) is pervasive.
I have a workaround for this on Linux without breaking connectivity by
completely restarting the interface. It involves setting fwmark which
invalidates the cached route, not sure a comparable codepath exists in the
windows impl.
--Daniel
More information about the WireGuard
mailing list