> ## Documentation Index
> Fetch the complete documentation index at: https://docs.derekdinh.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshooting No Internet Connection on Windows and Mac

> Follow these step-by-step instructions to diagnose and resolve a complete loss of internet connectivity on Windows and macOS systems.

Loss of internet connectivity can stem from a wide range of causes — a loose cable, a frozen router, a corrupted network adapter, or a misconfigured IP address. Before escalating to IT support, work through the steps below in order, as each one rules out a common root cause and builds on the last.

<Steps>
  <Step title="Check Physical Connections">
    Start with the simplest possible cause: a cable that has come loose or an indicator light that has changed state.

    * Verify that the **Ethernet cable** (if applicable) is firmly seated in both your computer's network port and the router or wall jack. Listen for the audible click of the connector locking in place.
    * Check the **lights on your router and modem**. A healthy setup typically shows a solid or slowly blinking WAN/Internet light. A red or absent light on the WAN port indicates a signal problem between your modem and the ISP.
    * If you are on Wi-Fi, confirm that **Wi-Fi is enabled** on your device and that you are associated with the correct network (not a neighbor's network or a stale profile).
    * Try connecting a **second device** to the same network. If that device also has no internet, the problem is almost certainly with the router, modem, or ISP — not your computer.

    <Note>
      If every device on the network has lost internet but the router itself appears healthy, call your ISP directly before proceeding further. They can confirm whether there is a line outage in your area.
    </Note>
  </Step>

  <Step title="Power Cycle the Router and Modem">
    A full power cycle clears the router's memory, refreshes its external IP lease, and re-establishes the handshake with your ISP.

    1. **Unplug the modem** from its power source.
    2. **Unplug the router** from its power source (if it is a separate device from the modem).
    3. Wait a full **60 seconds**. This allows capacitors to discharge and the ISP's equipment to register that your modem has gone offline.
    4. Plug the **modem** back in first and wait until its status lights stabilize (usually 30–60 seconds).
    5. Plug the **router** back in and wait for it to complete its boot sequence (another 30–60 seconds).
    6. Attempt to load a website.

    <Tip>
      If you have a combined modem/router unit, a single 60-second power cycle is sufficient. Avoid using the router's reset pinhole button — that performs a factory reset and erases your Wi-Fi credentials and custom settings.
    </Tip>
  </Step>

  <Step title="Check Your IP Address">
    If your device has not received a valid IP address from the router, it cannot route traffic to the internet. An address beginning with `169.254.x.x` indicates a failed DHCP lease.

    **Windows (PowerShell or Command Prompt):**

    ```powershell theme={null}
    ipconfig /all
    ```

    Look for the **IPv4 Address** field under your active adapter. A valid private address will start with `10.`, `172.16.`–`172.31.`, or `192.168.`. If you see `169.254.x.x`, your device could not reach the DHCP server.

    **macOS / Linux (Terminal):**

    ```bash theme={null}
    ifconfig
    # or on modern Linux distributions:
    ip addr show
    ```

    Look for the `inet` line on your active interface (`en0` on macOS, `eth0` or `enp3s0` on Linux). A `169.254.x.x` address here also signals a DHCP failure.

    **To request a fresh IP lease on Windows:**

    ```powershell theme={null}
    ipconfig /release
    ipconfig /renew
    ```

    **On macOS**, go to **System Settings → Network → \[Your Interface] → Details → TCP/IP** and click **Renew DHCP Lease**.

    <Warning>
      Running `ipconfig /release` immediately drops your network connection. Make sure you do not need active network access (e.g., a remote session) before running it.
    </Warning>
  </Step>

  <Step title="Flush the DNS Cache">
    Stale or corrupted DNS cache entries can prevent domain names from resolving, which looks identical to having no internet even when the underlying connection is healthy.

    **Windows:**

    ```powershell theme={null}
    ipconfig /flushdns
    ```

    Expected output: `Successfully flushed the DNS Resolver Cache.`

    **macOS (Ventura / Sonoma):**

    ```bash theme={null}
    sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
    ```

    **Linux (systemd):**

    ```bash theme={null}
    sudo systemd-resolve --flush-caches
    sudo systemd-resolve --statistics   # confirm CacheSize dropped to 0
    ```

    After flushing, try loading a website again. If pages load successfully, the issue was a stale DNS cache.

    <Note>
      DNS flushing is safe to run at any time and does not affect stored passwords, cookies, or browsing history. Your browser may prompt you to re-enter credentials on a few sites, which is normal.
    </Note>
  </Step>

  <Step title="Check Network Adapter Status">
    A disabled or error-state adapter will silently prevent all connectivity.

    **Windows:**

    1. Press **Win + R**, type `ncpa.cpl`, and press **Enter** to open Network Connections.
    2. Find your active adapter (e.g., **Ethernet** or **Wi-Fi**).
    3. If it shows a red X or the word **Disabled**, right-click it and choose **Enable**.
    4. If it shows a yellow warning triangle, right-click → **Diagnose** to run the Windows Network Diagnostics wizard.

    You can also check adapter status and reset it via PowerShell:

    ```powershell theme={null}
    # List all adapters and their status
    Get-NetAdapter

    # Disable and re-enable a specific adapter (replace 'Ethernet' with your adapter name)
    Disable-NetAdapter -Name "Ethernet" -Confirm:$false
    Enable-NetAdapter  -Name "Ethernet" -Confirm:$false
    ```

    **macOS:**

    1. Open **System Settings → Network**.
    2. Confirm your active interface shows a **green dot** next to it.
    3. If it is orange or red, toggle it off and back on using the gear icon, or click **Make Service Inactive / Make Service Active**.

    <Tip>
      Outdated or corrupted network adapter drivers are a common cause of persistent adapter errors on Windows. Open **Device Manager** (search from the Start menu), expand **Network Adapters**, right-click your adapter, and choose **Update driver**.
    </Tip>
  </Step>

  <Step title="Test Connectivity with Ping">
    Ping allows you to isolate exactly where the connection is failing — your local gateway, your ISP's infrastructure, or a remote server.

    ```powershell theme={null}
    # 1. Ping your local default gateway (replace with your actual gateway IP)
    ping 192.168.1.1

    # 2. Ping a known public IP address (Google's DNS server)
    ping 8.8.8.8

    # 3. Ping a hostname to test DNS resolution
    ping google.com
    ```

    **Interpreting results:**

    | Test                                    | Result              | Meaning                                                           |
    | --------------------------------------- | ------------------- | ----------------------------------------------------------------- |
    | Gateway ping fails                      | Request timed out   | Router unreachable — check physical connections or restart router |
    | Public IP ping succeeds, hostname fails | DNS failure         | Follow the DNS flush steps above or change your DNS server        |
    | Public IP ping fails                    | ISP or WAN issue    | Contact your ISP                                                  |
    | All pings succeed but browser fails     | Browser/proxy issue | Reset browser settings or check proxy configuration               |

    <Note>
      Some servers and routers block ICMP (ping) by default. A failed ping to `8.8.8.8` does not always mean connectivity is lost — also try `tracert 8.8.8.8` (Windows) or `traceroute 8.8.8.8` (macOS/Linux) for a more detailed path analysis.
    </Note>
  </Step>

  <Step title="Escalation Steps">
    If none of the above steps restore connectivity, gather the following information before contacting IT support or your ISP — it will significantly speed up the diagnosis.

    <Accordion title="Information to collect before escalating">
      * **Full output of `ipconfig /all`** (Windows) or `ifconfig` / `ip addr show` (macOS/Linux)
      * **Results of your ping tests** to the gateway, `8.8.8.8`, and `google.com`
      * **Router/modem model number** and current firmware version (found in the router's admin page)
      * **When the problem started** and whether any changes were made beforehand (OS update, new software, moved office)
      * **Number of devices affected** — just yours, or the whole network?
      * **Event Viewer logs** on Windows: open Event Viewer → **Windows Logs → System** and filter for errors around the time connectivity was lost
    </Accordion>

    <Warning>
      Do not attempt to modify router firmware, reset network hardware to factory defaults, or change ISP-provisioned settings without explicit authorization from IT. These actions can cause broader outages affecting other users.
    </Warning>
  </Step>
</Steps>
