RedVPN for
Mac
Two ways to run RedVPN on a Mac: the desktop app, built for macOS, and a small command-line client for terminals and servers. Both use the same account and the same plan as your phone.
The Mac app
A native macOS app, not a phone app in a window. It lives in the menu bar, follows your light or dark appearance, and puts the whole picture of your Mac's traffic on one screen.
| Menu bar | Connect, disconnect, pick a region and see today's blocked count without opening a window. ⌘K connects. Open at login and connect when the app opens are one switch each in Settings. |
|---|---|
| Protect Mode | Known malware, phishing and hijacked destinations are refused before they reach your Mac, with the reason, an Allow button, rules and block profiles. |
| Appearance | Light, dark, or whatever your Mac is set to. |
Coming next
| Blocked, as a table | Every refusal is one row you can search, with the reason and an Allow button that stays where it is however long the list gets. |
|---|---|
| Apps | Which application talks to what. Each app with its destinations, how often, and a rule per app or per destination: allow, ask, block. Learn mode records first and asks nothing; enforce mode asks about apps you have not decided on, one app at a time, and one answer can cover every waiting connection of that app. |
| Map | Where your traffic goes: one bubble per country sized by data, red where something was blocked, with the destinations and the apps behind each one beside it. |
| Timeline | Throughput, new connections by app and blocks over the last 15 minutes, hour or day; the busiest destinations with their share; and a flow diagram from apps to countries. |
| Ask RedVPN on the Mac | Questions about your own traffic, answered on the Mac from the data it holds. Free-form, on-device answers need macOS 26 with Apple Intelligence; earlier Macs get the standard set of questions and answers, still computed on the Mac. |
Download
Apple silicon and Intel, macOS 13 or later; the Apps, Map and Timeline pages need macOS 14. Signed and notarized by Red Team LTD: open the disk image and drag RedVPN to Applications. On first connect macOS asks once to allow the RedVPN network extension in System Settings, as every Mac VPN and firewall does; the per-app firewall and routing ask the same way when you turn them on. If you have the App Store version installed, remove it first. The checksum is at /dist/mac/SHA256SUMS; this release is 05fce7d0c5efb24d83a14e6d3c8d5ba1fc03696e891e2ae38e72d15a5ff1f273.
RedVPN on the App Store installs the iPhone and iPad app on an Apple silicon Mac, with the same tunnel and Protect Mode but without the per-app pages.
The command-line client
A small command-line client for Apple silicon and Intel Macs. It runs without administrator rights and gives every program on the Mac a local proxy on 127.0.0.1:1080.
Install
curl -fsSL https://vpn.red/dist/cli/install-macos.sh | shOne universal binary (macOS 11 or later), signed by Red Team LTD. It goes to /usr/local/bin (the installer asks for your password only if that folder is not yours) and the download quarantine flag is cleared. Remove it with sudo rm /usr/local/bin/redvpn.
Use
redvpn up # connect; prints the proxy address when ready
curl --socks5-hostname 127.0.0.1:1080 https://ip-geo.redvpn.workers.dev/ # prints: ok
redvpn status # or: redvpn status --json
redvpn down
Point a browser, a terminal (ALL_PROXY=socks5h://127.0.0.1:1080) or any application that speaks SOCKS5 at the proxy. In Safari and Chrome that is System Settings, Network, your connection, Details, Proxies, SOCKS Proxy. Use the hostname variant (socks5h, --socks5-hostname) where there is a choice, so names are resolved on the far side. If port 1080 is already taken, redvpn up prints the port it used instead; --port picks one.
Your plan
A new Mac starts on the free plan, like a new phone. To use the plan you bought on vpn.red or in the app, sign in with the same e-mail address:
redvpn login # e-mail, then the 6-digit code we send you
redvpn account # plan, remaining free data, account code
Already have a device id from another install? redvpn login --cid <id> adopts it. The id and the session live in ~/.config/redvpn, readable by you only; redvpn logout drops the session.
Manual setup
If the servers that hand out the connection settings cannot be reached from your network, sign in at vpn.red/me, click Download VPN profile (it saves redvpn-profile.json) and load it:
redvpn import redvpn-profile.json
The file is checked the same way a downloaded configuration is (it is signed; an edited or foreign file is refused), then stored in ~/.config/redvpn. A profile older than the one already stored is refused unless you add --force. redvpn up still looks for newer settings whenever it can reach them.
Whole Mac (experimental)
sudo redvpn up --tun routes all traffic from the Mac through RedVPN instead of only what you point at the proxy. It needs administrator rights and a hev-socks5-tunnel binary on PATH (the same bridge the phones use; build it from its source with make, which needs the Xcode command line tools). It creates a utun interface (--tun-dev utunN picks the number). DNS keeps using your system resolvers in this mode. The proxy mode above is the supported one; treat this as a preview and read redvpn --help.
Verify the download
The installer checks the binary against /dist/cli/SHA256SUMS before it installs anything. To do it by hand:
curl -fsSLO https://vpn.red/dist/cli/redvpn-macos-universal
curl -fsSLO https://vpn.red/dist/cli/SHA256SUMS
grep ' redvpn-macos-universal$' SHA256SUMS | shasum -a 256 -c
codesign -dv --verbose=2 redvpn-macos-universal # Authority: Developer ID Application: Red Team LTD
chmod +x redvpn-macos-universal
xattr -d com.apple.quarantine redvpn-macos-universal 2>/dev/null # only needed if a browser downloaded it
sudo install -m 755 redvpn-macos-universal /usr/local/bin/redvpn
Version 0.3.0:
d56bda3287e0d5c39dae5b0c5560fce8e185eea36afc936792234bcc4aedc940 redvpn-macos-universal
Older releases stay at /dist/cli/<version>/.
Exit codes
| 0 | ok (status: connected) |
|---|---|
| 1 | error (status: not connected) |
| 2 | usage |
| 3 | not entitled: free data used up, get Premium or sign in |
| 4 | could not reach any server from this network |
| 5 | already running |
| 6 | missing privilege or tool (--tun) |