Skip to content

auberge host detect-tailscale-ip

Detect and cache the host’s Tailscale IPv4 address.

Terminal window
auberge host detect-tailscale-ip [NAME]
# Alias: auberge h dti

If NAME is omitted, you’ll be prompted to select a host.

  1. SSHs into the host using its existing SSH key.
  2. Runs tailscale ip -4 on the remote.
  3. Picks the first CGNAT IPv4 address (100.64.0.0/10).
  4. Persists it to ~/.config/auberge/hosts.toml under the host’s tailscale_ip field, and regenerates ~/.ssh/config.d/auberge.conf.

The address is a fact, not a decision: this command never sets or clears prefer_tailnet, so caching an address for a host never starts routing over it. Enabling the route is auberge host edit.

Once cached, auberge dns set-all --host <name> automatically points tailnet-only subdomains (apps with tailnet_only: true in their playbook meta — currently bichon and paperless) at this IP, without needing per-app <app>_tailscale_ip keys in config.toml.

Terminal window
# Detect for a specific host
auberge host detect-tailscale-ip auberge
# Interactive (prompts for host)
auberge host detect-tailscale-ip

After running, hosts.toml gains a line like:

[[hosts]]
name = "auberge"
address = "203.0.113.10"
# …
tailscale_ip = "100.99.62.26"
  • SSH key not found: run auberge ssh keygen --host <name> first.
  • tailscale not on the remote PATH: install Tailscale on the host (Auberge’s infrastructure role does this).
  • No CGNAT IPv4 returned: the Tailscale daemon may not be Running; check systemctl status tailscaled on the host.