theme selector

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

by Tony Chang
tony@ponderer.org

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.

domain=local
address=/wiki.local/w.local/music.local/m.local/192.168.50.102
address=/router.local/192.168.50.1
address=/printer.local/print.local/192.168.50.150

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 192.168.50.102. The computer at 192.168.50.102 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.