How to Fix This Site Can’t Be Reached When Using a Proxy
“This site can’t be reached” is Chrome’s generic error page for connection failures. When it appears while using a proxy, the error could originate anywhere in the chain: your device, your local network, the proxy server, or the target website. The accompanying error code (ERR_CONNECTION_TIMED_OUT, ERR_CONNECTION_REFUSED, ERR_NAME_NOT_RESOLVED, etc.) provides the first clue about where the failure occurred.
This guide systematically addresses each variant of this error in the context of proxy usage.
Understanding the Error Variants
ERR_CONNECTION_TIMED_OUT
The browser waited for a response but none arrived. With a proxy, this can mean:
- The proxy server is unreachable
- The proxy server received your request but the target website did not respond
- A firewall is silently dropping packets
ERR_CONNECTION_REFUSED
The proxy server or target website actively refused the connection. This is more definitive than a timeout because the server explicitly sent a TCP RST packet.
ERR_NAME_NOT_RESOLVED
DNS resolution failed. The browser could not translate the hostname (either the proxy hostname or the target hostname) to an IP address.
ERR_PROXY_CONNECTION_FAILED
The browser specifically failed to connect to the configured proxy server. This error is unambiguous: the issue is between your device and the proxy.
ERR_TUNNEL_CONNECTION_FAILED
The HTTPS CONNECT tunnel through the proxy failed. The proxy connected but refused or failed to establish the tunnel to the target.
Diagnostic Workflow
Step 1: Determine If the Issue Is the Proxy or the Target
# Test proxy connectivity
nc -zv proxy.example.com 8080
# Test if the target is accessible directly (without proxy)
curl -s -o /dev/null -w "%{http_code}" https://target-site.com
# Test if the target is accessible through the proxy
curl -s -o /dev/null -w "%{http_code}" -x http://user:pass@proxy:8080 https://target-site.comIf the direct request succeeds but the proxied request fails, the issue is in the proxy chain. If both fail, the target site may be down.
Step 2: Test with a Known-Good Target
curl -x http://user:pass@proxy:8080 https://httpbin.org/ipIf this succeeds, the proxy itself is working. The issue is specific to the target website.
Step 3: Check DNS Resolution
# Resolve the target hostname
nslookup target-site.com
# Resolve the proxy hostname
nslookup proxy.example.comIf either fails, DNS is the problem. Switch to a reliable DNS server (8.8.8.8 or 1.1.1.1).
Fixes by Error Variant
Fix ERR_CONNECTION_TIMED_OUT
Check firewall rules:
Firewalls can silently drop outbound packets to the proxy port, causing timeouts instead of connection refused errors.
# Test if the proxy port is accessible
nc -zv -w 5 proxy.example.com 8080If this times out, a firewall between you and the proxy is likely blocking the port. Try connecting on port 443 instead, which most firewalls allow.
Increase timeout settings:
# cURL with extended timeout
curl -x http://proxy:8080 --connect-timeout 30 --max-time 120 https://target-site.comCheck proxy server status:
Log in to your proxy provider dashboard and verify the endpoint is operational.
Try a different proxy endpoint:
If your provider has multiple gateways, try an alternative:
curl -x http://user:pass@us-east.proxy.com:8080 https://target-site.com
curl -x http://user:pass@eu-west.proxy.com:8080 https://target-site.comFix ERR_CONNECTION_REFUSED
Verify proxy address and port:
The most common cause is an incorrect proxy address or port. Double-check against your provider’s documentation.
Check if the proxy is running:
For self-hosted proxies, verify the proxy process is running:
# Check if something is listening on the expected port
ss -tlnp | grep 8080Verify IP whitelist:
If your proxy uses IP-based authentication, confirm your current public IP is whitelisted:
curl https://api.ipify.orgCompare this with your provider’s whitelist settings.
Fix ERR_NAME_NOT_RESOLVED
Flush DNS cache:
# macOS
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
# Windows
ipconfig /flushdns
# Linux
sudo systemd-resolve --flush-cachesChange DNS server:
Configure your system to use a public DNS server:
# Test with Google DNS
nslookup target-site.com 8.8.8.8If this resolves but your default DNS does not, change your DNS settings.
Use proxy IP instead of hostname:
If the proxy hostname does not resolve, use the IP address directly:
curl -x http://user:pass@203.0.113.50:8080 https://target-site.comFix ERR_TUNNEL_CONNECTION_FAILED
This error means the proxy CONNECT method failed. Causes include:
Proxy does not support CONNECT:
Some proxies only support HTTP forwarding, not HTTPS tunneling. Verify your proxy supports HTTPS traffic.
Target port is blocked by the proxy:
Some proxies restrict which ports can be tunneled. Standard ports (80, 443) are usually allowed, but non-standard ports may be blocked.
# Test CONNECT to a non-standard port
curl -x http://proxy:8080 https://target-site.com:8443Proxy authentication failed silently:
Some proxies return a tunnel failure instead of a 407 when authentication fails. Double-check your credentials.
Browser-Specific Fixes
Chrome
- Clear browsing data: Navigate to
chrome://settings/clearBrowserDataand clear cached images and files - Reset proxy settings: Navigate to
chrome://settings/> search for “proxy” > “Open your computer’s proxy settings” and verify the configuration - Disable extensions: Navigate to
chrome://extensions/and disable all extensions, particularly proxy switchers
Firefox
Firefox manages its own proxy settings:
- Navigate to Settings > General > Network Settings > Settings
- Verify the proxy configuration
- Try “No proxy” to confirm the proxy is causing the issue
- Try “Use system proxy settings” to inherit OS-level configuration
Safari
- Open System Settings > Network
- Select your connection > Details > Proxies
- Verify or disable proxy settings
Edge
Edge uses the same proxy settings as Chrome (system-level). Follow the Windows or macOS system proxy fixes above.
Advanced Diagnostics
Using Chrome’s Network Log
For persistent issues, capture a Chrome network log:
- Navigate to
chrome://net-export/ - Click “Start Logging to Disk”
- Reproduce the error
- Stop logging
- View the log at
https://netlog-viewer.appspot.com/
The log shows the exact point of failure: DNS resolution, TCP connection, TLS handshake, or proxy negotiation.
Using cURL Verbose Output
curl -v -x http://user:pass@proxy:8080 https://target-site.com 2>&1Look for:
Trying ip:port...followed by a long pause (timeout)Connected to proxyfollowed byCONNECT target-site.com:443(tunnel negotiation)HTTP/1.1 200 Connection established(successful tunnel)- Any error after the tunnel is established (target-side issue)
Using traceroute
traceroute proxy.example.comThis reveals where packets are being dropped along the network path. If the traceroute stops at a specific hop, a firewall or routing issue exists at that point.
Special Cases
The Site Works for Some Users but Not Others
If colleagues can access the site through the same proxy but you cannot, check:
- Your local DNS configuration
- Your local firewall rules
- Browser-specific proxy settings or extensions
- Whether your IP is whitelisted (for IP-authenticated proxies)
The Site Worked Yesterday but Not Today
If access stopped working suddenly:
- The proxy provider may have changed endpoints
- Your subscription may have expired
- The target website may have blocked the proxy IP
- Your ISP may have started blocking proxy traffic
Check your provider’s status page and dashboard for any changes.
Only Specific Sites Cannot Be Reached
If most sites work through the proxy but specific ones do not:
- The target site may block traffic from your proxy’s IP range
- The target site may require a specific geographic location that your proxy does not provide
- The proxy may restrict access to certain domains
For sites protected by Cloudflare or similar services, mobile proxies often succeed where data center proxies fail, due to their higher IP trust scores. Check the proxy glossary for definitions of IP trust scoring and related concepts.
Preventing the Error
- Monitor proxy health with automated checks every few minutes
- Maintain backup proxy endpoints for automatic failover
- Keep DNS configured with reliable servers (Google 8.8.8.8 or Cloudflare 1.1.1.1)
- Regularly validate your proxy setup with the proxy testing checklist
- Document your proxy configuration so you can quickly verify settings when issues arise
Conclusion
“This site can’t be reached” while using a proxy is a generic error with many possible causes. The error code beneath the message (ERR_CONNECTION_TIMED_OUT, ERR_CONNECTION_REFUSED, ERR_NAME_NOT_RESOLVED, ERR_TUNNEL_CONNECTION_FAILED) narrows the diagnosis significantly. Work from the most common causes (incorrect proxy address, blocked port, DNS failure) toward the less common ones (tunnel failures, provider outages). In most cases, the fix is verifying the proxy configuration, checking firewall rules, or resolving DNS issues.
- Common cURL and Python Requests Proxy Errors (With Code Fixes)
- How to Debug Proxy Issues Using Charles, Fiddler, and mitmproxy
- Backconnect Proxies Deep Dive: Architecture and Real-World Performance
- Best Proxies in Southeast Asia: Singapore, Thailand, Indonesia, Philippines
- How to Build a 4G/5G Mobile Proxy Farm with Raspberry Pi
- How to Configure a Proxy in FoxyProxy for Firefox
- Common cURL and Python Requests Proxy Errors (With Code Fixes)
- How to Debug Proxy Issues Using Charles, Fiddler, and mitmproxy
- Anti-Bot Detection Glossary: 50+ Terms Defined
- Anti-Bot Terminology Glossary: Complete A-Z Reference 2026
- Backconnect Proxies Deep Dive: Architecture and Real-World Performance
- Best Proxies in Southeast Asia: Singapore, Thailand, Indonesia, Philippines
- Common cURL and Python Requests Proxy Errors (With Code Fixes)
- How to Debug Proxy Issues Using Charles, Fiddler, and mitmproxy
- Anti-Bot Detection Glossary: 50+ Terms Defined
- Anti-Bot Terminology Glossary: Complete A-Z Reference 2026
- Backconnect Proxies Deep Dive: Architecture and Real-World Performance
- Best Proxies in Southeast Asia: Singapore, Thailand, Indonesia, Philippines
- Common cURL and Python Requests Proxy Errors (With Code Fixes)
- How to Debug Proxy Issues Using Charles, Fiddler, and mitmproxy
- 403 Forbidden Error: What It Means & How to Fix It
- 407 Proxy Authentication Required: Fix Guide
- Anti-Bot Detection Glossary: 50+ Terms Defined
- Anti-Bot Terminology Glossary: Complete A-Z Reference 2026
Related Reading
- Common cURL and Python Requests Proxy Errors (With Code Fixes)
- How to Debug Proxy Issues Using Charles, Fiddler, and mitmproxy
- 403 Forbidden Error: What It Means & How to Fix It
- 407 Proxy Authentication Required: Fix Guide
- Anti-Bot Detection Glossary: 50+ Terms Defined
- Anti-Bot Terminology Glossary: Complete A-Z Reference 2026