I'm suprised nobody mentioned nebula: A scalable overlay networking tool with a focus on performance, simplicity and security.
I've been running it for about two years on multiple machines and it worked flawlessly so far. Even connecting two hosts, both behind mullvad-vpn tunnels.
The only downside is, that you have to host your own discovery server (callled "lighthouses"). One is fine, but running at least two removes the single point of failure from the network.