decred.org/dcrdex@v1.0.5/server/noderelay/README.md (about) 1 # NodeRelay 2 3 NodeRelay is a system for connecting to nodes on remote private machines. 4 This is done through a WebSockets-based reverse tunnel. 5 6 1. Run a full node on a home or otherwise private server. Coordinate credentials 7 for RPC requests (`rcpuser`, `rpcpassword`) with the server operator. 8 9 2. The server operator will expose the NodeRelay through an external IP address. 10 11 1. The server operator generates a **relay ID**, which can be any string without 12 whitespace. Each asset backend that will connect through NodeRelay will need its 13 own **relay ID**. 14 15 1. The server operator modifies the asset configuration to specify a relay ID 16 for each asset for which a noderelay is needed. 17 18 1. The server operator specifies a `noderelayaddr` in as part of the dcrdex 19 configuration. This is the external address at which source nodes will contact 20 the server. 21 22 1. Upon starting, the server will generate and store a **relayfile** to a 23 directory located by default at `~/.dcrdex/data/mainnet/noderelay/relay-files/`, 24 with a file name of e.g. `btc_0405f1069d352a0f.relayfile`. Send this file to 25 the private server. The **relayfile** is good until the relay ID is changed or 26 a new TLS key-cert pair is generated. 27 28 1. On the private server, run `sourcenode`, pointing at the relay file with 29 `--relayfile` and setting the node RPC port with `--port`. Specify a TLS 30 certificate for full node RPC with `--localcert`, if required. 31 ``` 32 ./sourcenode --relayfile btc_0405f1069d352a0f.relayfile --port 8332 33 ```