Error Medic

Internet Connected But No Internet Access: Complete Fix Guide (T-Mobile, Cox, Frontier & Laptops)

Fix 'connected but no internet' on any device or ISP. Step-by-step DNS flush, gateway reset, IP renewal, and driver fixes that actually work.

Last updated:
Last verified:
2,537 words
Key Takeaways
  • Root cause 1: IP address conflict or DHCP failure — your device gets an APIPA address (169.254.x.x) instead of a valid gateway IP, blocking all outbound traffic.
  • Root cause 2: DNS resolution failure — your device can reach the router but cannot resolve hostnames, producing 'DNS_PROBE_FINISHED_NO_INTERNET' or 'ERR_NAME_NOT_RESOLVED' in browsers.
  • Root cause 3: ISP-side outage or gateway misconfiguration — common with T-Mobile Home Internet (TMHI), Cox, and Frontier fiber ONT devices losing WAN authentication.
  • Root cause 4: Corrupted network stack or outdated Wi-Fi adapter driver on Windows/macOS laptops causing the 'No Internet, Secured' status indicator.
  • Quick fix summary: Release/renew IP, flush DNS cache, power-cycle modem and router in sequence, switch to public DNS (8.8.8.8 / 1.1.1.1), and update network adapter drivers if device-specific.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Power-cycle modem/router/gatewayFirst step for any ISP (T-Mobile, Cox, Frontier)5 minNone
ipconfig /release + /renew (Windows)APIPA address (169.254.x.x) or stale DHCP lease2 minNone
Flush DNS cache + reset WinsockERR_NAME_NOT_RESOLVED or DNS_PROBE_FINISHED_NO_INTERNET3 minNone
Change DNS to 8.8.8.8 / 1.1.1.1ISP DNS server down, slow, or blocking domains2 minLow
Reset TCP/IP stack (netsh int ip reset)Persistent no-internet after other fixes, Windows only5 min + rebootLow
Update/rollback network adapter driverLaptop-specific issue after Windows Update10 minLow
Factory reset routerRouter firmware corruption or misconfigured NAT/firewall20 minMedium — wipes settings
Contact ISP supportT-Mobile TMHI gateway offline, Cox/Frontier line fault30+ minNone

Understanding 'Internet Connected But No Internet'

When your device shows 'Connected' or 'No Internet, Secured' (Windows) / 'Connected without Internet' (Android) yet browsers return errors like ERR_NAME_NOT_RESOLVED, DNS_PROBE_FINISHED_NO_INTERNET, or This site can't be reached, the problem sits at one of three layers:

  1. Layer 3 (Network) — your device never received a valid routable IP address.
  2. Layer 7 (Application/DNS) — your device has an IP but cannot resolve domain names.
  3. ISP WAN layer — your router/gateway is healthy but your ISP's uplink is down or unauthenticated.

Windows detects internet connectivity by probing http://www.msftconnecttest.com/connecttest.txt. If that probe fails, the yellow exclamation mark appears. macOS uses captive.apple.com. Understanding this helps you pinpoint whether the failure is local or upstream.


Step 1: Identify Your Exact Symptom

Open a terminal or command prompt and run the following quick diagnostic sequence:

Windows:

ipconfig /all
ping 8.8.8.8
ping google.com
nslookup google.com
tracert 8.8.8.8

macOS / Linux:

ifconfig
ping -c 4 8.8.8.8
ping -c 4 google.com
nslookup google.com
traceroute 8.8.8.8

Interpret results:

  • IP starts with 169.254.x.x → DHCP failure (APIPA self-assigned address).
  • IP looks valid but ping 8.8.8.8 times out → routing or firewall issue.
  • ping 8.8.8.8 succeeds but ping google.com fails → DNS failure.
  • Both pings fail → gateway/ISP outage.

Step 2: Fix DHCP / IP Address Problems

If you have a 169.254.x.x address or no default gateway:

Windows (run as Administrator):

ipconfig /release
ipconfig /flushdns
ipconfig /renew

If /renew hangs or fails with "No operation can be performed on the Local Area Connection while it has its media disconnected", disable and re-enable the adapter:

netsh interface set interface "Wi-Fi" admin=disable
netsh interface set interface "Wi-Fi" admin=enable

macOS: Go to System Settings → Network → Wi-Fi → Details → TCP/IP → click Renew DHCP Lease.

Or via Terminal:

sudo ipconfig set en0 DHCP

Step 3: Fix DNS Resolution Failures

If ping to 8.8.8.8 works but domain names fail, flush your DNS cache and switch resolvers.

Windows:

netsh winsock reset
netsh int ip reset
ipconfig /flushdns
ipconfig /registerdns

Reboot after these commands.

macOS (Ventura/Sonoma):

sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Change DNS servers (Windows):

  1. Open Control Panel → Network and Sharing Center → Change adapter settings.
  2. Right-click your Wi-Fi adapter → Properties → Internet Protocol Version 4 (TCP/IPv4) → Properties.
  3. Select 'Use the following DNS server addresses':
    • Preferred: 8.8.8.8 (Google) or 1.1.1.1 (Cloudflare)
    • Alternate: 8.8.4.4 or 1.0.0.1

