theme selector

light blue screenshot grey screenshot navy screenshot dark green screenshot red and black screenshot

by Tony Chang

All opinions on this site are my own and do not represent those of my employer.

Creative Commons Attribution License

tomato firmware

Apr 18, 2007, 04:02am EDT



I’m a big fan of tomato firmware which I’ve been running on the apartment router for a few months now. It includes a lot of the basic stuff I look for in a router (static IP addresses, traffic shaping, etc). But my favorite feature is the inclusion of Dnsmasq which allows me to set fake internal host names. Now when I type in “w” into my browser url bar, the internal wiki loads. When I type “m”, the interal music player loads. [1]

I found the documentation to be a bit confusing, so I’ll include part of our configuration. This is text copied from Advanced -> DHCP / DNS -> Custom Configuration text area in the tomato firmware admin interface.


The first line is important: it sets the domain name for the internal network. Without that line, OSX won’t properly resolve these names.

The second line maps wiki, w, music, and m to The computer at already has a name (it happens to be “shake”), so these are in addition to the existing hostname. Mix in some virtual hosts and it appears like multiple services.

The third line gives a nice alias for the router itself and the fourth line contains aliases for the print server.

[1] These shortcuts actually collide with work intranet aliases when I’m VPN’ed in. In that case, I have to write out w.local or m.local to disambiguate.

jbroome at Apr 18, 2007, 10:55am EDT

Your tomato firmware link is missing a “h”.

Matt Belcher at Apr 18, 2007, 01:01pm EDT

Wow these are all very useful. Thanks!

Josh at Jul 31, 2007, 08:25pm EDT

*Please* don’t use .local for these names. .local represents the mDNS (“Zeroconf”, “Bonjour”, “Rendezvous”, etc) top-level domain. Apple machines, or GNU/Linux machines running a Zeroconf stack like Avahi, can automatically assign these names amongst themselves; for instance, a machine named “music” will automatically claim the name “music.local” if nothing else does. If you use .local for centralized DNS, you break that. I suggest something like .lan instead.

Josh at Jul 31, 2007, 08:25pm EDT

Also, you might find Firefox keyword bookmarks useful.

bqw at Apr 14, 2010, 07:30am EDT

I’ve run into problems with .local before too.

I know it’s way after the fact, but I just wanted to write that this page was actually helpful to me because I need to map some addresses and had difficulty finding good information about what to put in the custom dnsmasq box in tomato.

mtlemmonrunner at Jun 11, 2010, 08:29pm EDT

I feel like a puppy here but here it goes with a firmware for opensource routers named common within the google bunch it gets less helpful to me.

Okay sorry I said that but I am not kidding around search for tomato and you get the things you eat I know iknow please wait.

Tomato firmware for opensource routers is correct thanks so much. The name Tomato for this correctness is the issue please excuse my French!!! I know proveit it…

Please excuse me for this but I need not prove it DD-WRT searches in google already did that.