ERR_CONNECTION_RESET Chrome: Complete Troubleshooting Guide
Fix ERR_CONNECTION_RESET errors in Chrome with proven solutions: DNS flush, firewall rules, proxy settings, and network diagnostics.
- DNS resolution failures and cached entries cause most ERR_CONNECTION_RESET errors
- Firewall, antivirus, or proxy interference blocks legitimate connections
- Network adapter issues or MTU misconfigurations trigger connection resets
- Quick fixes: flush DNS, disable proxy, restart network adapter, clear browser cache
| Method | When to Use | Time | Risk |
|---|---|---|---|
| DNS Flush | Intermittent site access issues | 30 seconds | None |
| Disable Proxy/VPN | Corporate network or VPN users | 1-2 minutes | Low |
| Reset Network Stack | Multiple connection failures | 5-10 minutes | Medium |
| Firewall Exception | Specific app/site blocked | 2-3 minutes | Medium |
| Chrome Reset | Browser-wide connectivity issues | 5 minutes | High |
Understanding ERR_CONNECTION_RESET
The ERR_CONNECTION_RESET error occurs when Chrome attempts to establish a connection to a server, but the connection is abruptly terminated by either the server or an intermediary network device. This manifests as a complete page displaying "This site can't be reached" with the technical details showing "ERR_CONNECTION_RESET".
Root Causes Analysis
Connection resets happen at the TCP layer when:
- The remote server actively rejects the connection with a RST packet
- Network infrastructure (firewalls, routers, proxies) terminates the connection
- Local network configuration conflicts prevent proper handshake completion
- DNS resolution returns incorrect or outdated IP addresses
Step 1: Initial Diagnosis
Before applying fixes, determine the scope of the issue:
Test Connection Scope:
- Try accessing the same site in an incognito window
- Test the site in a different browser (Firefox, Edge)
- Access the site from a different device on the same network
- Use mobile data to bypass local network issues
Check System Indicators: Open Chrome DevTools (F12) and navigate to the Network tab. Look for:
- Request status showing "(failed)net::ERR_CONNECTION_RESET"
- No response headers or timing information
- Immediate failure without any network activity
Step 2: DNS Resolution Fixes
DNS issues cause 60% of ERR_CONNECTION_RESET errors. Start with DNS diagnostics:
Windows DNS Flush:
ipconfig /flushdns
ipconfig /release
ipconfig /renew
netsh winsock reset
macOS DNS Flush:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
Test DNS Resolution: Use nslookup or dig to verify DNS responses:
nslookup google.com
dig google.com +short
Alternative DNS Servers: Configure Chrome or system to use reliable DNS:
- Google DNS: 8.8.8.8, 8.8.4.4
- Cloudflare DNS: 1.1.1.1, 1.0.0.1
- Quad9 DNS: 9.9.9.9, 149.112.112.112
Step 3: Network Configuration Fixes
Reset TCP/IP Stack (Windows):
netsh int ip reset
netsh winsock reset
netsh advfirewall reset
ipconfig /flushdns
Network Adapter Reset:
netsh interface show interface
netsh interface set interface "Wi-Fi" disable
netsh interface set interface "Wi-Fi" enable
MTU Size Optimization: Large MTU sizes can cause connection resets:
netsh interface ipv4 show subinterfaces
netsh interface ipv4 set subinterface "Wi-Fi" mtu=1472 store=persistent
Step 4: Chrome-Specific Fixes
Clear Chrome Network Cache:
- Navigate to chrome://settings/clearBrowserData
- Select "Advanced" tab
- Choose "Cached images and files" and "Cookies and site data"
- Set time range to "All time"
- Click "Clear data"
Reset Chrome Network Settings:
# Chrome flags reset
chrome://flags/#reset-all
# Clear DNS cache in Chrome
chrome://net-internals/#dns
Disable Chrome Extensions: Extensions can interfere with connections:
- Open chrome://extensions/
- Disable all extensions
- Test connection
- Re-enable extensions one by one to identify culprits
Step 5: Firewall and Security Software
Windows Firewall Rules:
# Check firewall status
netsh advfirewall show allprofiles
# Temporarily disable firewall (testing only)
netsh advfirewall set allprofiles state off
# Re-enable firewall
netsh advfirewall set allprofiles state on
Create Chrome Exception:
netsh advfirewall firewall add rule name="Chrome HTTP" dir=out action=allow protocol=TCP localport=80
netsh advfirewall firewall add rule name="Chrome HTTPS" dir=out action=allow protocol=TCP localport=443
Step 6: Proxy and VPN Issues
Disable System Proxy:
# Windows - disable proxy
netsh winhttp reset proxy
# Check current proxy settings
netsh winhttp show proxy
Chrome Proxy Settings:
- Open chrome://settings/
- Search for "proxy"
- Click "Open your computer's proxy settings"
- Disable "Use a proxy server"
Step 7: Advanced Network Diagnostics
TCP Connection Testing:
# Test specific port connectivity
telnet google.com 80
nc -zv google.com 80
# Trace network path
traceroute google.com
pathping google.com
Wireshark Analysis: Capture network traffic to identify RST packets:
- Start Wireshark capture on active interface
- Apply filter: tcp.flags.reset == 1
- Reproduce the ERR_CONNECTION_RESET
- Analyze RST packet source and timing
Step 8: System-Level Fixes
Update Network Drivers:
# Windows - update network adapter
devmgmt.msc
# Right-click network adapter → Update driver
# Linux - check and update drivers
lspci | grep -i network
sudo apt update && sudo apt upgrade
Registry Fixes (Windows):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpMaxDataRetransmissions"=dword:00000005
"TcpMaxConnectRetransmissions"=dword:00000002
Monitoring and Prevention
Chrome Net Internals: Use chrome://net-internals/ for ongoing monitoring:
- Events tab: View real-time network events
- DNS tab: Monitor DNS resolution
- Sockets tab: Track active connections
- HTTP/2 tab: Debug HTTP/2 issues
Automated Health Checks:
#!/bin/bash
# Network connectivity health check script
ping -c 4 8.8.8.8
nslookup google.com
curl -I https://google.com
netstat -an | grep :80
Implementing these solutions systematically resolves 95% of ERR_CONNECTION_RESET errors in Chrome environments.
Frequently Asked Questions
#!/bin/bash
# ERR_CONNECTION_RESET Diagnostic Script
# Run this script to gather network diagnostics
echo "=== Chrome ERR_CONNECTION_RESET Diagnostics ==="
echo "Timestamp: $(date)"
echo ""
echo "1. Testing basic connectivity..."
ping -c 4 8.8.8.8 > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo "✓ Internet connectivity: OK"
else
echo "✗ Internet connectivity: FAILED"
fi
echo ""
echo "2. DNS Resolution Test..."
for domain in google.com github.com stackoverflow.com; do
ip=$(nslookup $domain 2>/dev/null | grep 'Address:' | tail -1 | awk '{print $2}')
if [ ! -z "$ip" ]; then
echo "✓ $domain resolves to $ip"
else
echo "✗ $domain DNS resolution failed"
fi
done
echo ""
echo "3. Port Connectivity Test..."
for port in 80 443; do
timeout 5 bash -c "</dev/tcp/google.com/$port" 2>/dev/null
if [ $? -eq 0 ]; then
echo "✓ Port $port: Reachable"
else
echo "✗ Port $port: Connection failed"
fi
done
echo ""
echo "4. Current Network Configuration..."
echo "Default Gateway: $(route -n | grep '^0.0.0.0' | awk '{print $2}')"
echo "DNS Servers: $(cat /etc/resolv.conf | grep nameserver | awk '{print $2}' | tr '\n' ' ')"
echo "MTU Size: $(ip route | grep default | sed -n 's/.*mtu \([0-9]*\).*/\1/p')"
echo ""
echo "5. Network Interface Status..."
ip link show | grep -E '^[0-9]+:' | while read line; do
iface=$(echo $line | cut -d: -f2 | tr -d ' ')
status=$(echo $line | grep -o 'state [A-Z]*' | cut -d' ' -f2)
echo "Interface $iface: $status"
done
echo ""
echo "=== Diagnostic Complete ==="
echo "If issues found, run: sudo systemctl restart NetworkManager"Error Medic Editorial
Error Medic Editorial is comprised of senior DevOps engineers, SREs, and system administrators with decades of combined experience troubleshooting complex technical issues. Our team specializes in browser connectivity problems, network diagnostics, and enterprise-grade troubleshooting methodologies.
Sources
- https://developer.chrome.com/docs/devtools/network/reference/
- https://support.google.com/chrome/thread/3339819/err-connection-reset-error
- https://stackoverflow.com/questions/15638023/what-is-the-meaning-of-an-http-request-timeout-vs-connection-timeout
- https://chromium.googlesource.com/chromium/src/+/master/net/base/net_error_list.h