Step 4: Power-Cycle Your Gateway (All ISPs)

This is the highest-success-rate fix for T-Mobile Home Internet, Cox, and Frontier issues.

Correct sequence:

  1. Unplug your modem/gateway from power. Wait 60 seconds (not 10 — capacitors need to discharge).
  2. If you have a separate router, unplug it too.
  3. Plug the modem/gateway back in. Wait until all status lights stabilize (usually 90–120 seconds).
  4. Plug the router back in. Wait 60 seconds.
  5. Reconnect your device.

T-Mobile Home Internet specific: The TMHI gateway (Nokia or Arcadyan) sometimes loses its 5G NR connection. If the signal light is amber or blinking, use the T-Mobile app → Internet → Gateway → restart from the app, which performs a soft reboot with a cell re-registration sequence.

Cox specific: Cox uses DOCSIS modems. After power-cycling, check Cox's outage map at https://www.cox.com/local/outages.html before spending more time troubleshooting — provisioning outages are common.

Frontier specific: Frontier fiber uses an ONT (Optical Network Terminal). If your Frontier router shows WAN IP as 0.0.0.0 or the WAN light is off/red, the ONT may need a reset. Locate the ONT (usually a white box near where fiber enters your home), press the reset button for 10 seconds, then power-cycle your router.


Step 5: Laptop-Specific Fixes

If only one laptop has the problem while other devices work fine, the issue is device-specific.

Update or rollback Wi-Fi driver (Windows):

  1. Press Win + X → Device Manager.
  2. Expand Network Adapters → right-click your Wi-Fi adapter → Update driver.
  3. If the problem started after a Windows Update, choose Roll Back Driver instead.

Reset network stack completely (Windows — last resort before reinstall):

netsh winsock reset catalog
netsh int ipv4 reset reset.log
netsh int ipv6 reset reset.log
route /f
ipconfig /flushdns

Reboot.

Check VPN or proxy interference: A running VPN client or misconfigured system proxy can route all traffic through a dead tunnel. Disable your VPN, then check:

netsh winhttp show proxy

If it shows a proxy address, reset it:

netsh winhttp reset proxy

macOS — delete network preferences:

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

Reboot. macOS will regenerate clean network configuration files.


Step 6: Router Firewall and NAT Checks

Log in to your router admin panel (typically 192.168.1.1 or 192.168.0.1).

  • Check WAN IP address — if it shows 0.0.0.0 or an RFC 1918 address when it shouldn't (non-CGNAT scenarios), your router is not getting an IP from the ISP.
  • Verify DNS servers configured on the WAN side are not pointing to a dead ISP server.
  • Check firewall rules — ensure no rule is blocking outbound traffic on port 53 (DNS), 80 (HTTP), or 443 (HTTPS).
  • If you recently changed any settings, use Backup & Restore to revert, or perform a factory reset.

Step 7: Confirm ISP Outage

Before escalating your own troubleshooting, verify:

  • T-Mobile: Check https://www.t-mobile.com/support/account/network-status
  • Cox: Check https://www.cox.com/local/outages.html
  • Frontier: Check https://frontier.com/local/outages
  • Down Detector (any ISP): https://downdetector.com

If there is a confirmed outage, there is nothing to fix on your end — wait for the ISP to restore service.

Frequently Asked Questions

bash
#!/usr/bin/env bash
# ============================================================
# internet-diag.sh — Cross-platform Internet Connectivity
# Diagnostic & Auto-Fix Script
# Works on macOS and Linux. For Windows, see the PowerShell
# section commented out at the bottom.
# Run: bash internet-diag.sh
# ============================================================

DNS_TEST_HOST="google.com"
ICMP_TEST_IP="8.8.8.8"
SECONDARY_IP="1.1.1.1"
LOG_FILE="/tmp/internet-diag-$(date +%Y%m%d-%H%M%S).log"

echo "===== Internet Connectivity Diagnostic ====" | tee -a "$LOG_FILE"
echo "Date: $(date)" | tee -a "$LOG_FILE"
echo "Hostname: $(hostname)" | tee -a "$LOG_FILE"
echo "OS: $(uname -s)" | tee -a "$LOG_FILE"
echo "" | tee -a "$LOG_FILE"

# --- Step 1: Show current IP configuration ---
echo "[1] Network Interfaces and IPs:" | tee -a "$LOG_FILE"
if [[ "$(uname)" == "Darwin" ]]; then
  ifconfig | grep -E '(inet |ether )' | tee -a "$LOG_FILE"
else
  ip addr show | grep -E '(inet |link/)' | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 2: Check default gateway ---
echo "[2] Default Gateway:" | tee -a "$LOG_FILE"
if [[ "$(uname)" == "Darwin" ]]; then
  route -n get default 2>/dev/null | grep gateway | tee -a "$LOG_FILE"
