← Back to blog
$ curl -x http://user:pass@xxx.nodetonet.com:48888 https://api.ipify.org→ 188.114.96.7$ curl ... -H "X-Session: abc" # sticky→ 188.114.96.7 # same IP (TTL 600s)$ curl ... -H "X-Rotate: 1" # rotate→ 92.184.117.42 # new IP INSTALL AGENT nodetonet.com

Installing the Nodetonet agent on Windows, macOS and Linux

N Nodetonet Team
May 8, 2026 7 min read

The Nodetonet desktop agent is a small, single-binary daemon that turns any Windows, macOS or Linux machine into a proxy back-end. Once it is running and paired with a token, the device appears in your dashboard as a green ONLINE device and you can start routing mobile proxy, rotating proxy or HTTP tunnel traffic through it within seconds.

This guide walks through every platform step-by-step, including the platform-specific friction you will hit on first run. For the Android agent (phones and tablets), see Your first token and Android pairing. Token creation is the same on every platform and is explained at the end of that post.

Before you begin: create a token

Every agent instance is tied to a proxy token. Tokens are how the panel identifies a device, selects it for traffic and tracks its health. If you have not created one yet, open /tokens in the panel, click New token, give it a label, and copy the value — you will paste it into the agent on first launch. One token = one agent process; you can run as many agents as you like on separate machines, each with its own token.

If you want that agent to be part of a round-robin rotating proxy pool, create a token group and add the token to it after setup. For sticky sessions — where a caller appends -session-XXXX to the proxy username — no extra configuration is needed on the agent side.

1. Windows

Installation on Windows is the simplest of the three paths. From the /download page, choose the Windows tab and download nodetonet-agent-windows-x64.exe. The binary is code-signed, so Windows Defender SmartScreen should allow it to run without a warning.

  1. Double-click the .exe. A small console window opens.
  2. On first launch the agent prompts: "Paste your token:". Copy your token from /tokens and right-click inside the console window to paste it.
  3. The agent saves the token to %APPDATA%Nodetonetconfig.json and reconnects automatically on every subsequent launch — you will never be asked for the token again on that machine.

Running on Windows startup (no third-party tools)

Open the Run dialog with Win+R, type shell:startup and press Enter. Drop a shortcut to the .exe file into the folder that opens — Windows will launch the agent for you whenever the user logs in. If you need service-like behaviour (restarts on failure, runs without a logged-in user), use a Scheduled Task with a "Run whether user is logged on or not" setting and the "Restart on failure" action tab.

2. macOS

macOS adds a layer of friction because Gatekeeper blocks unsigned third-party binaries by default. From the download page choose the macOS tab and grab nodetonet-agent-macos-x64. The same binary runs on Apple Silicon under Rosetta 2; a native arm64 build is planned.

  1. Open Terminal and make the file executable: chmod +x ~/Downloads/nodetonet-agent-macos-x64
  2. Try to launch it: ~/Downloads/nodetonet-agent-macos-x64. macOS will refuse with "cannot be opened because the developer cannot be verified."
  3. In Finder, locate the binary, right-click it and choose Open. A dialog appears with an Open button — click it. This whitelists the binary in Gatekeeper's database; subsequent launches require no extra step.
  4. Paste your token at the prompt. Configuration is saved to ~/Library/Application Support/Nodetonet/config.json.
Faster Gatekeeper bypass: run xattr -d com.apple.quarantine ~/Downloads/nodetonet-agent-macos-x64 once in Terminal before launching. The quarantine extended attribute is the only thing triggering the warning; removing it lets the binary open normally with no dialog.

Running on macOS login

The recommended approach is a launchd plist. Create ~/Library/LaunchAgents/com.nodetonet.agent.plist with a ProgramArguments key pointing to the binary and RunAtLoad set to true, then run launchctl load ~/Library/LaunchAgents/com.nodetonet.agent.plist. The agent will start automatically on every login and restart if it exits.

3. Linux

Linux is the most flexible platform. Download nodetonet-agent-linux-x64 from the download page. The binary is statically linked — no glibc version dance, no missing shared libraries, no Docker wrapper required. It runs on Ubuntu 20.04, Debian, CentOS, Alpine and virtually anything with a 64-bit kernel.

