Skip to content
Cloudj

Proxy guides

How to set a proxy on Windows 11 and macOS, step by step

Set a proxy on Windows 11 and macOS through system settings or the command line, learn which apps follow it, and why SOCKS5 with a password needs another route.

Updated · 6 min read

To set a proxy on Windows 11 or macOS you only need a host and a port, and both systems put the setting a few clicks deep. The harder part is knowing what happens next: which apps follow the system proxy, which ignore it, and why an authenticated SOCKS5 proxy so often fails at this level. This guide gives the exact steps for both systems, the command-line equivalents, and the alternatives for when the system setting is the wrong tool.

What a system proxy does and does not do

A system proxy is a suggestion the operating system offers to apps. Browsers like Edge, Chrome and Safari follow it, as do many desktop apps built on the same networking libraries. Others do not:

  • Firefox uses its own settings unless you tell it to use the system proxy.
  • Command-line tools such as curl, git and package managers usually read environment variables instead.
  • Games, some chat apps and many background services ignore it entirely.

So a system proxy is a good fit for "my browser and everyday apps should leave from this IP". It is not a way to force all traffic through the proxy; that is what a VPN does, and the proxy vs VPN article explains the difference.

Authentication: the limit you will hit first

System proxy settings were designed around HTTP proxies:

  • Windows 11 has fields for an address and a port, and no fields for a username or password. Apps that follow the system proxy may show their own sign-in box for an HTTP proxy. The Settings page has no SOCKS5 option.
  • macOS has a "Proxy server requires password" switch, including for the SOCKS proxy. In practice, many apps do not pass those credentials to a SOCKS5 proxy, and connections fail or fall back to your real IP.

The reliable fix is an IP whitelist: let the proxy accept your public IP without credentials, and enter only host and port. The second option is to configure the proxy inside the app itself, where the app supports credentials (Firefox for HTTP, antidetect browsers, scraping libraries). The trade-offs are covered in IP whitelist vs username and password.

On Cloudj you can replace password access with an IP whitelist of up to 20 addresses, and switch an order between HTTP and SOCKS5 where the location supports it, both from the console. For system settings, HTTP plus a whitelist is the least troublesome combination.

Set a proxy on Windows 11

  1. Open Settings (Windows key + I).
  2. Choose Network & internet, then Proxy.
  3. Under Automatic proxy setup, turn off Automatically detect settings unless your company network requires it.
  4. Under Manual proxy setup, find Use a proxy server and click Set up.
  5. In the Edit proxy server window, switch Use a proxy server on.
  6. Enter the proxy host in Proxy IP address and the number in Port.
  7. In the exceptions box, list addresses that should bypass the proxy, separated by semicolons, for example localhost;127.0.0.1;*.local.
  8. Tick Don't use the proxy server for local (intranet) addresses if you use printers or devices on your home network.
  9. Click Save.

To turn it off, return to the same window and switch Use a proxy server off.

Windows background services and WinHTTP

Some Windows services and older apps use a separate proxy setting called WinHTTP. If one of them should use the proxy, open Terminal as administrator and run:

netsh winhttp set proxy proxy-server="HOST:PORT" bypass-list="<local>"
netsh winhttp show proxy

Undo it with:

netsh winhttp reset proxy

Command-line tools on Windows

Most command-line tools read the proxy from environment variables. In a PowerShell window:

$env:HTTP_PROXY = "http://USERNAME:PASSWORD@HOST:PORT"
$env:HTTPS_PROXY = "http://USERNAME:PASSWORD@HOST:PORT"
curl.exe https://example.com

These variables last for that window only, and they can carry credentials, which the Settings page cannot.

Set a proxy on macOS

