40 lines
2.0 KiB
Markdown
40 lines
2.0 KiB
Markdown
# Tailscale KH Bridge
|
|
|
|
A Tailscale inter-tailnet bridge — connects two separate Tailscale networks together so devices on each tailnet can reach each other.
|
|
|
|
**Status: STOPPED** — Both containers exited cleanly (exit code 0) approximately 14 hours before this was documented.
|
|
|
|
## Containers
|
|
|
|
| Container | Image | Role |
|
|
|---|---|---|
|
|
| `Home_Bridge` | `tailscale/tailscale:latest` | Node on the "Home" tailnet |
|
|
| `KH_Bridge` | `tailscale/tailscale:latest` | Node on the "KH" tailnet |
|
|
|
|
Both containers are on a shared bridge network (`ts_kh_bridge_tailnet-interlink`, `172.20.0.0/24`) so they can route traffic between each other.
|
|
|
|
## Compose File
|
|
**Path:** `/home/artanis/TS_KH_Bridge/docker-compose.yaml` (on the Pi)
|
|
|
|
> Dockhand reports this stack's compose location as unknown (`needsFileLocation: true`) — the path was inferred from container labels.
|
|
|
|
Compose content not available via API. Key details from container labels:
|
|
|
|
| Property | Home_Bridge | KH_Bridge |
|
|
|---|---|---|
|
|
| Service name | `home-bridge` | `kh-bridge` |
|
|
| Tailscale state | `/home/artanis/TS_KH_Bridge/home_state` (bind mount) | `/home/artanis/TS_KH_Bridge/kh_state` (bind mount) |
|
|
| `/dev/net/tun` | Bind-mounted | Bind-mounted |
|
|
|
|
## How It Works
|
|
|
|
Tailscale supports bridging two separate tailnets by running two Tailscale nodes on the same machine — one registered to each tailnet — and routing traffic between them. The two containers share a Docker bridge network (`tailnet-interlink`) which acts as the routing path between the two tailnet nodes.
|
|
|
|
- `Home_Bridge` — authenticated to the primary (`bunny-wyvern.ts.net`) tailnet
|
|
- `KH_Bridge` — authenticated to a second tailnet ("KH")
|
|
|
|
## Notes
|
|
- Both containers use **bind-mounted** Tailscale state directories (not named volumes), so state survives container recreation as long as the host paths exist
|
|
- The stack exited cleanly (code 0), suggesting it was intentionally stopped rather than crashed
|
|
- To restart: `docker compose up -d` in `/home/artanis/TS_KH_Bridge/`
|