Error Medic

Connected to WiFi But No Internet Connection: Complete Fix Guide (iPhone, iPad & More)

Fix 'connected to WiFi but no internet' on iPhone, iPad & other devices. Step-by-step DNS flush, IP reset, and router fixes that actually work.

Last updated:
Last verified:
2,418 words
Key Takeaways
  • Root Cause 1: IP address conflict or DHCP lease failure — your device received an invalid or duplicate IP from the router, blocking internet routing even though WiFi is connected.
  • Root Cause 2: DNS misconfiguration or DNS server outage — your device cannot resolve domain names, so pages fail to load even though the network link itself is active.
  • Root Cause 3: Router or modem firmware glitch, captive portal not dismissed, or ISP-side outage — physical connectivity exists but upstream routing is broken.
  • Quick Fix Summary: Restart the router and device, forget and rejoin the WiFi network, flush DNS cache, switch to a public DNS (8.8.8.8 or 1.1.1.1), and release/renew your IP lease. If problems persist, reset network settings on mobile or run the Windows Network Diagnostics tool.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Restart Router + DeviceFirst step for any 'no internet' issue on any platform2-5 minNone
Forget & Rejoin WiFi NetworkIP conflict, authentication error, or stale network profile1-2 minNone — re-enter password
Flush DNS Cache (Windows/Mac)Pages not loading but ping to IP addresses works< 1 minNone
Change DNS to 8.8.8.8 / 1.1.1.1ISP DNS server down or returning wrong results2-3 minVery low
Release & Renew IP (ipconfig/ifconfig)DHCP conflict, 169.254.x.x self-assigned IP1-2 minNone
Reset Network Settings (iPhone/iPad)Persistent failures after all other steps on iOS3 minErases all saved WiFi passwords
Update Router FirmwareRouter firmware bug causing incorrect NAT or DHCP10-20 minLow — router reboots
Factory Reset RouterLast resort — no other fix restores internet20-30 minHigh — all settings erased
Contact ISPOutage confirmed on ISP status page or all devices affectedVariesNone

Understanding 'Connected to WiFi But No Internet Connection'

This error describes a scenario where your device successfully associates with a WiFi access point — the signal bars are full, the network name appears in your settings — but you cannot load any web pages, send messages, or reach online services. The operating system often surfaces this as a yellow exclamation mark on Windows, 'No Internet Connection' under the network name on Android, or simply a page that refuses to load on iOS.

The key insight is that WiFi connectivity and internet connectivity are two separate things. WiFi is a Layer 2 (data link) connection between your device and a local router. Internet access requires a correctly configured Layer 3 (network/IP) path all the way from your device through the router, through the modem, through your ISP's network, and out to the public internet. Any break in that chain produces this symptom.


Step 1: Identify the Scope of the Problem

Before changing anything, determine whether the issue is:

  • Device-specific: Only one phone or laptop is affected while others work fine.
  • Network-wide: All devices on the same WiFi show no internet.
  • ISP-level outage: Your router admin page loads but nothing external does.

Test on Windows: Open Command Prompt and run:

ping 8.8.8.8
ping google.com

If ping 8.8.8.8 succeeds but ping google.com fails, your DNS is broken. If both fail, your routing or ISP link is down.

Test on macOS: Open Terminal:

ping -c 4 8.8.8.8
nslookup google.com

Test on iPhone/iPad: Go to Settings > WiFi > tap the (i) next to your network. Check the IP Address field. If it reads 169.254.x.x, your device failed to get a valid IP from the router (APIPA self-assigned address) — a clear sign of a DHCP problem.


Step 2: Restart the Router and Your Device

The single most effective first step. Power-cycle your modem and router by unplugging them from the wall for 30 seconds, then plug the modem in first, wait 60 seconds, then plug the router in. Wait another 60 seconds before reconnecting your device.

On iPhone or iPad: Hold the side button + volume button, drag to power off, wait 30 seconds, power back on. On Windows: Start > Power > Restart (not Shut Down, which may leave network drivers in a bad state). On macOS: Apple menu > Restart.


Step 3: Forget and Rejoin the WiFi Network

