Right now I’ve been using Tailscale because it automatically adapts to my network conditions. If I’m at home, it’ll prioritize local network connection, but when I’m out and about, it’ll automatically beam a direct connection or use a relay.
One gripe I have about it is I can’t run it alongside my normal VPNs on my mobile devices. I have to choose between one or the other.
I have tried Cloudflare Tunnel before, but using it for streaming, like Jellyfin, is forbidden. There’s also the added latency and slowness to having to hop through multiple DCs to reach Cloudflare and back.
How does your dynamic DNS work? When does it resolve to your local network addresses and your public domains?
Not OP but DynDNS entries will always point to your current external IP and are renewed every hour.
Internally I run an AdGuard Home instance for adblocking. All my domains are rewritten by it to use the local IP while I’m in the same network.
https://en.wikipedia.org/wiki/Split-horizon_DNS