WiFi Connected But No Internet: Complete Troubleshooting Guide for All Devices & ISPs
Fix 'WiFi connected but no internet' on any device or ISP. Step-by-step DNS flush, IP renewal, adapter reset, and router fixes. Works for Cox, Fios, Charter & m
- Root cause #1: IP address conflict or DHCP failure — your device connected to the router but never received a valid public-routable IP or gateway, so packets cannot leave your local network.
- Root cause #2: DNS resolution failure — your device has a valid IP and gateway but the DNS servers are unreachable or returning NXDOMAIN, making every domain name unresolvable even though raw IP traffic works.
- Root cause #3: ISP-side outage, modem/router firmware issue, or captive portal (hotel/hotspot) that has not been accepted yet — the local link is up but the WAN side is down or gated.
- Quick fix summary: Reboot modem then router (in that order), run 'ipconfig /release && ipconfig /renew' (Windows) or 'sudo dhclient -r && sudo dhclient' (Linux/macOS), change DNS to 8.8.8.8, and check your ISP status page.
| Method | When to Use | Time | Risk |
|---|---|---|---|
| Reboot modem + router (power cycle) | First step for any ISP (Cox, Fios, Charter, Bell, Frontier) | 2–5 min | None |
| IP release & renew (DHCP reset) | Device shows 169.254.x.x or 0.0.0.0 address; APIPA self-assigned IP | < 1 min | None |
| DNS flush + change to 8.8.8.8 or 1.1.1.1 | Sites won't load but ping to IP address works; DNS errors in browser | < 1 min | None |
| Network adapter reset / disable-enable | Windows/Linux adapter stuck in bad state after sleep or resume | < 1 min | None |
| TCP/IP stack reset (netsh / ip link) | All above steps failed; deep corruption of Windows network stack | 1–2 min | Low — requires reboot |
| Accept captive portal login page | Hotel WiFi, airport, or coffee shop hotspot shows 'connected, no internet' | < 1 min | None |
| Factory reset router / update firmware | Persistent issue on Google Nest, Meraki, or ISP-provided panoramic gateway | 10–30 min | Medium — loses config |
| Contact ISP / swap modem | All local fixes exhausted; ISP outage confirmed or modem light solid amber | 30–120 min | None (ISP-side) |
Understanding the 'WiFi Connected But No Internet' Error
When your device displays a WiFi connection icon but cannot reach the internet, the problem sits at one of three layers: the local link layer (your device ↔ router), the WAN/modem layer (router ↔ ISP), or the DNS/application layer (name resolution). The OS considers the WiFi 'connected' as soon as it associates with the access point and completes the WPA handshake — long before it verifies internet reachability. Windows displays a yellow exclamation mark and the message 'No Internet Access' or 'No network access'. Android shows 'Connected, no internet'. macOS shows the WiFi icon without the issue indicator but Safari returns 'Safari can't connect to the server'.
Step 1: Identify Which Layer Is Failing
Check your assigned IP address first.
- Windows: Open Command Prompt and run
ipconfig. Look for your Wi-Fi adapter. If the IPv4 address starts with169.254.x.x, your device has an APIPA (Automatic Private IP Addressing) address, meaning DHCP failed entirely. - macOS/Linux: Run
ifconfigorip addr show. A valid DHCP address is typically192.168.x.xor10.x.x.x. - Android/iOS: Navigate to Settings → WiFi → tap your network name → look at the IP address field.
Ping the gateway to isolate local vs. WAN issues:
ping 192.168.1.1
If this fails, the problem is between your device and the router. If it succeeds, continue to ping a public IP:
ping 8.8.8.8
If 8.8.8.8 pings successfully but websites fail to load, DNS is your culprit. If 8.8.8.8 also fails, the problem is at the WAN/ISP level.
Step 2: Fix DHCP / IP Address Issues
Windows — Release and Renew IP: Open an elevated Command Prompt (Run as Administrator) and execute:
ipconfig /release
ipconfig /flushdns
ipconfig /renew
If renewal fails with 'Unable to contact your DHCP server', the router's DHCP service may be saturated (common on hotel networks and shared guest WiFi) or completely offline.
macOS — Renew DHCP Lease: Go to System Preferences → Network → Wi-Fi → Advanced → TCP/IP tab → click Renew DHCP Lease. Alternatively, from Terminal:
sudo ipconfig set en0 DHCP
For macOS Monterey users specifically, there is a known bug where the system caches a stale DNS configuration after waking from sleep. Run:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Linux (Ubuntu/Debian/Kali):
sudo dhclient -r wlan0
sudo dhclient wlan0
On Kali Linux, the interface may be named wlan0 or wlp2s0. Use ip link show to confirm. If NetworkManager is managing the interface:
nmcli networking off && nmcli networking on
Step 3: Fix DNS Issues
If pinging 8.8.8.8 works but no websites load, change your DNS servers to a public resolver.
Windows: Go to Control Panel → Network and Sharing Center → Change adapter settings → Right-click your WiFi adapter → Properties → Internet Protocol Version 4 (TCP/IPv4) → Properties. Set:
- Preferred DNS:
8.8.8.8 - Alternate DNS:
1.1.1.1
Or via Command Prompt:
netsh interface ip set dns name="Wi-Fi" static 8.8.8.8
netsh interface ip add dns name="Wi-Fi" 1.1.1.1 index=2
ipconfig /flushdns
macOS:
System Preferences → Network → Wi-Fi → Advanced → DNS tab → remove existing servers → add 8.8.8.8 and 1.1.1.1.
Android:
Settings → WiFi → Long-press your network → Modify Network → Advanced Options → IP Settings: change to Static → enter DNS 1: 8.8.8.8, DNS 2: 1.1.1.1.
Step 4: Reset the Network Stack (Windows)
If IP renewal and DNS changes didn't help, the Windows TCP/IP stack itself may be corrupted:
netsh winsock reset
netsh int ip reset
netsh int tcp reset
netsh int ipv6 reset
ipconfig /flushdns
ipconfig /registerdns
Reboot after running these commands.
Step 5: Captive Portals (Hotels, Hotspots, Car WiFi, Guest Networks)
Hotel WiFi, corporate guest networks, and car WiFi (like in Tesla, GM vehicles) use a captive portal — an HTTP redirect that must be accepted before internet access is granted. Your device connects at layer 2 but is blocked at layer 3 until you authenticate.
Fix: Open a browser and navigate to http://neverssl.com or http://captive.apple.com. Because these are plain HTTP (not HTTPS), they can be intercepted and redirected to the login page. On Android, tapping the 'Sign in to network' notification also triggers this. If the notification doesn't appear, disable WiFi and re-enable it to force a new captive portal probe.
For Amazon Fire Tablets: Go to Settings → WiFi → tap the connected network → tap the globe icon or 'Sign in' prompt.
Step 6: ISP-Specific Troubleshooting
Cox / Cox Panoramic WiFi: Check downdetector.com/status/cox for outages. The Cox Panoramic gateway combines modem + router; power cycling it (unplug 30 seconds) is the most effective first step. If the WPS light is amber/orange, the modem has not provisioned — call Cox to re-provision the modem MAC address.
Fios (Verizon): The Fios router uses a coaxial MoCA connection. Check that the coax cable is hand-tight at both the ONT (Optical Network Terminal, usually in a utility closet) and the router. A blinking white WAN light indicates a good WAN link; solid red means no WAN.
Charter Spectrum: Spectrum modems periodically need re-authorization. Log into spectrum.net and check if your modem appears in 'My Equipment'. An unauthorized modem will connect to WiFi but block all internet traffic.
Bell (Canada): Bell's HomeHub gateway has a known issue with IPv6 prefix delegation conflicts. Disabling IPv6 on the HomeHub (Advanced → IPv6 → Disable) often resolves 'connected but no internet' on specific devices.
Frontier / ACT / Belong: These ISPs use PPPoE authentication. If the DSL/fiber line disconnects and reconnects, the PPPoE session must re-authenticate. Rebooting the modem forces a new PPPoE session.
Step 7: Device-Specific Fixes
Chromebook: Go to Settings → Network → Wi-Fi → click your network → Network tab → set Name Servers to 'Custom name servers' and enter 8.8.8.8. Also try forgetting the network and reconnecting.
LG TV / Android TV Box: Navigate to Settings → General → Network → Network Status → IP Settings. Set DNS to 8.8.8.8. If using 5GHz and experiencing drops, switch to 2.4GHz temporarily — some LG TV WiFi chips have poor 5GHz sensitivity.
Lenovo / Dell / HP Laptops: These laptops often have aggressive WiFi power-saving that drops the connection. Disable it: Device Manager → Network Adapters → right-click WiFi adapter → Properties → Power Management → uncheck 'Allow the computer to turn off this device to save power'. Also update the WiFi driver from the manufacturer website.
Moto E6 / LG G7 ThinQ: On Android, go to Developer Options → Private DNS → set to dns.google or one.one.one.one. Also toggle Airplane Mode on/off to reset the radio stack.
MacBook Air / MacBook Pro (macOS Monterey): Create a new Network Location: System Preferences → Network → Location dropdown → Edit Locations → '+' → create 'Home2'. Apply it, then connect to WiFi. This resets the network configuration without losing passwords.
Step 8: Router-Level Fixes (Google Nest, Meraki, Home Routers)
Google Nest WiFi: Open the Google Home app → tap your Nest WiFi → Settings → Test internet. If this fails, check the WAN port light. For persistent issues, perform a factory reset by holding the reset button for 10 seconds.
Meraki MR Series: Log into dashboard.meraki.com. Navigate to Wireless → Access Points → select the AP → check the WAN uplink status under 'Uplink'. A common issue is the SSID VLAN tagging not matching the switch trunk configuration, causing DHCP to fail for wireless clients only. Check Wireless → Configure → SSIDs → VLAN settings.
General home routers: Ensure the router's WAN IP (visible in the admin panel at 192.168.1.1 or 192.168.0.1) is a valid public or ISP-assigned IP, not 0.0.0.0. A 0.0.0.0 WAN IP means the modem/ONT is not passing the connection to the router.
Frequently Asked Questions
#!/usr/bin/env bash
# ============================================================
# WiFi Connected But No Internet - Universal Diagnostic Script
# Compatible with: Linux, macOS (run with sudo)
# Windows: use the equivalent commands in the comments
# ============================================================
echo "=== Step 1: Check network interfaces ==="
if command -v ip &>/dev/null; then
ip addr show
else
ifconfig # macOS fallback
fi
echo ""
echo "=== Step 2: Check default gateway ==="
if command -v ip &>/dev/null; then
ip route show default
else
netstat -rn | grep default # macOS
fi
# Windows equivalent: route print | findstr "0.0.0.0"
echo ""
echo "=== Step 3: Ping gateway (replace 192.168.1.1 if needed) ==="
GATEWAY=$(ip route show default 2>/dev/null | awk '/default/ {print $3}' || route -n get default 2>/dev/null | awk '/gateway/ {print $2}')
echo "Gateway detected: $GATEWAY"
ping -c 3 "${GATEWAY:-192.168.1.1}"
echo ""
echo "=== Step 4: Ping public IP (tests WAN, not DNS) ==="
ping -c 3 8.8.8.8
echo ""
echo "=== Step 5: Test DNS resolution ==="
if command -v nslookup &>/dev/null; then
nslookup google.com 8.8.8.8
else
dig @8.8.8.8 google.com
fi
# Windows equivalent: nslookup google.com 8.8.8.8
echo ""
echo "=== Step 6: Flush DNS cache ==="
if [[ "$(uname)" == "Darwin" ]]; then
# macOS (works on Monterey and later)
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
echo "macOS DNS cache flushed."
else
# Linux with systemd-resolved
if systemctl is-active --quiet systemd-resolved; then
sudo systemd-resolve --flush-caches
echo "systemd-resolved cache flushed."
fi
# Linux with nscd
if command -v nscd &>/dev/null; then
sudo nscd -i hosts
echo "nscd hosts cache flushed."
fi
fi
# Windows equivalent (run in elevated CMD):
# ipconfig /flushdns
echo ""
echo "=== Step 7: Release and renew DHCP lease ==="
IF_NAME=$(ip route show default 2>/dev/null | awk '{print $5}' | head -1)
echo "Interface: $IF_NAME"
if [[ -n "$IF_NAME" ]]; then
if command -v dhclient &>/dev/null; then
sudo dhclient -r "$IF_NAME" && sudo dhclient "$IF_NAME"
echo "DHCP lease renewed on $IF_NAME"
elif command -v dhcpcd &>/dev/null; then
sudo dhcpcd -k "$IF_NAME" && sudo dhcpcd "$IF_NAME"
echo "DHCP lease renewed via dhcpcd on $IF_NAME"
else
echo "No dhclient or dhcpcd found. Try: nmcli networking off && nmcli networking on"
fi
fi
# macOS equivalent:
# sudo ipconfig set en0 DHCP
# Windows equivalent (elevated CMD):
# ipconfig /release && ipconfig /renew
echo ""
echo "=== Step 8: Set temporary DNS to Google (Linux only) ==="
# WARNING: This modifies /etc/resolv.conf temporarily
# Backup first:
sudo cp /etc/resolv.conf /etc/resolv.conf.backup_$(date +%Y%m%d%H%M%S)
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
echo "nameserver 1.1.1.1" | sudo tee -a /etc/resolv.conf > /dev/null
echo "DNS temporarily set to 8.8.8.8 and 1.1.1.1"
# Verify
nslookup google.com
echo ""
echo "=== Step 9: Check for captive portal ==="
echo "Attempting HTTP request to captive portal test URL..."
curl -sL --max-time 5 http://captive.apple.com | grep -i "success" && echo "No captive portal detected" || echo "Possible captive portal — open a browser and navigate to http://neverssl.com"
echo ""
echo "=== Diagnostic complete. Review output above for failures. ==="
# ============================================================
# WINDOWS-ONLY FULL RESET (run in elevated CMD or PowerShell):
# netsh winsock reset
# netsh int ip reset
# netsh int tcp reset
# ipconfig /release
# ipconfig /flushdns
# ipconfig /renew
# netsh interface ip set dns name="Wi-Fi" static 8.8.8.8
# netsh interface ip add dns name="Wi-Fi" 1.1.1.1 index=2
# [Reboot required after winsock reset]
# ============================================================Error Medic Editorial
The Error Medic Editorial team consists of senior DevOps engineers, SREs, and network architects with 10+ years of experience diagnosing infrastructure, connectivity, and OS-level issues across enterprise and consumer environments. We specialize in translating complex networking diagnostics into actionable, command-level troubleshooting guides.
Sources
- https://support.microsoft.com/en-us/windows/fix-wi-fi-connection-issues-in-windows-9424a1f7-6a3b-65a6-4d78-7f07eee84d2c
- https://support.google.com/googlenest/answer/9235291
- https://stackoverflow.com/questions/11025553/wifi-connected-but-no-internet-access-diagnosing-dhcp-and-dns
- https://support.apple.com/en-us/HT202222
- https://documentation.meraki.com/MR/WiFi_Basics_and_Best_Practices/Wireless_Troubleshooting_Guide
- https://www.verizon.com/support/residential/internet/highspeed/networking/router/general+usage/questionsone/86274.htm