relay preparing for public internet

This commit is contained in:
Dobromir Popov
2026-07-09 08:01:22 +02:00
parent 9ec4ca9ce1
commit 6ba8546c55
8 changed files with 344 additions and 26 deletions

View File

@@ -349,18 +349,26 @@ curl -s http://192.168.0.179:8080/v1/network/map | python3 -m json.tool # from
### Public tracker + relay (NAT / WSL2 / internet nodes)
Nodes behind NAT cannot receive inbound connections. Run **both** services on the
tracker host; the tracker advertises the relay URL in `/v1/network/map`.
Nodes behind NAT cannot receive inbound connections. Keep the relay as its own
component, but for alpha deployments you can run it **embedded in the tracker
process**. This still uses the same `meshnet_relay.RelayServer` class as a
relay-only node, so relay-only hosts remain a clean scaling path later.
**Terminal 1 — relay:**
**Recommended alpha: one process on the tracker host, relay bound locally and
published through the same public hostname:**
```bash
.venv/bin/meshnet-tracker start \
--host 0.0.0.0 --port 8081 \
--self-url https://ai.neuron.d-popov.com \
--embedded-relay --relay-host 127.0.0.1 --relay-port 8765
```
The tracker advertises `wss://ai.neuron.d-popov.com/ws` in `/v1/network/map`.
If you want a relay-only process instead, keep running:
```bash
.venv/bin/meshnet-relay --host 0.0.0.0 --port 8765
```
**Terminal 2 — tracker:**
```bash
.venv/bin/meshnet-tracker start --host 0.0.0.0 --port 8081 --relay-url wss://ai.neuron.d-popov.com/ws
```