“Network Timeout”? Substitute your Mac’s Airport kexts
After a System Update your 802.11n Airport card suddenly can’t join the WiFi network and spits out a “Network timeout”? You can probably solve the problem by substituting two kernel extensions.
Apple MacBooks with Airport Extreme cards (802.11n) may be unable to connect to some Access Points after updating to a newer version of Mac OS X, both in 10.4 (Tiger) and 10.5 (Leopard)
What you get is that the WiFi looks on and “sees” the local network but it doesn’t connect to it and if you force it by specifying the network name it tries and fails with a “Network timeout” error.
Let me specify that this is no disconnection or slowdown or lag, or MTU or WPA or DNS issue. Airport doesn’t connect at all to the AP and even local area network doesn’t work. This happens only with some router/AP brands, regardless of their price and (supposed) quality. So a cheap D-link might work and an expensive US Robotics might not.
The problem happened to me when I upgraded my MacBook Pro’s operating system from Mac OS X 10.4.4 to 10.4.11 and I’ve seen it happen again when going from 10.5.0 to 10.5.7. It also happens with the stock version of Mac OS X 10.6.0 but I don’t know if there’s a solution for that since you cannot go back (as explained later in this text).
If you want to know if you have this specific problem, open the Console.
Every Airport malfunction has a specific code and in the “Network timeout” case you will find this in your log:
airportd[6298]: Error: Apple80211Associate() failed -6
airportd[6298]: Error: process_command_dict() failed SystemUIServer[137]: Error: airportd MIG failed = -6 ((null)) (port = 63763)
If you try to troubleshoot your WiFi with iStumbler and attempt to connect, there will also be this error in the Console:
WARNING AirPortScanner joinNetwork WIErr -2013261818 airpInternal2Err
The solution is very simple and just involves replacing two files.
It needs an administrator account and a bit of knowledge of what you are doing since it involves a core part of OS X’ networking and it’s always risky.
Disclaimer: although I have tried this and successfully solved the problem on Mac OS X 10.5.7 using the .kexts from 10.5.0. I cannot and will not guarantee this will solve your network timeout issues and claim no responsability for any harm or damage that may happen.
If you understand and are sure you want to proceed at your own risk keep on reading
After switching off Airpot (Wifi) you have to pull out two kernel extensions, named
- IO80211Family.kext
- AppleAirport.kext
which are located in /System/Library/Extensions/
In their place you will put working ones from a previous (minor) version of the same version of Mac OS X you are running.
If you are on Tiger the files from 10.4.7 and previous should work, while on Leopard the working ones are in 10.5.0 through 10.5.2.
You can extract them from the Install DVD (using Pacifist) or from a backup or if you use Time Machine just “going back” before the OS was upgraded.
After doing that restart your Macintosh, switch Airport (WiFi) back on and enjoy your wireless connection..
