My persistent Debian-related WiFi problems finally got solved. The other day, I sat at a restaurant, working away, and decided to try the WiFi. The laptop connected, immediately, with no problems whatsoever.
This got me thinking.
Apparently, Debian and the Intel drivers couldn’t be to blame. It had to be a router issue. So I upgraded my Netgear router firmware (I have both a gateway and a repeater, so there were two machines to consider), and voilÃ¡! I had a working WiFi connection at home.
Turns out I was too optimistic. wicd and the little adjusting I did does not deliver a working Internet, not every time. Today, no matter how I tried, I couldn’t connect (beyond the router, to which I can always connect) until I changed the laptop IP from dynamic to static, and the DHCP client from automatic to dhclient. All of a sudden, I was back surfing!
Only, just now, when I booted up the laptop again, I couldn’t connect beyond the router (which connected fast enough), not until I changed the IP back to dynamic… This is seriously weird and I can’t explain it. I wonder if it’s got something to do with my router, an instruction that is lost on the way, DNS services that aren’t updates… something?!?
WiFi on Linux is NOT easy.
Just a little note for posterity:
My Lenovo T61 laptop that now runs Debian has an Intel 3945 ABG wireless network adapter. While the Debian (Lenny) installation and the subsequent upgrade to Sid went flawlessly, with the WiFi card discovered and listed, it wouldn’t connect wirelessly to my Netgear router (actually a repeater, fed from a Netgear ADSL modem/gateway). It connected to the router itself, I was able to ping the router and connect to it using a browser, but everything beyond that was inaccessible. I tried various interfaces stanzas, reconfigured TCP/IP, and tested all kinds of tricks, without any success.
Then I did some serious googling. A lot of people have had this problem and many probably still do. Also, the problem was pretty much the same, regardless of your Linx flavour. Finally, a Ubuntu forum suggested removing the network-manager package and installing wicd in its place. Said and done (luckily I had upgraded to Debian Sid; the package is not available in Lenny). I had to reboot but could still not connect.
As a last resort I tried explicitly pointing out my ISP’s DNS server IP addresses in the wicd configuration. That did it and I’m now writing this blog on a WiFi connection.
Sometimes it’s important to document these things. Maybe, just maybe, it will help someone else.