Macos – Debugging OSX airport wifi connection

airportmacos

I just got a preconfigured Macbook Air (with 10.8.3) that refuses to connect to my house WiFi and gives an uninformative "connection timeout" message. The router/modem is working, every other device in house is able to connect using the same network name and password. I verified I was entering the correct password by checking the router admin page.

If there is such a thing as "too many devices" connected a router, I turned off all other network appliances/gadgets at home and tried connecting again with the Air. Still no luck.

I also tried removing com.apple.airport.preferences.plist from /Library/Preferences/SystemConfiguration and restarting as suggested in a MacRumors post. Didn't do anything.

Another bizarre thing is this Macbook Air has no problem connecting to an open WiFi one of my neighbors have (yes, such people exist). I'm using WPA2 and don't want to make my WiFi open.

Has anyone encountered something like this? Also, is there something (preferably command line) tool that will give me more verbose diagnostics about why airport is not connecting?

Best Answer

I can answer the second of your questions (now, probably, long since fixed), about verbose wifi diagnostics, in case others have similar problems.

There's an little-known OSX program called /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport which can do marvelous things. That's a long command to type each time, so I added two lines to my .bash_profile. The first aliases my alias "wifi" to this command and the second allows the alias to work with the sudo command:

alias wifi='/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport'
alias sudo='sudo '

The airport command has some options. Type (using my alias) wifi -h to get a short report or wifi -H to see them all. Among its functions are options to programmatically connect to a wifi router, turn on advanced diagnostics and even activate sniffing. Here are some helpful ones for your problem:

Information on the current state of the wifi:

wifi -I

Scan the available wifis and give a full report:

wifi -s

Turn on debug of user-level functions:

sudo wifi en1 debug +AllUserLand

Turn on debug of driver-level functions:

sudo wifi en1 debug +AllDriver

Turn on vendor-level functions:

sudo wifi en1 debug +AllVendor

Direct the output to /var/log/wifi.log:

sudo wifi en1 debug +LogFile

Start the console and point it to /var/log/wifi.log (the logs are listed in the left-hand column when you click the first icon in the top row: Show Log List).

Related Question