I finally had enough of the internal Aironet 350 inside my T41 Thinkpad running Fedora Core 6. Tired of flaky connections and limited functionality–unable to automatically connect to a preconfigured network with NetworkManager when the access point is not broadcasting its ESSID, among other things (like being unable to get a dhcp address to do an nfs install using the internal e1000 ethernet port because of a conflict with the Aironet card–bug 213270 )

I was at the Red Hat Summit a few weeks ago talking to Jeremy Katz and he suggested the IPW2200 as a good solution for a Thinkpad. I bought one cheap on ebay.  Make sure you get one that is intended for your model Thinkpad or it may not work.
While at the Summit, Jesse Keating helped me get NetworkManager configured the right way to use VPN Connections, but we ran into problems getting it to work smoothly because of what we thought might be problems with the Aironet driver. This appears to be the case.

Now with the IPW2200, NetworkManager works seamlessly and selecting my preconfigured VPN connection works great.

I made sure that the card was made for the Thinkpad before buying it. That way the bios recognizes it and things are a lot simpler… mostly. The card was immediately recognized by the bios when I turned the notebook on and lspci showed that the card was present.

Unfortunately system-config-network did not show the new card. After downloading firmware from sourceforge and manually reloading the kernel module I was in business, but I had to wonder… how accessible would an upgrade like this would be for someone with limited Linux knowledge?

In the past, the easiest way I’ve found to make new network cards work is to simply reinstall Fedora so that the card gets automatically discovered and configured properly. This obviously seems like the wrong solution, but in my experience it is the most user-friendly. On the other hand, it seems unreasonable to expect someone with limited Linux knowledge to backup their existing configuration and reinstall Fedora, simply to enable a new piece of hardware. What am I missing?