This last weekend I decided to tackle a couple of tech projects I’ve been meaning to do for a while. The genesis of all of this was the fact that I have a detached garage with no connection to the innerwebs. Having access to the tubes that carry the World Wide Web while working on a project out there without having to run inside and muck up the desktop’s keyboard with dirty or greasy hands would be quite convenient. So, I developed a plan. As we all know, the best laid plans fall apart as soon as the first shot is fired.
My first task was to re-load Linux on my old IBM T41 laptop. Why Linux? I wanted a light operating system for it since it’s got a pretty ancient Celeron processor and only a thimble full of memories. I hit a hiccup when I found the CD/DVD drive no longer functions. Luckily, the folks at Pendrivelinux have created a utility which allows you to take the ISO file for almost any flavor of Linux and create a bootable USB drive with it. Once done, I set to install Ubuntu 13.10. Until I got an error message.
The laptop has a non-PAE processor. What does that mean? It means I have no PAE in my laptop, which might explain why it’s so light. It also means that anything newer than 12.10 will not work. No big deal, I just downloaded the 12.04 LTS version, the last version with a non-PAE kernel, and set to install. Actually, as I was reading about the PAE issue, I found Xubuntu. It uses the Ubuntu kernel, but uses the very lightweight Xfce interface. Since my goal was lightweight, this made more sense.
Success! On to the next task…
In order to get the innerwebs out to the garage my plan was to set up a wireless router as a repeater, place it in the corner of the house closest to the garage and be done. After discussing this plan with some of my more knowledgeable friends, they all indicated that the stock firmware’s repeater functionality was somewhat limited and, in their experience, unreliable. Instead, they recommended I use dd-wrt or Tomato, which are open source replacement firmwares for a variety of routers.
After doing some research, it appeared the dd-wrt would be my best bet considering I was going to use a Netgear WNDR-3700v3 router. I read up on the installation process, downloaded the appropriate files, and set forth reflashing the router’s firmware to dd-wrt.
Then I spent the next 2 days trying to get the stinking router to connect. To anything. Via wireless or wire. Without any reliable success.
So, I did some more reading. I came across a post in the dd-wrt forums where several people were saying that they had issues with the dd-wrt firmware and their WNDR-3700v3 routers. Apparently, it works great on some and not great on others. I seem to have one of the others.
So, after monkeying with it for a while I decided to change my plans. Rather than set up the router as a repeater for my existing wireless network, it would become a separate wireless network meant to only serve my garage. My existing wireless router is set so the signal extends barely beyond the walls of my house. I don’t want people getting in. I don’t want people leaching my internets. This one would be different. It would have the signal power set high enough that I can get it comfortably in my garage, which would also mean several of my neighbors will be able to get it. It’s got WPA2-AES encryption, so nobody should be able to leach off of my internets, and it’s plugged right into my cable modem, so it is almost completely separate from my “main” wireless network.
In order to do this I decided to reflash the router back to the Netgear firmware. To do this I needed to put the router in recovery mode. I couldn’t get it into recovery mode, which according to the forums is not uncommon. So, I had to telnet into the router and issue an “erase linux” command. This erased the dd-wrt firmware. After a reboot the router automatically went into recovery mode since it had no OS. Then I was able to use a tftp put command to load the Netgear firmware. This worked great. From there it was a simple exercise to set up the router and get it blasting an innerwebs signal to the garage.
In the end, it appears I failed on my original plan. However, I learned quite a bit about how routers work, re-learned some telnet skills I haven’t used in many many years, and learned that Windows has a built-in tftp client. The latter one I didn’t really use since I was doing all this fun stuff from my be-Linuxed laptop, but I still found it interesting. I may still try to use the Netgear repeater function, but for now I’ve met my ultimate goal, even if it’s not how I expected to do it.
So why do I share all of this with you? Because we can all have grand plans that go awry. It doesn’t mean you failed if you learned something. That, I think, is the key to life. Never avoid something because you might fail. Instead, learn from those failures and move on.