827c13b69e
dont build netstack in CI additional rust 2024 fixes fixes removed temp.rs first round of cleanup removed duplicated NS types moved gateway probe to the monorepo
65 lines
1.5 KiB
Markdown
65 lines
1.5 KiB
Markdown
# Nym Gateway Probe (netstack)
|
|
|
|
The gateway probe uses `netstack` to do various parts of the gateway test:
|
|
|
|
- send ICMP pings
|
|
- download files
|
|
- check the top-up metadata endpoint
|
|
|
|
## Running locally
|
|
|
|
You will need:
|
|
- a Wireguard config
|
|
- be registered with a gateway
|
|
- have topped up your bandwidth with the gateway
|
|
- a mnemonic for an account with NYM tokens to issue `zk-nyms`
|
|
|
|
You can get you Wireguard config by running the `nym-gateway-probe` locally:
|
|
|
|
```
|
|
SHOW_WG_CONFIG=true nym-gateway-probe -g ${IDENTITY KEY} run-local --mnemonic=${MNEMONIC}
|
|
```
|
|
|
|
In the probe logs you will see the Wireguard config:
|
|
|
|
```
|
|
private_key=...
|
|
listen_port=50239
|
|
public_key=...
|
|
preshared_key=0000000000000000000000000000000000000000000000000000000000000000
|
|
protocol_version=1
|
|
endpoint=13.245.9.123:51822
|
|
last_handshake_time_sec=0
|
|
last_handshake_time_nsec=0
|
|
tx_bytes=0
|
|
rx_bytes=0
|
|
persistent_keepalive_interval=0
|
|
```
|
|
|
|
In the `main()` function, uncomment the lines and set your Wireguard config:
|
|
|
|
```go
|
|
func main() {
|
|
var _, err = ping(NetstackRequestGo{
|
|
WgIp: "10.1.155.153",
|
|
PrivateKey: "...",
|
|
PublicKey: "...",
|
|
Endpoint: "13.245.9.123:51822",
|
|
MetadataEndpoint: "http://10.1.0.1:51830",
|
|
Dns: "1.1.1.1",
|
|
IpVersion: 4,
|
|
//PingHosts: nil,
|
|
//PingIps: nil,
|
|
//NumPing: 0,
|
|
//SendTimeoutSec: 0,
|
|
//RecvTimeoutSec: 0,
|
|
//DownloadTimeoutSec: 0,
|
|
MetadataTimeoutSec: 5,
|
|
//AwgArgs: "",
|
|
})
|
|
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
}
|
|
``` |