else
  ip route | grep default | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 3: Ping gateway ---
GATEWAY=""
if [[ "$(uname)" == "Darwin" ]]; then
  GATEWAY=$(route -n get default 2>/dev/null | grep gateway | awk '{print $2}')
else
  GATEWAY=$(ip route | grep default | awk '{print $3}' | head -1)
fi

if [[ -n "$GATEWAY" ]]; then
  echo "[3] Pinging gateway ($GATEWAY):" | tee -a "$LOG_FILE"
  if ping -c 3 -W 2 "$GATEWAY" &>/dev/null; then
    echo "  PASS: Gateway reachable" | tee -a "$LOG_FILE"
  else
    echo "  FAIL: Cannot reach gateway — check router/cable" | tee -a "$LOG_FILE"
  fi
else
  echo "[3] FAIL: No default gateway found — DHCP may have failed" | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 4: Ping public IP (bypass DNS) ---
echo "[4] Pinging $ICMP_TEST_IP (Google DNS — no DNS needed):" | tee -a "$LOG_FILE"
if ping -c 3 -W 3 "$ICMP_TEST_IP" &>/dev/null; then
  echo "  PASS: Internet routing works" | tee -a "$LOG_FILE"
else
  echo "  FAIL: Cannot reach $ICMP_TEST_IP — ISP or router issue" | tee -a "$LOG_FILE"
  echo "  -> Try power-cycling your modem/gateway" | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 5: DNS resolution test ---
echo "[5] DNS Resolution Test ($DNS_TEST_HOST):" | tee -a "$LOG_FILE"
if nslookup "$DNS_TEST_HOST" 8.8.8.8 &>/dev/null; then
  echo "  PASS: DNS resolving via 8.8.8.8" | tee -a "$LOG_FILE"
else
  echo "  FAIL: DNS resolution failed" | tee -a "$LOG_FILE"
  echo "  -> Flushing DNS cache..." | tee -a "$LOG_FILE"
  if [[ "$(uname)" == "Darwin" ]]; then
    sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder
    echo "  macOS DNS cache flushed" | tee -a "$LOG_FILE"
  else
    # Linux (systemd-resolved)
    if systemctl is-active --quiet systemd-resolved; then
      sudo systemd-resolve --flush-caches
      echo "  systemd-resolved cache flushed" | tee -a "$LOG_FILE"
    fi
  fi
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 6: Test alternate DNS server ---
echo "[6] Testing Cloudflare DNS (1.1.1.1):" | tee -a "$LOG_FILE"
if nslookup "$DNS_TEST_HOST" "$SECONDARY_IP" &>/dev/null; then
  echo "  PASS: Cloudflare DNS works — your ISP DNS may be broken" | tee -a "$LOG_FILE"
  echo "  -> Consider setting DNS to 1.1.1.1 / 8.8.8.8" | tee -a "$LOG_FILE"
else
  echo "  FAIL: Cloudflare DNS also unreachable — routing issue upstream" | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

# --- Step 7: HTTP connectivity test ---
echo "[7] HTTP Connectivity Test:" | tee -a "$LOG_FILE"
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 10 http://www.google.com)
if [[ "$HTTP_CODE" == "200" || "$HTTP_CODE" == "301" || "$HTTP_CODE" == "302" ]]; then
  echo "  PASS: HTTP traffic working (code $HTTP_CODE)" | tee -a "$LOG_FILE"
else
  echo "  FAIL: HTTP test returned code '$HTTP_CODE'" | tee -a "$LOG_FILE"
  echo "  -> Check firewall rules or proxy settings" | tee -a "$LOG_FILE"
fi
echo "" | tee -a "$LOG_FILE"

echo "===== Diagnostic complete. Log saved to $LOG_FILE ====" | tee -a "$LOG_FILE"


# ============================================================
# WINDOWS POWERSHELL EQUIVALENT (run as Administrator)
# Save as internet-diag.ps1 and run: .\internet-diag.ps1
# ============================================================
# Write-Host "[1] IP Config:"
# ipconfig /all
#
# Write-Host "`n[2] Ping gateway:"
# $gw = (Get-NetRoute -DestinationPrefix '0.0.0.0/0').NextHop | Select-Object -First 1
# Test-Connection -ComputerName $gw -Count 3
#
# Write-Host "`n[3] Ping 8.8.8.8:"
# Test-Connection -ComputerName 8.8.8.8 -Count 3
#
# Write-Host "`n[4] DNS Test:"
# Resolve-DnsName google.com -Server 8.8.8.8
#
# Write-Host "`n[5] Flush DNS and reset Winsock:"
# ipconfig /flushdns
# netsh winsock reset
# netsh int ip reset
# Write-Host "Reboot required after reset commands."
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and network specialists with 10+ years of experience diagnosing connectivity issues across enterprise and consumer environments. We've resolved thousands of ISP-specific, OS-level, and hardware network failures and translate that expertise into clear, actionable troubleshooting guides.

Sources

Related Articles in Other Internet Connected But No Internet

Explore More wifi Guides