You need systemd, curl, and root access.
-
Stop the regular Tailscale service so it does not compete for routes and DNS:
sudo systemctl disable --now tailscaled
-
Download the stable-release installer, inspect it, then install and start the service:
curl -fLO https://tailmix.net/install.sh sudo sh install.sh
-
Log in to your first tailnet:
sudo tailmix ts login
Open the login link it prints. tailmix creates a profile named
default. -
Check it:
tailmix status tailmix ts status
If default is listed and the second command shows the tailnet, you are done.
To connect another tailnet, run sudo tailmix profiles add work and then
sudo tailmix ts -p work login.
The installer enables tailmixd at boot and starts it immediately. It keeps
state in /var/lib/tailmix and runtime sockets in /run/tailmix.
Check the service, then follow its logs:
sudo systemctl status tailmixd
sudo journalctl -u tailmixd -fRestart it after fixing the problem:
sudo systemctl restart tailmixdtailmix update status
sudo tailmix update check
sudo tailmix update applyAutomatic stable-release updates are enabled by default. The daemon checks
after a randomized startup delay and then daily, verifies the release checksum,
switches tailmix and tailmixd together, and restarts itself. No systemd timer
is installed. Use sudo tailmix update disable to opt out and
sudo tailmix update enable to turn automatic updates back on.
Most users can skip this section. Run:
sudo systemctl edit tailmixdAdd a drop-in such as:
[Service]
Environment="TAILMIXD_FLAGS=-synthetic-pool=10.250.0.0/16 -verbose"Then apply it:
sudo systemctl restart tailmixdThe service already sets the state path and socket directory. Development and packaging options are documented in DEVELOPMENT.md.