Error Medic

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 reset, driver update, and router fixes that actually work.

Last updated:
Last verified:
2,661 words
Key Takeaways
  • Root cause 1: IP address conflict or DHCP failure — your device gets a 169.254.x.x (APIPA) address instead of a valid one, meaning the router couldn't assign a proper lease.
  • Root cause 2: DNS resolution failure — the device is physically connected and has an IP, but cannot translate domain names to addresses, giving errors like 'DNS_PROBE_FINISHED_NO_INTERNET' or 'ERR_NAME_NOT_RESOLVED'.
  • Root cause 3: Router or modem has lost its upstream WAN connection to the ISP (Cox, Charter, Fios, Frontier, Bell, etc.) while local LAN still works.
  • Root cause 4: Captive portal not dismissed (common in hotels, guest WiFi, car hotspots, and Amazon Fire tablets on public networks).
  • Quick fix summary: Restart modem/router, release and renew your IP (ipconfig /release && ipconfig /renew on Windows; sudo dhclient -r && sudo dhclient on Linux), flush DNS (ipconfig /flushdns or sudo dscacheutil -flushcache on macOS), switch DNS to 8.8.8.8, and check ISP status page before escalating.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Restart modem + router (power cycle)First step for any ISP issue — Cox, Charter, Fios, Bell, Frontier3–5 minNone
Release/Renew IP (DHCP reset)169.254.x.x address, APIPA, or 'no valid IP' shown1 minNone
Flush DNS cacheSites unreachable, DNS_PROBE_FINISHED_NO_INTERNET, ERR_NAME_NOT_RESOLVED30 secNone
Change DNS to 8.8.8.8 / 1.1.1.1ISP DNS server down or slow, persistent DNS failures2 minVery Low
Forget & reconnect WiFi networkSaved credentials corrupted, wrong password after router reset2 minLow
Update/rollback network adapter driverIssue after OS update (macOS Monterey, Windows 11), Dell/HP/Lenovo laptops10–20 minLow
Reset TCP/IP stack (netsh / route flush)Deep protocol corruption, persistent failure after other fixes on Windows/Linux/Kali5 minLow
Factory reset routerMeraki misconfiguration, Google Nest WiFi loop, all other fixes failed30 minHigh — loses all settings
Dismiss captive portal manuallyHotel WiFi, guest WiFi, car WiFi, Fire tablet on public network1 minNone
Disable IPv6 / VPN conflict resolutionVPN running, 5GHz band dropping, Android box or mobile WiFi issues5 minVery Low

Understanding 'WiFi Connected But No Internet'

When your device shows a WiFi connection but has no internet, it means the device successfully associated with the wireless access point (Layer 2 connectivity exists) but cannot route traffic to the public internet (Layer 3/Layer 7 failure). This is one of the most common networking issues across all devices and ISPs.

You may see these exact messages depending on your platform:

  • Windows: "No Internet, Secured" or "Unidentified Network" in the system tray
  • Android/Chrome: "Connected, no internet" or "WiFi has no internet access"
  • macOS/iOS: "Not Connected to Internet" or the WiFi icon shows with an exclamation mark
  • Browser: ERR_NAME_NOT_RESOLVED, DNS_PROBE_FINISHED_NO_INTERNET, ERR_INTERNET_DISCONNECTED
  • Kali Linux / Ubuntu: ping: connect: Network is unreachable or Temporary failure in name resolution

Step 1: Identify the Scope

Before touching settings, answer three questions:

  1. Is it only your device, or all devices? Test another phone, laptop, or tablet on the same WiFi. If all devices fail, the issue is the router/modem or ISP. If only yours fails, the issue is device-specific.
  2. Does a wired (Ethernet) connection work? Plug in directly. If wired works, the issue is your WiFi adapter or radio settings.
  3. Is your ISP having an outage? Check Downdetector.com or your ISP's status page (e.g., status.cox.com, downdetector.com/status/charter, verizon.com/support for Fios, bell.ca/support for Bell, frontier.com/local/support for Frontier).

Step 2: Power Cycle Your Modem and Router

This resolves the majority of ISP-side issues including Cox Panoramic WiFi, Google Nest WiFi, and Meraki access points losing WAN connectivity:

  1. Unplug the modem from power (not just the router).
  2. Wait 60 full seconds. Do not skip this — capacitors need to discharge.
  3. Plug the modem back in and wait 2 minutes for it to sync with the ISP.
  4. Then plug in/restart the router.
  5. Wait another 60 seconds before reconnecting devices.

For Cox Panoramic WiFi or Google Nest WiFi: use the ISP app to reboot — Cox app → My Tools → Restart Equipment; Google Home app → WiFi → Settings → Restart Network.


Step 3: Release and Renew IP Address

If your device shows an IP like 169.254.x.x, this is an APIPA address, meaning DHCP failed. Fix it:

Windows:

ipconfig /release
ping 127.0.0.1 -n 3
ipconfig /renew

macOS (Monterey and others): Go to System Preferences → Network → WiFi → Advanced → TCP/IP → Click "Renew DHCP Lease".

