Windows Proxy Configuration Methods
Windows offers multiple ways to configure proxies, each with different scopes and use cases. This guide covers every method from the simplest GUI approach to advanced PowerShell automation.
Method 1: Windows Settings (GUI)
Windows 11
- Press Win + I to open Settings
- Navigate to Network & Internet → Proxy
- Under Manual proxy setup, click Set up
- Toggle Use a proxy server to On
- Enter:
Proxy IP address: gate.hexproxies.com
Port: 8080- Check Don't use the proxy server for local (intranet) addresses
- In the exception list, add:
localhost;127.0.0.1;*.local - Click Save
Windows 10
- Press Win + I to open Settings
- Navigate to Network & Internet → Proxy
- Under Manual proxy setup, toggle Use a proxy server to On
- Enter
gate.hexproxies.comin the Address field and8080in the Port field - Check Don't use the proxy server for local (intranet) addresses
- Click Save
Important Notes
- Windows system proxy settings apply to all browsers that use system settings (Chrome, Edge, Internet Explorer mode) but not Firefox (which has its own settings)
- Windows Settings does not support proxy authentication fields — you will be prompted for credentials on first use
- The system proxy does not support SOCKS5 through the GUI; use PowerShell or third-party tools for SOCKS
Method 2: Internet Options (Legacy Control Panel)
The legacy Internet Options dialog provides additional proxy configuration features not available in Windows Settings.
- Press Win + R, type
inetcpl.cpl, press Enter - Go to Connections tab → LAN settings
- Check Use a proxy server for your LAN
- Click Advanced to set per-protocol proxies:
HTTP: gate.hexproxies.com Port: 8080
Secure: gate.hexproxies.com Port: 8080
Socks: gate.hexproxies.com Port: 1080- In Exceptions, enter:
localhost;127.0.0.1;*.local;10.* - Click OK through all dialogs
The Advanced dialog is the only Windows GUI that supports separate HTTP, HTTPS, and SOCKS proxy settings.
Method 3: PowerShell Configuration
Set System Proxy
# Enable proxy
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "gate.hexproxies.com:8080"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyOverride -Value "localhost;127.0.0.1;*.local"Disable System Proxy
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0Check Current Settings
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyEnable, ProxyServer, ProxyOverrideToggle Script
Save as Toggle-Proxy.ps1:
$regPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
$current = (Get-ItemProperty -Path $regPath).ProxyEnable
if ($current -eq 1) {
Set-ItemProperty -Path $regPath -Name ProxyEnable -Value 0
Write-Host "Proxy DISABLED" -ForegroundColor Yellow
} else {
Set-ItemProperty -Path $regPath -Name ProxyEnable -Value 1
Set-ItemProperty -Path $regPath -Name ProxyServer -Value "gate.hexproxies.com:8080"
Write-Host "Proxy ENABLED" -ForegroundColor Green
}Run with: powershell -ExecutionPolicy Bypass -File Toggle-Proxy.ps1
Method 4: Environment Variables
Environment variables configure proxies for command-line tools (curl, wget, npm, pip, git) and many desktop applications.
Set for Current Session
$env:HTTP_PROXY = "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080"
$env:HTTPS_PROXY = "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080"
$env:NO_PROXY = "localhost,127.0.0.1,.local"Set Permanently (User Level)
[System.Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080", "User")
[System.Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080", "User")
[System.Environment]::SetEnvironmentVariable("NO_PROXY", "localhost,127.0.0.1,.local", "User")Set for All Users (Requires Admin)
[System.Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080", "Machine")
[System.Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080", "Machine")Command Prompt (cmd.exe)
set HTTP_PROXY=http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080
set HTTPS_PROXY=http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080Method 5: Per-Application Proxy
Git
git config --global http.proxy http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080
git config --global https.proxy http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080npm
npm config set proxy http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080
npm config set https-proxy http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080WSL (Windows Subsystem for Linux)
WSL does not inherit Windows proxy settings. Configure the proxy inside the WSL shell:
export http_proxy="http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080"
export https_proxy="http://YOUR_USERNAME:YOUR_PASSWORD@gate.hexproxies.com:8080"
export no_proxy="localhost,127.0.0.1"Add these lines to ~/.bashrc or ~/.profile for persistence.
Method 6: PAC File (Auto-Configuration)
Using a PAC File in Windows
- Open Settings → Network & Internet → Proxy
- Under Automatic proxy setup, toggle Use setup script to On
- Enter the PAC file URL:
file:///C:/Users/you/proxy.pacor a hosted URL - Click Save
Example PAC File
function FindProxyForURL(url, host) {
if (isPlainHostName(host) || host === "localhost") {
return "DIRECT";
}
if (dnsDomainIs(host, ".targetsite.com")) {
return "PROXY gate.hexproxies.com:8080";
}
return "DIRECT";
}Hex Proxies Session Configuration on Windows
Rotating Proxies
Standard credentials rotate the IP on every request:
Server: gate.hexproxies.com
Port: 8080
Username: YOUR_USERNAME
Password: YOUR_PASSWORDSticky Sessions
Append a session identifier to your username:
Username: YOUR_USERNAME-session-win01
Password: YOUR_PASSWORDCountry Targeting
Append a country code:
Username: YOUR_USERNAME-country-us
Username: YOUR_USERNAME-country-uk-session-win02Troubleshooting
Proxy settings not taking effect
- Close and reopen your browser after changing proxy settings
- Some applications cache proxy settings — restart the application
- Verify the proxy is enabled: check
HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnableis set to 1
"Unable to connect to the proxy server"
- Verify the proxy address and port are correct
- Test from PowerShell:
Invoke-WebRequest -Uri "https://httpbin.org/ip" -Proxy "http://gate.hexproxies.com:8080" - Check Windows Firewall is not blocking outbound connections on port 8080
Proxy works in browser but not in command line
- CLI tools use environment variables, not Windows system proxy settings
- Set
HTTP_PROXYandHTTPS_PROXYenvironment variables as shown above - Some tools use lowercase (
http_proxy) — set both cases for compatibility
Authentication fails repeatedly
- Windows credential manager may cache incorrect passwords
- Open Control Panel → Credential Manager → Windows Credentials → remove entries for gate.hexproxies.com
- Re-enter credentials when prompted
FAQ
Does Windows system proxy apply to all applications?
No. It applies to browsers using system settings (Chrome, Edge) and many Microsoft apps. Firefox, WSL, and most CLI tools use their own proxy settings or environment variables.
Can I set up SOCKS5 proxy on Windows without third-party software?
Yes, through the legacy Internet Options (inetcpl.cpl) Advanced proxy dialog. The modern Windows Settings app does not expose SOCKS proxy fields, but the registry and Internet Options still support it.
How do I configure proxy for Windows Store / UWP apps?
UWP apps use the system proxy settings configured in Windows Settings. If they do not pick up the proxy, ensure you are using the system proxy (not just environment variables) and that the app has network capabilities in its manifest.
Can I set different proxies for different Wi-Fi networks?
Windows does not natively support per-network proxy profiles. Use a third-party tool or create PowerShell scripts that detect the connected network and set the proxy accordingly.