When I'm away from home I usually connect to my home (US) and my server (Europe). However sometimes (not always) the connection to my home is blocked, I don't know if it is caused by my phone company or my ISP. I blame the latter, because the connection to my european server never fails.
I wonder if there is something I can do in those cases?
I guess I could try to redirect the traffic to use the european server as a proxy, but that would make things slower the 90% of the time this isn't a problem. Also, this would require me to switch wireguard connections manually, which is not ideal, especially if I'm driving.
Another alternative would be tailscale (maybe with headscale), but I'd rather keep my infrstructure as wireguard only.
If Wireguard loses its connection, it doesn't automatically requery the host and reconnect AFAIK. So if name resolution fails, or you're on dynamic DNS and the IP changes, it's not going to fix itself.
And by default, WireGuard doesn't keep the connection alive when there's no traffic. You can tune this in settings, which I've done because I'm behind CGNAT and need a persistent connection.
Could it be that the domain name has both IPv4 and IPv6 and depending on the network you try to reach one or another?
Wireguard can work on both protocols, but from my experience it doesn't try both to see which one works (like browsers do). So if at the first try the dns resolves the "wrong" IP version, wireguard cannot connect and doesn't fallback trying the alternative.
@[email protected] no, the issue is not keepalive, since it cannot connect in the first place... moving to another wifi (instead of celullar) works fine, so it is not a problem with my configuration.
Friend...Tailscale uses the same Wireguard protocol as everything else. If Tailscale is working, but your solo configs aren't, it's not a Wireguard problem, it's a config problem. Guaranteed.