Stale DHCP leases and corrupted network profiles are a common cause of persistent 'no internet' issues even after reboots.

On iPhone/iPad (iOS 16+):

  1. Settings > WiFi
  2. Tap the (i) icon next to your network name
  3. Tap "Forget This Network"
  4. Confirm, then reconnect by tapping the network and entering your password

On macOS:

  1. System Settings > WiFi > Details next to the network
  2. Click "Forget This Network"
  3. Reconnect manually

On Windows 11:

  1. Settings > Network & Internet > WiFi > Manage known networks
  2. Click your network > Forget
  3. Reconnect from the taskbar WiFi menu

Step 4: Check and Fix Your IP Address

If your IP address is in the 169.254.0.0/16 range, DHCP failed. Release and renew:

Windows (Command Prompt as Administrator):

ipconfig /release
ipconfig /renew
ipconfig /flushdns

macOS (Terminal):

sudo ipconfig set en0 DHCP
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

iPhone/iPad — Renew DHCP Lease:

  1. Settings > WiFi > tap (i) next to your network
  2. Scroll to IPv4 Address section
  3. Tap "Renew Lease"

Step 5: Change Your DNS Servers

A failing or misconfigured DNS server means your device cannot convert domain names like google.com into IP addresses. Switching to a reliable public DNS server often instantly restores internet access.

On iPhone/iPad:

  1. Settings > WiFi > tap (i) next to your network
  2. Scroll to DNS section > tap "Configure DNS"
  3. Switch from Automatic to Manual
  4. Delete existing servers and add: 8.8.8.8 and 1.1.1.1
  5. Tap Save

On macOS:

  1. System Settings > WiFi > Details > DNS
  2. Click (+) and add 8.8.8.8 and 1.1.1.1
  3. Click OK

On Windows:

  1. Control Panel > Network and Sharing Center > Change adapter settings
  2. Right-click your WiFi adapter > Properties
  3. Double-click "Internet Protocol Version 4 (TCP/IPv4)"
  4. Select "Use the following DNS server addresses"
  5. Preferred: 8.8.8.8, Alternate: 1.1.1.1
  6. Click OK

Step 6: Reset Network Settings on iPhone or iPad

If all else fails on iOS devices, a full network settings reset wipes all saved WiFi passwords, VPN configurations, and cellular settings — restoring networking to factory defaults.

iOS 16 and later:

  1. Settings > General > Transfer or Reset iPhone
  2. Reset > Reset Network Settings
  3. Enter your device passcode and confirm

Warning: You will need to re-enter passwords for all saved WiFi networks after this reset.


Step 7: Check for Captive Portals

Hotels, airports, coffee shops, and corporate networks often use captive portals that require you to log in or accept terms before granting full internet access. iOS and Android should automatically detect these and prompt you, but this detection sometimes fails.

Open Safari or Chrome and navigate to http://neverssl.com (a plain HTTP site). If a captive portal is active, it will redirect you to the login page. Accept the terms and internet should work.


Step 8: Advanced Router-Level Diagnostics