curl -L https://nodetonet.com/agent/nodetonet-agent-linux-x64 -o /usr/local/bin/nodetonet-agent
chmod +x /usr/local/bin/nodetonet-agent
nodetonet-agent --token YOUR_TOKEN_HERE

The agent runs in the foreground and logs to stdout. Press Ctrl+C to stop. After the first --token invocation the config is persisted to ~/.config/nodetonet/config.json, so subsequent runs need no flag.

4. Running as a systemd service (Linux)

For headless or unattended servers, running the agent as a proper systemd unit is strongly recommended — it starts at boot and restarts automatically on crash.

Create the service file at /etc/systemd/system/nodetonet-agent.service:

[Unit]
Description=Nodetonet agent
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/usr/local/bin/nodetonet-agent
Restart=always
RestartSec=5
User=nodetonet
Group=nodetonet
MemoryMax=256M
TasksMax=128

[Install]
WantedBy=multi-user.target

Then create a dedicated system user, write the token config under that user, and enable the service:

useradd --system --create-home --shell /usr/sbin/nologin nodetonet
sudo -u nodetonet nodetonet-agent --token YOUR_TOKEN_HERE
# Press Ctrl+C once the config file is written
systemctl daemon-reload
systemctl enable --now nodetonet-agent
systemctl status nodetonet-agent

The first invocation as the nodetonet user writes the token into that user's config directory; from that point on, systemd manages restarts automatically. Check logs with journalctl -u nodetonet-agent -f.

Platform comparison at a glance

PlatformBinary nameConfig pathAuto-start method
Windowsnodetonet-agent-windows-x64.exe%APPDATA%Nodetonetconfig.jsonStartup folder or Scheduled Task
macOSnodetonet-agent-macos-x64~/Library/Application Support/Nodetonet/config.jsonlaunchd plist
Linuxnodetonet-agent-linux-x64~/.config/nodetonet/config.jsonsystemd unit

5. Verifying the connection

Open /tokens in the panel after starting the agent. The row for your token should flip to ONLINE within a few seconds, with device metadata (OS, hostname) visible in the device column. You can also open our What is my IP tool and route a request through the newly paired token to confirm traffic is flowing and the exit IP matches the machine's connection.

If the token stays OFFLINE for more than 30 seconds:

For a deeper look at what heartbeat timing, timeout logic and the ONLINE/OFFLINE state machine actually mean, read Device health — what ONLINE actually means.

What to do after installation

Frequently asked questions

What is the Nodetonet desktop agent and do I need it?
The desktop agent is a lightweight background process that connects a Windows, macOS or Linux machine to the Nodetonet panel over an encrypted tunnel. You need it if you want that machine to act as a proxy back-end or to host HTTP tunnels. If you are pairing a mobile phone instead, the Android app covers the same role.
Is the agent safe to install? Does it need administrator rights?
The agent binary is code-signed and does not require administrator rights to run. It writes its config to a user-level directory and only opens outbound connections — no inbound ports are exposed on the host. For systemd on Linux it is best practice to run it under a dedicated non-root system user, which the setup steps above demonstrate.
My token shows OFFLINE after installation — what should I check first?
The most common cause is an outbound firewall blocking TCP port 443 to vds.nodetonet.com. Check the agent log (stdout on Windows/macOS, or journalctl -u nodetonet-agent on Linux) — it logs every reconnect attempt and the failure reason. If you see an auth error, verify that you copied the full token without extra spaces.
Can I run the agent as a Windows service without NSSM or third-party tools?
Yes. Use the built-in Windows Task Scheduler: create a task triggered "At log on" (or "At startup" with the SYSTEM account), set it to restart on failure, and point it at the agent .exe. This gives you service-like behaviour — auto-start, restart on crash — without installing anything extra.
Can I pair multiple machines to the same Nodetonet account?
Yes — one token per agent process, but you can create as many tokens as you need. Each machine gets its own token, appears as a separate device in the panel, and can be added to one or more token groups to form a rotating proxy pool.
How do I update the agent when a new version is released?
Stop the running agent, download the new binary from the download page, replace the old file, and restart. The config file (token) is separate from the binary and is preserved across upgrades — you will not need to re-enter the token. On Linux the replacement is a single curl command followed by a systemctl restart nodetonet-agent.
N

Nodetonet Team

Building Nodetonet — a prepaid proxy + tunneling platform that replaces ngrok, Cloudflared and a residential proxy provider with a single panel.

Related posts