A proxy is two things and a colon: a host and a port. Everything you do with one, configuring a browser, pointing a scraper at it, debugging a failed connection, starts with reading those two values correctly. The question "what is my proxy server address?" splits into two very different cases, and confusing them wastes hours.
The first case: a proxy is already configured on your machine and you need to find where. That value lives in your operating system or browser network settings, and on a managed network it may have been pushed automatically. The second case: a provider handed you an endpoint like proxy.example.com:8080 and you need to read it and point a tool at it. This guide covers both, step by step, on Windows, macOS, Linux, and the major browsers, with command-line checks you can paste so you never have to trust a settings panel that lies.
Address vs IP vs port: read the endpoint first
Get the vocabulary straight first, because the fields are labeled inconsistently across platforms. A proxy server address is the host you connect to: either a hostname (proxy.example.com) or a literal IP (198.51.100.10). The port is the number after the colon (8080, 3128, and 1080 are common) that picks which service on that host to talk to. Together they form the endpoint, which many tools want as one string, host:port.
One thing that trips people up: the proxy's address is not your IP, and it is not the IP a website ends up seeing. It is the machine in the middle; the site sees a separate IP the proxy exits from. If that distinction is fuzzy, the mechanics are in what is a proxy server. A provider will also give you a username and password; those are not part of the address, but most tools accept them inline as user:pass@host:port.
Manual, automatic, or none. Manual means a fixed host and port were typed into settings. Automatic means a PAC file or WPAD URL decides the proxy per request, so the settings panel shows a script URL, not a host:port, and you have to read the script (or run a CLI check) to see the real address. None means no proxy is set, and an empty panel is the expected result, not a bug.
Find your proxy address on Windows
Windows keeps proxy settings in two places that can disagree: the modern Settings app (per-user) and the system-wide WinHTTP store that services use. Check both.
Through Settings
- Open Settings and go to Network & internet → Proxy.
- Under Manual proxy setup, if Use a proxy server is on, the Address and Port fields hold your host:port.
- Under Automatic proxy setup, a populated Script address means a PAC file is in charge; the real host:port lives inside that script.
Through the command line
The Settings panel only shows the per-user config. To see what the system actually applies, query the WinHTTP store, which is authoritative for many background services.
# System-wide proxy (services, not just your browser) netsh winhttp show proxy # Per-user setting the apps read, straight from the registry reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer
If netsh reports "Direct access (no proxy server)" but your browser clearly uses one, the proxy is configured at the per-user level only, which the reg query line will show.
Find your proxy address on macOS
macOS stores proxy settings per network service (Wi-Fi, Ethernet, each VPN), so the answer can differ depending on which interface you are on.
Through System Settings
- Open System Settings → Network and select your active service (Wi-Fi or Ethernet).
- Click Details (older macOS: Advanced) and open the Proxies tab.
- Each protocol row (Web Proxy / HTTP, Secure Web Proxy / HTTPS, SOCKS) that is ticked shows its Server and Port. A ticked Automatic Proxy Configuration row shows a PAC URL instead.
Through the terminal
networksetup reads the same store the GUI does, but it is faster and scriptable. Pass it the exact service name as shown in the Network panel.
# List service names exactly as networksetup expects them networksetup -listallnetworkservices # Host:port for HTTP and HTTPS on Wi-Fi networksetup -getwebproxy "Wi-Fi" networksetup -getsecurewebproxy "Wi-Fi" # PAC / auto-config URL, if one is set networksetup -getautoproxyurl "Wi-Fi"
Find your proxy address on Linux
Linux has no single source of truth. A desktop environment, the shell, and individual apps each carry their own setting, so check the layer that matters for what you are running.
Desktop environment
On GNOME, open Settings → Network → Network Proxy; on KDE, System Settings → Network → Proxy. Manual mode lists a host and port per protocol; automatic mode shows a PAC URL.
Shell environment variables
For anything you run in a terminal, the proxy almost always comes from environment variables. This is also the layer most command-line tools, including curl and wget, actually read.
# Show any proxy variables the shell currently exports env | grep -i -e proxy # GNOME stores its own copy here, separate from the shell gsettings get org.gnome.system.proxy mode gsettings get org.gnome.system.proxy.http host
Typical output is lines like http_proxy=http://proxy.example.com:8080 and https_proxy=.... Note that the desktop panel and these variables are independent: setting one does not set the other, which is the usual reason a GUI app and a terminal app disagree about whether a proxy exists.
Find your proxy address in browsers
Most browsers defer to the operating system, so the steps above usually answer the question. The exception is Firefox, which keeps its own proxy configuration entirely separate from the OS.
Chrome and Edge
Both hand off to the system. In Chrome, Settings → System → Open your computer's proxy settings; in Edge, Settings → System and performance → Open your computer's proxy settings. Each opens the OS panel covered above, so read the host:port there.
Firefox
- Open Settings, scroll to Network Settings, and click Settings.
- Manual proxy configuration shows the HTTP, HTTPS, and SOCKS host and port fields directly.
- Automatic proxy configuration URL points at a PAC file; Use system proxy settings defers back to the OS.
Where to look, per platform
The summary, so you can jump straight to the right place:
| Platform | GUI location | Fastest CLI check |
|---|---|---|
| Windows | Settings → Network & internet → Proxy | netsh winhttp show proxy |
| macOS | Network → Details → Proxies | networksetup -getwebproxy "Wi-Fi" |
| Linux | Settings → Network → Network Proxy | env | grep -i proxy |
| Firefox | Settings → Network Settings | n/a (in-app only) |
| Chrome / Edge | defers to OS panel | use the OS CLI check |
Verify the address actually works
Finding a host:port is only half the job. The real test is whether traffic routes through it and exits from the IP you expect. Send one request through the proxy to an echo service and read back the address: if it shows the proxy's exit IP instead of your own, routing works.
# Route one request through the proxy, then read the exit IP curl -x "http://user:[email protected]:8080" "https://httpbin.org/ip" # Output shows the proxy's IP, not yours { "origin": "203.0.113.42" }
If the request hangs or returns a connection error, the host or port is wrong, the proxy needs credentials you did not supply, or it requires HTTPS rather than HTTP. The full curl workflow, including authentication edge cases, is in how to use curl with a proxy. When you see explicit status codes like 407 or 502 instead, proxy status error codes maps each one to a cause.
When the address is blank, wrong, or rotating
An empty proxy panel usually means no proxy is set, which is correct on a normal home connection; nothing is broken. If you expected one, the proxy may be configured at a different layer (shell variables on Linux, the WinHTTP store on Windows) than the one you are viewing, so run the matching CLI check above.
A different problem is when the address is correct but the connection still fails. Confirm the host and port match the provider's configuration character for character, check that credentials are enabled if the proxy requires them, and test from a second tool to rule out one misconfigured app. If the proxy works in curl but not your browser, the fault is in the browser's settings.
The hardest case is when there is no single fixed address at all. Rotating proxies change the exit IP per request or per session, so reading "the address" off a panel is meaningless: the host:port you connect to stays constant while the IP behind it changes. For that model you read the one stable gateway endpoint your provider gives you, which is exactly the shape of a managed endpoint.
The simplest address to manage: a stable gateway
If you are hunting for a proxy address in order to point a scraper or tool at one, the cleanest answer is not to manage individual host:port pairs at all. A rotating gateway gives you a single, stable endpoint and swaps the exit IP behind it automatically, so there is one address to configure and nothing to refresh when an IP gets blocked.
One host:port to point any tool at. Smart AI Proxy is a single rotating endpoint backed by a large residential, datacenter, and mobile pool: you configure it once, it rotates exits per request and retries on blocks, so you never chase a fresh address. Drop it into the same proxy field you just learned to read, and test your real target on the free tier first.
Whether you point it at the gateway above or your own provider's host, the configuration field is identical to the one you found in your settings panel. That is the payoff of reading the address correctly once: every tool, browser, and OS takes the same host:port in the same place.
Key takeaways
-
An address is a host and a port. Read it as
host:port; credentials, when present, ride in front asuser:pass@host:port. -
Settings panels lie; the CLI does not.
netsh winhttp show proxy,networksetup -getwebproxy, andenv | grep proxyshow what the system actually applies. - Layers disagree. Per-user vs system on Windows, GUI vs shell variables on Linux, Firefox vs the OS: check the layer your tool actually reads.
- Automatic config hides the real address. A PAC or WPAD URL means the host:port lives in a script, not the panel.
- Verify by echoing the exit IP. Send one request through the proxy to an echo service; the proxy's IP confirms routing works.
Frequently Asked Questions (FAQs)
What is my proxy server address?
It is the host and port your traffic routes through, for example proxy.example.com:8080. On Windows look in Settings → Network & internet → Proxy, on macOS in Network → Details → Proxies, and on Linux in your shell's proxy environment variables or the desktop network panel. If a provider gave you the proxy, the address is in the credentials they issued.
Is the proxy address the same as my IP address?
No. The proxy address is the machine in the middle that you connect to. Your own IP is the address your machine has on its network, and the IP a website sees is the one the proxy exits from. All three can be different values, which is the whole point of routing through a proxy.
How do I find a proxy address on my phone?
On Android, go to Settings → Network & internet → Wi-Fi, tap the connected network, and look under Proxy. On iPhone, go to Settings → Wi-Fi, tap the connected network, and scroll to HTTP Proxy, where a manual entry shows the server and port and an automatic entry shows a configuration URL.
What does it mean when the proxy address is blank?
Usually that no proxy is configured, which is normal on a regular connection. If you expected one, the proxy may be set at a layer you are not viewing, such as shell environment variables on Linux or the WinHTTP store on Windows. Run the matching command-line check to confirm what the system actually applies.
Why does the GUI show a script URL instead of a host and port?
Because automatic proxy configuration is in use. A PAC file or WPAD URL decides the proxy per request, so the panel shows the script's address rather than a fixed host:port. To see the real address, open the PAC script or run a command-line check that reports the resolved proxy.
How do I test whether a proxy address actually works?
Send a single request through it to an echo service and read the result. With curl -x "http://user:pass@host:port" "https://httpbin.org/ip", a response showing the proxy's exit IP confirms routing works. A hang or connection error means the host, port, or credentials are wrong, or the proxy expects a different protocol.
Crawl any site at scale, without fighting infrastructure.
Crawlbase handles proxies, fingerprints, and CAPTCHAs so your team ships data pipelines instead of maintaining crawl plumbing. 1,000 requests free, no card required.
