Skip to content

Desktop app troubleshooting

The WorkingVPN desktop app creates a system-wide tunnel, which every desktop operating system treats as a privileged operation. Most desktop problems fall into three groups: the one-time permission step did not complete, security software is blocking the tunnel, or DNS is being answered outside it.

Start here: what the error code means

When a connection fails, WorkingVPN shows a message ending in a short code such as (SETUP-02). That code is deliberately the same in every language, so it is the fastest thing to search for or quote to us.

CodeWhat it meansWhat to do
SVC-01The background service isn’t running (Windows)Reinstall WorkingVPN. See Step 1.
SETUP-02The VPN couldn’t be set up on your deviceStep 1, then Step 2.
NET-03The server couldn’t be reachedCheck your internet, then try another location.
CFG-04A problem with that location’s settingsTry another location.
CFG-05Your VPN configuration couldn’t be loadedCheck your internet connection and try again.
PERM-06Permission to set up the VPN was deniedApprove the prompt and try again. See Step 1.
UNK-00Something unexpectedQuit and reopen the app. If it persists, contact us with the code.

To quit fully on desktop, right-click the WorkingVPN tray icon and choose Quit rather than just closing the window.

Step 1: Complete the one-time permission step

Each platform asks for permission once, the first time you connect. If that prompt was dismissed or denied, connecting will keep failing until it’s done.

Windows. WorkingVPN installs a background service to manage the tunnel. If it isn’t installed, the app shows a Set up the VPN service dialog with a Set up button, and Windows then asks for permission through a User Account Control prompt. Approve it. There is no need to run WorkingVPN as an administrator; the service handles the privileged work, and running the app elevated does not substitute for it. If the dialog does not appear but connecting still fails with SVC-01, reinstall from the Downloads page.

macOS. WorkingVPN installs a small background helper. The first time you connect, the app opens System Settings for you and waits.

  1. Open System Settings → General → Login Items & Extensions.
  2. Find WorkingVPN under the “Allow in the Background” list.
  3. Turn it on.
  4. The app continues on its own once you do. No restart, no password.

This is a single approval, and it stays approved. If the helper is ever turned off again, the app will ask you to re-enable it in the same place.

One thing to know: because WorkingVPN on macOS does not use a Network Extension, macOS shows no VPN badge in the menu bar and no entry under Network settings. That is expected. The app’s own window is where the connection status lives.

Linux. WorkingVPN ships as a .deb and a .rpm. The package’s post-install step grants the binary at /opt/WorkingVPN/WorkingVPN the cap_net_admin and cap_dac_override capabilities, which is what lets it create the tunnel interface without running as root.

If connecting fails with SETUP-02, check that the capabilities were actually applied:

Terminal window
getcap /opt/WorkingVPN/WorkingVPN

You should see cap_dac_override,cap_net_admin=eip. If the output is empty, the post-install step did not run, usually because libcap2-bin (Debian/Ubuntu) or libcap (Fedora/RHEL) was missing. Install it and reinstall the package.

Step 2: Check firewall and antivirus

Security software often treats VPN traffic as suspicious and blocks it without saying so.

Windows Defender Firewall:

  1. Open Windows Security → Firewall & network protection → Allow an app through firewall.
  2. Click Change settings (this needs administrator rights).
  3. Find WorkingVPN and enable it for both Private and Public networks.
  4. If it isn’t listed, click Allow another app and browse to the WorkingVPN executable.

Third-party antivirus (Norton, McAfee, Avast, Kaspersky, and similar) usually ships its own firewall that overrides Windows Defender. Add WorkingVPN as an exception in that product’s own settings; the steps differ for every one, so check its documentation.

macOS. The built-in firewall rarely blocks VPN apps, but third-party tools such as Little Snitch, LuLu, and Intego do. Check their logs for blocked connections from WorkingVPN or from its background helper.

Linux. iptables or nftables rules can block the tunnel. If you manage your own firewall, allow outbound traffic to the VPN server and permit forwarding on the tunnel interface.

Step 3: Check for DNS conflicts

If WorkingVPN connects but websites do not resolve, DNS queries are being answered somewhere other than through the tunnel.

Windows. Open Command Prompt and run ipconfig /flushdns, then disconnect and reconnect.

macOS. Open Terminal and run:

Terminal window
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Then reconnect.

Linux (systemd-resolved). systemd-resolved can intercept DNS queries and route them around the VPN. Check where queries are going:

Terminal window
resolvectl status

If DNS is still pointed at your ISP while connected, temporarily stop systemd-resolved to confirm that’s the cause:

Terminal window
sudo systemctl stop systemd-resolved

Remember to start it again afterwards; leaving it stopped will break name resolution once you disconnect.

Step 4: Try another location

If one location fails repeatedly with NET-03 or CFG-04 while others work, that location is the problem rather than your machine. Switch to a nearby country and try again.

Step 5: Reinstall

If nothing above helps, remove the app and reinstall from the Downloads page. Pick the build that matches your machine: Apple Silicon or Intel on macOS, and the right architecture for your Linux distribution.

Still stuck?

Email [email protected] with:

  • The reference code from the error message, such as SETUP-02
  • Your OS and version, for example “Windows 11 23H2”, “macOS Sequoia 15.3”, “Ubuntu 24.04”
  • The exact error message or symptom
  • Which antivirus or security software is running
  • Whether the problem happens on every network or only on one

A screenshot of the error is genuinely useful, since it captures the code and the wording together.