IMac loses WiFi connectivity, doesn’t show it

imacwifi

In the past few days, my 2011-model iMac with Yosemite 10.10.2 has started dropping wireless connection, yet it doesn't seem to be aware.

I'll be using the computer, and notice a sudden loss of internet connection. The WiFi status indicator on the toolbar hasn't changed, holding option while clicking shows that it thinks it's fully connected, shows the signal strength info I would expect, says the internet is "reachable", etc.

However, pinging any domain/IP fails, and even pinging the router itself fails. Turning off the iMac WiFi and back on works – but only lasts until the next disconnect.

As far as I can tell, it's not the router. I have a PC, other Macs, and iPad/iPhone devices and they have no trouble.

I can't say for sure, but this didn't begin until after our area experienced a power outage and my iMac was cut off from power.

A week ago I installed a new Linksys WRT AC1900 router because I needed to solve signal strength and other issues with my last router. For the first several days I had no trouble.

I have two questions:

  • Does anyone know what might even cause this?
  • How can I better debug the issue?

Update:

Here's a picture of the alt+click of the wifi menu when I notice the internet has suddenly dropped:

Unreachable

And here's a picture of the same menu after I've reconnected and have internet access:

Reachable

While unreachable, I also cannot ping the router itself:

PING 172.168.1.1 (172.168.1.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1

And the same ping while the connection is back:

PING 172.168.1.1 (172.168.1.1): 56 data bytes
64 bytes from 172.168.1.1: icmp_seq=0 ttl=64 time=1.224 ms
64 bytes from 172.168.1.1: icmp_seq=1 ttl=64 time=1.064 ms
64 bytes from 172.168.1.1: icmp_seq=2 ttl=64 time=0.959 ms
64 bytes from 172.168.1.1: icmp_seq=3 ttl=64 time=0.940 ms

Best Answer

This little script will tell you when you are not connected to the Internet. If you want to Ping (and monitor) your router instead, change the Google.com to your Router address.

It will not solve your no connection problem that can have many other reasons. Like flaky connection to the router, like crowded channel, like a limitation by the IP provider on number of connections, and so on.

To help you solve that we need much more information on your set up and connection numbers.

repeat
    try
        do shell script "ping -c 5 google.com"
    on error
        display dialog "You are not connected to the internet"
    end try
end repeat

As for debugging, hold the alt key and click on your WiFi icon and select the Open Wireless diagnostics (at the bottom). Now you will have access to 2 tools to do some debugging.