Tailscale & VPN Setup
Connect to your Audiobookshelf server through Tailscale or other VPNs
Running Audiobookshelf on your home network and want to access it remotely via Tailscale? Here’s how to get SoundLeaf connected.
Quick Setup
The key is using the right URL format:
http://HOSTNAME
Where HOSTNAME is your Tailscale MagicDNS name (e.g., audiobookshelf, nas, server).
Examples that work:
http://audiobookshelfhttp://my-nashttp://192.168.1.100:13378(local IP when on home network)
Common mistakes:
- Using
https://when your server doesn’t have SSL - Including the Tailscale domain suffix (usually not needed)
- Forgetting the
http://prefix entirely
Why HTTP Instead of HTTPS?
Most home Audiobookshelf setups don’t have SSL certificates configured. Tailscale’s connection is already encrypted, so HTTP over Tailscale is secure.
If you don’t specify a protocol, SoundLeaf tries HTTPS first. If your server only supports HTTP, you’ll get a connection error.
Always explicitly include http:// for non-SSL servers.
Tailscale Sidecar Setup
If you’re running Audiobookshelf in Docker with a Tailscale sidecar container (no port exposure), your URL is simply the container’s MagicDNS name:
http://audiobookshelf
No port number needed since the sidecar handles routing.
Split Tunnel Considerations
If you have Tailscale configured with split tunneling (only routing certain traffic through the VPN):
- Make sure your Audiobookshelf server’s IP/hostname is included in the routed subnets
- Or use the Tailscale IP directly (found in your Tailscale admin console)
Local vs Remote Access
Want different URLs for home vs away? Currently SoundLeaf uses one server URL. Options:
- Always use Tailscale - Works both locally and remotely
- Local DNS override - Configure your router or Pi-hole to resolve your domain to the local IP when on your home network
- Sign out and back in - Switch URLs manually when changing networks
Troubleshooting
”Connection failed” error
- Verify Tailscale is connected on your iPhone (check the Tailscale app)
- Try the Tailscale IP instead of hostname:
http://100.x.x.x:13378 - Confirm you can reach the server in Safari first
Works in browser but not SoundLeaf
Make sure you’re including http:// in the URL. Browsers auto-detect the protocol; SoundLeaf defaults to HTTPS if not specified.
Intermittent disconnections
- Check your Tailscale key hasn’t expired
- Ensure “Allow incoming connections” is enabled on the server’s Tailscale client
- Try disabling battery optimization for Tailscale on your server if applicable