Tuesday, April 14, 2009

Five things you should [but probably will not] do after installing Tomato firmware

You've installed Tomato firmware on your Linux-based router/AP and tried out all the "sexy" features. Maybe you've been obsessing over your bandwidth statistics? Or used the SSH daemon to surf the web with encryption at public WiFi spots? Or perhaps found the best channel to use for your wireless network with the wireless survey tool? Chances are, you've got your Tomato configuration features customized to maximize your situation.

And I'm sure you remembered to back your router configuration up too, right?

Yeah, me neither. ;) Don't worry-- I'm not writing this entry to "look down my nose" at people. It's easy to get carried away and overlook the mundane basics when a free download adds so much utility to your residential networking gear. Now that my initial infatuation period has passed, I'm hoping to create a basic checklist of configuration tasks to help me stay more focused and disciplined during future Tomato installation/configuration opportunities. Hopefully someone else will benefit from my oversights.

1. STAY CURRENT WITH NEW FIRMWARE: Many people download and install the Tomato firmware on their router, only to forget about it after a few weeks of experimentation and customizing. It's human nature-- if something works well, we take it for granted and focus our attention elsewhere. A few months pass, and suddenly we're missing out on great new features that would make our network situations even better. Or, in a worst case scenario, we continue using an older version of the firmware that turns out to have a security exploit in it.

You don't have to check Polarcloud's website religiously every day to see if a new firmware version is available. You can sign up for their email alert service (for the "traditional" crowd) or their RSS feed (for the "cool kids" and their aggregators).

2. TELL TOMATO WHERE TO KEEP YOUR BANDWIDTH MONITORING DATA: I don't personally understand the appeal, but people like Tomato's bandwidth monitoring feature. I guess if you have an Internet Service Provider that charges for bandwidth used instead of a flat fee that it could help settle a dispute and "keep folks honest." Unfortunately, Tomato keeps your bandwidth history in temporary memory by default. This means your historical bandwidth data disappears if your router reboots for any reason (brief power outage, configuration change that required a restart, etc.)

If you need to hang on to that data, you need to tell Tomato to keep it in a less volatile place (Administration -> Bandwidth Monitoring). I personally have Tomato saving my data into NVRAM on the router itself once per week, but then I don't have an serious need for that information. If you do, you might consider using CIFS to copy the information to a computer on your network instead and saving more often.

3. USE OPENDNS: This tip isn't Tomato specific, per se, but I think it's worth mentioning anyway. You should, at a minimum, seriously consider changing your router's DNS server settings to those provided by Open DNS. Although many people talk about the improved speed they've seen since making this change, my reason for recommending them is more security-based. Thanks to a collaborative relationship with their sister-site, Phishtank, people who use Open DNS are automatically protected from blacklisted phishing sites. By using Open DNS servers in your router's settings, any computer or device that accesses the Internet via your network enjoys that same protection.

If you like that nifty little trick, signing up for a free account with Open DNS gives you even more features and control. You will want to set up Open DNS as one of your two Dynamic DNS options in Tomato (Basic -> DDNS) to keep the service informed of any IP address changes.

4. BACKUP YOUR ROUTER CONFIGURATION: You've invested time and energy learning Linux esoterics to customize your configuration precisely how you want it. The sense of accomplishment you're feeling now won't be there when you attempt recreating that configuration from scratch because "something happened and you didn't make a backup."

Save yourself the frustration by making a backup copy of your masterpiece (Administration -> Configuration) before "something happens."

5. NOW IT'S YOUR TURN! I am sure there are more than just five "essential" configuration tasks to the Tomato Firmware. Share your "sadder, but wiser" configuration story as a comment, so everyone can learn from it.

Sunday, April 5, 2009

Why I want to learn calculus

Some people love mathematics. They see an inner beauty to the subject that inspires them into learning even deeper mysteries. Unfortunately, I am not one of those people. I was "good enough" at math as a student, but it was never a burning passion. My last math class as a high school senior was Algebra II/Trigonometry. Although I had college professors who tried to persuade me to major in science, but my personality and temperament seemed better suited to the liberal arts majors. Basically, I chose Shakespeare over Newton.

Now that I am middle aged, I find myself examining recent historical events and wondering for the first time if not taking calculus may have been a mistake.

Explaining my newfound interest in calculus is difficult. It's not as simple as "something bad happened to me Wednesday, and when I woke up Thursday morning I decided I wanted to learn calculus." It's more like memories and experiences accumulated into a sufficient mass, and then a dear friend of mine began taking calculus, and that triggered this new obsession of mine.

This story may help:

I remember hearing in an astronomy course about scientists who discovered a new planet (Pluto, perhaps?) that could not even be seen from Earth. The way I understood it, they compared the mathematical model of a known planet's orbit against the actual orbital data-- and found it didn't match. That meant another factor was involved that they hadn't accounted for-- namely, the gravitational force of another planet. By analyzing the orbital information of the planet they could see, they eventually deduced the existence of the previously undiscovered planet. (Before someone pipes up with the obvious-- I know Pluto is no longer officially considered a planet; that has no bearing on the point of the story and the impact it had on me.)

That ability to see the unseen and be aware of them impinging upon your environment-- that's a theme straight out of literature and the occult. That additional sense of awareness can be empowering. It lets you make decisions that other people, who are still unaware of "external force X", fail to understand. If you doubt that, just think doctors who learned about the "germ theory" and began washing their hands before they delivered babies.

I've personally witnessed my fair share of human dishonesty. I've learned about an admin assistant at a local university who wrote "add slips" that allowed her friends to completely bypass the admission process for honors curriculum courses. When the circumvention of the process was discovered, instead of disciplining the admin assistant, the administration chose to cover it up and secretly slander the student who brought it out in the daylight. So much for the honor code, I guess. I've read through too many news stories about Kenneth Lay's Enron strategies, price fixing schemes amongst the record labels, election tampering scandals, etc. I suspect more such abuses will become known as historians decide what to make of our first decade of the 21st century.

You don't need to be a mathematical genius to know people will try to cheat other people, if they believe they can get away with it. But you might *need* to be a mathematical genius to know if a specific person or organization is cheating you now. If calculus can tell you what the orbit of a planet should be, and you can observe a discrepancy that suggests interference by an outside, unseen force, maybe you can use the same principle to detect unseen manipulation occurring with energy prices (Enron), your download bandwidth speed (ISPs and net neutrality), or stock market scams (Bernie Madoff).

So apparently my motivation to learn calculus is fueled by my inherent distrust of human nature, and my paranoia to expose fraudsters who prey on others?