The steps below match recent macOS versions with System Settings.

  1. Open the Apple menu and choose System Settings.
  2. Click Network in the sidebar.
  3. Choose the service you use, Wi-Fi or Ethernet. For Wi-Fi, click Details... next to the network you are connected to; for Ethernet, click Details....
  4. Select Proxies in the left column of the window that opens.
  5. Turn on the proxy type that matches your proxy. For an HTTP proxy, turn on both Web proxy (HTTP) and Secure web proxy (HTTPS) and use the same host and port in each; for a SOCKS5 proxy, turn on SOCKS proxy.
  6. Enter Server and Port for each type you turned on.
  7. Leave Proxy server requires password off if you use an IP whitelist. Turn it on and enter username and password only for an HTTP proxy, and test the apps you care about.
  8. Under Bypass proxy settings for these hosts & domains, keep local entries such as *.local and 169.254/16.
  9. Click OK.

Proxy settings apply to that network. If you switch to another Wi-Fi network or plug in Ethernet, set the proxy there too.

The same steps from Terminal

networksetup changes the same settings and is handy for scripts. First list your services:

networksetup -listallnetworkservices

Then set an HTTP proxy for both web and secure web traffic on Wi-Fi:

networksetup -setwebproxy "Wi-Fi" HOST PORT
networksetup -setsecurewebproxy "Wi-Fi" HOST PORT

Or a SOCKS proxy:

networksetup -setsocksfirewallproxy "Wi-Fi" HOST PORT

Turn them off with networksetup -setwebproxystate "Wi-Fi" off, -setsecurewebproxystate and -setsocksfirewallproxystate in the same way. scutil --proxy prints what the system is currently using.

Command-line tools on macOS

As on Windows, Terminal tools read environment variables:

export HTTPS_PROXY="http://USERNAME:PASSWORD@HOST:PORT"
curl https://example.com

Which route to choose

GoalBest route
Browser and everyday apps on one IPSystem proxy with HTTP and an IP whitelist
One browser on a proxy, the rest directFirefox's own settings or a Chrome launch flag, see the Chrome and Firefox guide
SOCKS5 with a username and passwordConfigure it in the app, or use an IP whitelist
Scripts and command-line toolsEnvironment variables or the tool's own proxy option
Several identities on one computerSeparate browser profiles, each with its own proxy

Check it works

Open a "what is my IP" page in a browser that follows the system proxy and confirm the IP and country. For a quick test without a browser, the test a proxy with curl guide has ready-made commands.

If the IP does not change, check that you turned on both the HTTP and HTTPS entries on macOS, that the app actually follows the system proxy, and, if you use a whitelist, that your current public IP is on it.

Cloudj proxies for desktop use

Cloudj sells dedicated proxies, each IP assigned to one customer. Dedicated IPv4 proxies, static IPs registered to an ISP, are available in Vietnam, the United States, Japan, South Korea, Singapore, Hong Kong and the United Kingdom, and static residential proxies on home-broadband IPs are available in the United States and Vietnam. For background on choosing, read the dedicated proxy guide, the SOCKS5 vs HTTP proxy explainer and datacenter vs static ISP proxy.

FAQ

Why does Windows 11 not ask for my proxy password?

The Settings page has no credential fields. Apps that follow the system proxy may prompt on their own for an HTTP proxy; for anything else, use an IP whitelist.

Can I set a SOCKS5 proxy in Windows 11 Settings?

Not in the Settings page. Use an app that supports SOCKS5 directly, such as Firefox, together with an IP whitelist.

Does the system proxy cover all my traffic?

No. Only apps that choose to follow it. Use a VPN if you need every connection to go through another IP.

My whitelisted proxy stopped working. Why?

Your public IP probably changed, which is common on home connections. Add the new IP to the whitelist.

Next step

Choose HTTP with an IP whitelist for system-wide settings and keep authenticated SOCKS5 for apps that handle it themselves. You can manage the whitelist, protocol and credentials in the Cloudj console, and check live prices on the pricing page.

Where to go next

Deploy a server or order proxies

Pick a location in the console, see the live price, and pay from your balance.