If multiple devices are affected, the issue is upstream from your devices. Log into your router admin panel (commonly http://192.168.1.1 or http://192.168.0.1, credentials on the router sticker) and check:

  • WAN Status: Should show a public IP address. If it shows 0.0.0.0 or is disconnected, your ISP link is down.
  • DHCP Server: Make sure it is enabled and has available IP leases.
  • DNS Settings: Verify the router has valid DNS servers configured on its WAN interface.
  • MTU Settings: For PPPoE connections, try setting MTU to 1452.

If the WAN shows no IP, contact your ISP. Check their status page first (e.g., downdetector.com) to rule out a widespread outage.

Frequently Asked Questions

bash
#!/usr/bin/env bash
# ============================================================
# WiFi No-Internet Diagnostic & Fix Script
# Works on: macOS and Linux (run with sudo on Linux)
# For Windows, see the PowerShell commands in the comments
# ============================================================

echo "=== WiFi No-Internet Diagnostic Tool ==="
echo ""

# --- Step 1: Check current IP address ---
echo "[1] Current IP Configuration:"
if [[ "$(uname)" == "Darwin" ]]; then
  # macOS
  ifconfig en0 | grep -E 'inet |status'
else
  # Linux
  ip addr show | grep -E 'inet |state'
fi
echo ""

# --- Step 2: Check Default Gateway ---
echo "[2] Default Gateway:"
if [[ "$(uname)" == "Darwin" ]]; then
  netstat -nr | grep default | head -3
else
  ip route | grep default
fi
echo ""

# --- Step 3: Ping the gateway ---
GATEWAY=$(if [[ "$(uname)" == "Darwin" ]]; then netstat -nr | grep default | awk '{print $2}' | head -1; else ip route | grep default | awk '{print $3}'; fi)
echo "[3] Pinging gateway ($GATEWAY):"
ping -c 4 "$GATEWAY"
echo ""

# --- Step 4: Ping a public IP (bypasses DNS) ---
echo "[4] Pinging 8.8.8.8 (Google DNS - no DNS required):"
ping -c 4 8.8.8.8
echo ""

# --- Step 5: DNS resolution test ---
echo "[5] DNS Resolution Test for google.com:"
nslookup google.com
echo ""

# --- Step 6: Trace the route to internet ---
echo "[6] Traceroute to 8.8.8.8 (first 10 hops):"
traceroute -m 10 8.8.8.8 2>/dev/null || tracepath -m 10 8.8.8.8
echo ""

# --- Step 7: Flush DNS cache ---
echo "[7] Flushing DNS Cache..."
if [[ "$(uname)" == "Darwin" ]]; then
  sudo dscacheutil -flushcache
  sudo killall -HUP mDNSResponder
  echo "macOS DNS cache flushed."
else
  # Linux with systemd-resolved
  sudo systemd-resolve --flush-caches 2>/dev/null || sudo /etc/init.d/nscd restart 2>/dev/null
  echo "Linux DNS cache flushed."
fi
echo ""

# --- Step 8: Renew DHCP lease (macOS) ---
if [[ "$(uname)" == "Darwin" ]]; then
  echo "[8] Renewing DHCP lease on en0..."
  sudo ipconfig set en0 DHCP
  sleep 3
  echo "New IP: $(ipconfig getifaddr en0)"
  echo ""
fi

# --- Step 9: Test with manual DNS ---
echo "[9] Testing DNS with Google's server (8.8.8.8):"
nslookup google.com 8.8.8.8
echo ""

echo "=== Diagnosis Complete ==="
echo ""
echo "Interpretation Guide:"
echo "  - If Step 3 (gateway ping) FAILS: Router/WiFi issue. Restart router."
echo "  - If Step 4 (8.8.8.8 ping) FAILS but Step 3 works: ISP or routing issue."
echo "  - If Step 5 (nslookup) FAILS but Step 4 works: DNS is broken. Change to 8.8.8.8."
echo "  - If Step 9 works but Step 5 fails: Your ISP DNS is down. Use 8.8.8.8 permanently."
echo ""

# ============================================================
# WINDOWS EQUIVALENT COMMANDS (run in elevated PowerShell)
# ============================================================
# ipconfig /all                          # Check IP / gateway
# ping 192.168.1.1                       # Ping your gateway
# ping 8.8.8.8                          # Test internet routing
# nslookup google.com                    # Test DNS
# ipconfig /release                      # Release IP lease
# ipconfig /renew                        # Request new IP
# ipconfig /flushdns                     # Clear DNS cache
# netsh winsock reset                    # Reset Winsock
# netsh int ip reset                     # Reset TCP/IP stack
# netsh interface ipv4 set dns "Wi-Fi" static 8.8.8.8   # Set DNS
# Restart-NetAdapter -Name "Wi-Fi"       # Restart adapter
# ============================================================
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, network administrators, and SRE specialists with 10+ years of experience diagnosing infrastructure, connectivity, and platform issues across enterprise and consumer environments. Our guides are tested on real hardware and validated against official documentation from Apple, Microsoft, Google, and major ISPs.

Sources

Related Articles in Other Connected To Wifi But No Internet Connection

Explore More wifi Guides