Requirements
Prepare a Linux host, outbound network access and writable directories for the agent.
Platform
Use Linux on x86_64 with glibc and the standard loader at /lib64/ld-linux-x86-64.so.2. Run the --canary check on each host before relying on it.
License
Your executable contains your organization's license. You do not put an API key in the configuration. Keep the file private and contact support for a replacement if the associated API key changes or is revoked.
Network
The agent uses IPv4. Keep its listeners on loopback; it needs no public inbound port.
Allow these outbound connections:
| Protocol | Destination | Purpose |
|---|---|---|
| DNS | Your resolver | Resolve region host names |
| QUIC on UDP 443 | Region hosts under sol.zerocopy.sh | Connect to SWQoS |
| QUIC on UDP | Validator TPU addresses, on varying ports | Send transactions directly from your host |
Validator destinations change. If your firewall allows only the region hosts, the agent can still send through a region, but cannot send directly to validators.
Keep the system clock correct for TLS certificate checks. The connection uses UDP directly, so an HTTP proxy cannot carry it.
Host
- A dedicated account to run the agent. These guides use the user and group
swqos. - An executable directory writable by that account, so automatic updates can install.
- A writable socket directory if you use IPC, with access limited to your client accounts.
- One CPU core for IPC busy polling while clients are connected, or
ipc_busy_poll = falsefor lower idle CPU use. See Busy polling.
The service example uses systemd. You can also run the agent in the foreground.