Linux / Kali Linux:

sudo dhclient -r wlan0
sudo dhclient wlan0

Android (LG G7, Moto E6, Android box): Forget the network and reconnect. Or toggle Airplane Mode on for 15 seconds, then off.


Step 4: Flush DNS Cache

Stale or corrupt DNS entries cause DNS_PROBE_FINISHED_NO_INTERNET even when connectivity is fine.

Windows:

ipconfig /flushdns
netsh int ip reset
netsh winsock reset

macOS Monterey / macOS 12+:

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Linux / Kali Linux:

sudo systemd-resolve --flush-caches
sudo systemctl restart NetworkManager

Chrome / Chromebook: Navigate to chrome://net-internals/#dns → Click "Clear host cache". Also go to chrome://net-internals/#sockets → "Flush socket pools".


Step 5: Change DNS Servers

Switch away from ISP-assigned DNS to Google or Cloudflare:

Primary DNS: 8.8.8.8 (Google) or 1.1.1.1 (Cloudflare) Secondary DNS: 8.8.4.4 (Google) or 1.0.0.1 (Cloudflare)

  • Windows: Control Panel → Network Adapters → WiFi → Properties → IPv4 → Use following DNS
  • macOS: System Preferences → Network → WiFi → Advanced → DNS → add 8.8.8.8
  • Android: WiFi → Long press network → Modify → Advanced → IP Settings: Static → enter DNS
  • Router level: Log in to router admin (usually 192.168.1.1 or 192.168.0.1) → WAN settings → DNS

Step 6: Device-Specific Fixes

MacBook Air / MacBook Pro / macOS Monterey: Delete the WiFi preference files that store corrupted network configs:

sudo rm /Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist
sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist

Then restart and reconnect to WiFi.

Dell Laptop / HP Laptop / Lenovo Laptop: Update or rollback the wireless adapter driver. Go to Device Manager → Network Adapters → right-click → Update Driver. For Intel WiFi 6 cards, download directly from intel.com/wireless.

Chromebook:

  1. Forget the network and reconnect.
  2. Check that the date/time is correct (wrong time causes SSL certificate failures that appear as "no internet").
  3. Try a different DNS via Settings → Network → WiFi → Name Servers.

Amazon Fire Tablet / Fire Tablet: Fire tablets often get stuck on captive portals. Open the Silk browser and navigate to http://connectivitycheck.gstatic.com/generate_204 — this forces the captive portal login page. Alternatively, go to Settings → Wireless → WiFi → tap the connected network → forget it, then reconnect.

LG TV / Android TV / Android Box: Go to Settings → Network → WiFi → clear saved networks. If using 5GHz, try switching to 2.4GHz which has better range and compatibility with older smart TV chipsets.

iOS (iPhone/iPad):

  1. Settings → General → Transfer or Reset iPhone → Reset → Reset Network Settings.
  2. This clears all saved WiFi passwords, VPN, APN settings.
  3. Reconnect after reset.

Kali Linux: Kali's NetworkManager sometimes conflicts with wpa_supplicant:

sudo systemctl stop NetworkManager
sudo ip link set wlan0 down
sudo ip link set wlan0 up
sudo systemctl start NetworkManager

Step 7: Hotel WiFi, Guest WiFi, Car WiFi, Hotspot

Public/captive-portal networks require you to complete a browser-based login. Your device connects at Layer 2 but all traffic is redirected until you authenticate:

  1. Open a browser and navigate to a plain HTTP site like http://neverssl.com or http://example.com to trigger the portal redirect.
  2. On Android: Tap the notification "Sign in to network" when it appears.
  3. If no portal appears, set your DNS to 8.8.8.8 and try again — sometimes ISP-assigned DNS blocks the redirect.
  4. For hotel WiFi on Android: the OS may mark it as "no internet" and switch to mobile data. Go to WiFi settings → long press the hotel network → "Don't switch to mobile data when poor connection".

Step 8: 5GHz Band Specific Issues

The 5GHz band (802.11ac/ax) has shorter range and can drop more easily:

  1. Check if your router has a separate 5GHz SSID. Connect to it explicitly.
  2. Move closer to the router — 5GHz struggles through walls.
  3. On your router admin panel, set 5GHz channel to 36, 40, 44, or 48 (avoid DFS channels 52–140 which can auto-switch causing drops).
  4. If using a dual-band router with Band Steering, disable it temporarily and test each band independently.

Step 9: Meraki and Enterprise WiFi

For Cisco Meraki access points showing clients as "connected, no internet":

  1. Dashboard → Network-wide → Clients → find device → check DHCP lease and gateway.
  2. Check Firewall rules under Security → Firewall — a misconfigured L3 rule can block WAN traffic.
  3. Verify Group Policy assigned to the client SSID is not blocking internet.
  4. Check Uplink status under Appliance → Uplink — if WAN is red, the MX is offline upstream.
  5. Run packet capture from Dashboard → Tools → Packet Capture on the WAN interface.

