Skip to Content
DocumentationNetworkingNetworking overview

Networking overview

Companion Hub gives you multiple options for accessing your apps, from local-only to fully exposed on the internet.

Three routes lead to the same Hub: the local network needs nothing, Tailscale keeps the path private to your own devices, and the Cloudflare Gateway tunnel gives an app a public URL without opening your router.

Settings, Network tab: a Private VPN (Tailscale) card marked Inactive with the daemon state NeedsLogin and a Log In with Tailscale button, above a Hub Pool card marked Local only, with a note that Tailscale is not connected, pooling controls, and a Save buttonSettings, Network tab: a Private VPN (Tailscale) card marked Inactive with the daemon state NeedsLogin and a Log In with Tailscale button, above a Hub Pool card marked Local only, with a note that Tailscale is not connected, pooling controls, and a Save button
Settings β†’ Network: the Private VPN (Tailscale) card and, below it, Hub Pool.

Access methods

The routes differ in who can reach an app, what you sign up for, and who terminates HTTPS. Every cell below is stated on this page or on the route’s own page.

RouteLocal networkTailscaleCloudflare Gateway
Reach it fromYour local network onlyAnywhere, from your own devicesAnywhere, from any browser
Public on the internet––Yes β€” anyone with the URL
Account you need–Tailscale (free Personal plan)CI Account β€” no Cloudflare account of your own
Port forwarding on your router–––
HTTPS handled byNone β€” plain http://Tailscale Serve, for Private VPN app linksCloudflare, automatically
SetupNothing to configureOn a Linux Hub, install Tailscale on the Hub machine and sign in, then check Settings β†’ NetworkPair your Hub with your CI Account, then choose Public Web for an app
The three access routes side by side. Manual port forwarding is no longer supported; see Expose your apps.

Local network (default)

By default, your apps are only accessible on your local network via http://<server-ip>:<port>. No configuration needed.

The Cloudflare Gateway creates a secure tunnel through Cloudflare’s network, with no port forwarding required. Pairing your Hub with your CI Account provisions the tunnel, and an app uses it when its Exposure mode is Public Web.

Settings, Network tab, scrolled down: a Pairing PIN block with a Generate PIN button and a field for a PIN from the other Hub, Discoverable devices and Pending requests lists that are empty, a Cloudflare Tunnel card marked Active, and a This Hub in your account card with Remove from account and Reset this Hub only buttonsSettings, Network tab, scrolled down: a Pairing PIN block with a Generate PIN button and a field for a PIN from the other Hub, Discoverable devices and Pending requests lists that are empty, a Cloudflare Tunnel card marked Active, and a This Hub in your account card with Remove from account and Reset this Hub only buttons
Settings β†’ Network, lower on the page: the Cloudflare Tunnel card reads Active, and This Hub in your account holds the controls that unpair the Hub.

Tailscale

For private access without exposing apps to the public internet, Tailscale creates a secure mesh VPN between your devices. Private VPN works on a Linux Hub; the Tailscale page explains the limit on macOS and Windows.

Manual port forwarding

Production Hubs no longer publish an app by forwarding ports on your router. Use the Cloudflare Gateway or Tailscale, and use a custom domain for an address you own. See Expose your apps.

Pooling inference across Hubs

If you run more than one Companion appliance, Hub Pool lets paired Hubs on the same tailnet serve each other’s AI requests, so a second machine stops sitting idle. It is not an access method β€” it changes which Hub answers an app’s inference request, not how you reach your apps β€” and it builds on the Tailscale setup above. To try it, follow Pool two Hubs, a 25-minute walkthrough that ends with a request answered by the second Hub.

Last updated on