Private Swarms
Run your own relay and an isolated PSK overlay instead of the default public bootstrap.
Note: a swarm key protects network membership (reachability). It never
authorizes Pipe access — every open still requires a signed Access Lease. Treat swarm keys as secrets;
rotate by generating a new key and rejoining all nodes.
1. Generate a swarm key
$ tubo keygen swarm --out swarm.key
2. Run a transport-only relay
$ tubo relay --listen /ip4/0.0.0.0/tcp/4001 \ --public-addr /ip4/1.2.3.4/tcp/4001 \ --swarm-key ./swarm.key relay address: /ip4/1.2.3.4/tcp/4001/p2p/12D3Koo...
Open TCP 4001 in the host and cloud firewalls. The relay forwards bytes and assists NAT traversal — it never authorizes.
3. Join nodes to the overlay
$ tubo join overlay --relay /ip4/1.2.3.4/tcp/4001/p2p/12D3Koo... --swarm-key ./swarm.key
4. Attach, share, connect
Exactly the standard flow — invites, redemption, and Access Leases are unchanged; only reachability differs.
Zero-config alternative
Without join overlay, Tubo uses the embedded, signed public bootstrap bundle
(relay.tubo.click, pinned PeerID, verified Ed25519 signature, expiry-bounded).
No configuration, no Scope, no discovery, and no user-configured authority are required.