Step 10: When Nothing Works — Full TCP/IP Stack Reset

For Windows, run as Administrator:

netsh int ip reset resetlog.txt
netsh winsock reset catalog
netsh int ipv6 reset reset.log
route -f
shutdown /r /t 5

For Linux:

sudo ip route flush table main
sudo ip route add default via <your_gateway_ip>
sudo systemctl restart networking

Replace <your_gateway_ip> with your router's IP (find it with ip route | grep default before flushing).

Frequently Asked Questions

bash
#!/bin/bash
# ============================================================
# WiFi Connected But No Internet - Comprehensive Diagnostic Script
# Run on Linux/macOS. For Windows commands, see comments.
# ============================================================

echo "=== 1. CHECK CURRENT IP ADDRESS ==="
ip addr show 2>/dev/null || ifconfig  # Linux
# Windows: ipconfig /all

echo ""
echo "=== 2. CHECK DEFAULT GATEWAY ==="
ip route show default 2>/dev/null || netstat -rn | grep default
# Windows: route print | findstr "0.0.0.0"

echo ""
echo "=== 3. PING GATEWAY (Layer 3 LAN test) ==="
GATEWAY=$(ip route show default | awk '/default/ {print $3}' | head -1)
if [ -n "$GATEWAY" ]; then
    echo "Gateway: $GATEWAY"
    ping -c 4 "$GATEWAY"
else
    echo "No gateway found — DHCP may have failed"
fi
# Windows: ping $(route print | findstr "0.0.0.0")

echo ""
echo "=== 4. PING GOOGLE DNS BY IP (tests WAN, bypasses DNS) ==="
ping -c 4 8.8.8.8
# If this FAILS: ISP/modem/router is blocking WAN — not a DNS issue
# If this SUCCEEDS but websites fail: DNS problem
# Windows: ping 8.8.8.8

echo ""
echo "=== 5. DNS RESOLUTION TEST ==="
nslookup google.com 8.8.8.8
# Windows: nslookup google.com 8.8.8.8

echo ""
echo "=== 6. CHECK DNS SERVERS IN USE ==="
cat /etc/resolv.conf 2>/dev/null
# macOS: scutil --dns | grep nameserver
# Windows: ipconfig /all | findstr "DNS Servers"

echo ""
echo "=== 7. FLUSH DNS CACHE ==="
# Linux (systemd):
sudo systemd-resolve --flush-caches 2>/dev/null && echo "DNS flushed (systemd-resolve)" || echo "systemd-resolve not available"
sudo systemctl restart NetworkManager 2>/dev/null && echo "NetworkManager restarted"
# macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
# Windows: ipconfig /flushdns

echo ""
echo "=== 8. RELEASE AND RENEW DHCP LEASE ==="
WIFI_IFACE=$(ip link show | grep -E 'wlan|wlp' | awk -F: '{print $2}' | tr -d ' ' | head -1)
if [ -n "$WIFI_IFACE" ]; then
    echo "WiFi interface detected: $WIFI_IFACE"
    sudo dhclient -r "$WIFI_IFACE" 2>/dev/null
    sleep 2
    sudo dhclient "$WIFI_IFACE" 2>/dev/null
    echo "DHCP lease renewed on $WIFI_IFACE"
else
    echo "No WiFi interface found — check 'ip link show'"
fi
# Windows: ipconfig /release && ipconfig /renew
# macOS: System Preferences > Network > WiFi > Advanced > TCP/IP > Renew DHCP Lease

echo ""
echo "=== 9. SET TEMPORARY DNS TO GOOGLE (Linux) ==="
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf.bak > /dev/null
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 8.8.4.4" | sudo tee -a /etc/resolv.conf
echo "DNS set to 8.8.8.8 and 8.8.4.4 — test browsing now"

echo ""
echo "=== 10. CAPTIVE PORTAL CHECK ==="
curl -s -o /dev/null -w "%{http_code}" http://connectivitycheck.gstatic.com/generate_204
echo " (should be 204 if internet works, 302 if captive portal)"

echo ""
echo "=== 11. WINDOWS-ONLY FULL RESET (run as Administrator in cmd) ==="
echo "netsh int ip reset resetlog.txt"
echo "netsh winsock reset catalog"
echo "netsh int ipv6 reset reset.log"
echo "ipconfig /flushdns"
echo "route -f"
echo "shutdown /r /t 5"

echo ""
echo "=== 12. KALI LINUX SPECIFIC ==="
# sudo systemctl stop NetworkManager
# sudo ip link set wlan0 down && sudo ip link set wlan0 up
# sudo systemctl start NetworkManager
# sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
# sudo dhclient wlan0

echo ""
echo "=== DIAGNOSTIC COMPLETE — Review output above ==="
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and network administrators with 10+ years of experience diagnosing connectivity issues across enterprise, ISP, and consumer environments. Our guides are tested on real hardware across Windows, macOS, Linux, Android, and iOS platforms before publication.

Sources

Related Articles in Other Wifi Connected But No Internet

Explore More wifi Guides