This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Hardware

Tasty Tomato firmware for routers

By Kurt Edelbrock on June 11, 2008 (4:00:00 PM)

Share    Print    Comments   

Breathe new functionality into your router with Tomato third-party firmware for popular models of Broadcom-based routers, including popular models manufactured by Linksys.

Most consumers and users don't know the code for Linksys firmware is entirely open source and based on Linux. That allows developers to create customized firmware that extends the functionality of the router through a plethora of new features. Tomato provides a robust set of advanced features that outperform the default Linksys firmware, and rival other open source firmware such as DD-WRT in terms of functionality. Many different routers support Tomato, including models from Asus, Buffalo, and Linksys; a full compatibility listing can be found on Wikipedia or in the developer FAQ.

Installing Tomato on a Linksys router is simple. If the router is Linux-based and compatible with Tomato, access the router's Web interface and click on the Administration tab. From there, select the Firmware Upgrade option. Upload the right firmware for your router and log back in. Restore the router defaults by clicking on the Administration tab and selecting Configuration -> Restore Default Configuration. Make sure you select "Erase all data in NVRAM (thorough)." Log back into the router to use Tomato. You can find installation directions for other routers in a text file in the firmware download package.

Once it is installed on the router you can access the Tomato firmware interface via the Web, SSH, and Telnet. Because it provides command-line support, you can access and administer the router remotely without using a Web browser or graphical interface, thanks to its use of BusyBox, which provides a standard set of Unix tools similar to the GNU Core Utilities package, and Dropbear, which provides a Secure Shell-compatible interface for low memory environments. The command-line interface is especially useful when coupled with the native support for Dynamic DNS, the technology that binds a dynamic IP address to a static domain name (a URL like kurtsrouter.dynamicdnsservice.com). The router supports a variety of third-party dynamic DNS services, such as DynDNS and No-IP. If you do choose to use the Web interface, you can apply most of the settings using AJAX to avoid the need for a page refresh after each change. You can customize the interface appearance by editing stylesheets.

Tomato supports a variety of advanced features that make it easy to administer and control the network. Wake-on-LAN allows you to power on computers on your network by sending a special packet to the router. This is useful if you want to access a computer remotely that isn't powered on.

The router firmware has a firewall administered through iptables, an application used to configure rules for accepting and blocking network packets. Tomato expands the router's Quality of Service settings to allow for more rules and filters. QoS allows you to prioritize data based on protocol, user, or application, so that preferred traffic can move through the network more quickly than less important data. This is especially useful for gaming traffic when you have other services such as BitTorrent and instant messaging are also running.

Port forwarding, the process by which data coming through a specific port is directed to the correct network device, supports a few advanced options, such as Universal Plug and Play (UPnP) and a Demilitarized Zone (DMZ). UPnP support allows devices on the network to set up their own port forwarding information automatically, making it easier to get a device externally accessible -- but also making the network more vulnerable to UPnP-aware trojans. A DMZ setting directs the router to send data packets to a specified machine on the network that is not behind a locked-down firewall. Obviously, you shouldn't use this unless you are confident that the machine is secure.

Tomato also features a slew of access protection settings to block out machines, protocols, and users. This is nice for users in a university setting who don't want to allow file-sharing or other potentially unwanted connections to their wireless routers.

The wireless options in Tomato let you easily turn the router into an Ethernet bridge. The bridge setting strengthens the signal of another wireless network in the area, improving connectability and coverage. The firmware supports both 802.11b and b wireless types. The Afterburner setting can improve speeds on the g protocol to as high as 125Mbps while still remaining compatibility with almost all wireless devices (this is the same as g+ on some routers).

In addition to adding router functionality, by using the firmware's graphical interface you can create bandwidth charts for a variety of different timeframes in the scalable vector graphics format. SVG support is provided by default in Mozilla Firefox and Apple Safari, but Internet Explorer requires a plugin to display the bandwidth charts. Users can analyze the last 10 minutes of network usage, updated in two second intervals, or see the last 24 hours of activity, or expand that timeframe to daily or monthly intervals. The built-in Common Internet File System client can mount a Windows or Samba share to store the bandwidth logs to disk.

Tomato is great way to upgrade your router without buying new equipment. Though it doesn't work on all routers, it illustrates the flexibility of Linux on embedded devices.

Kurt Edelbrock is a technology journalist, blogger, and university student. He writes for a variety of open source publications, and serves as a technical consultant for a large public university.

Share    Print    Comments   

Comments

on Tasty Tomato firmware for routers

Note: Comments are owned by the poster. We are not responsible for their content.

Re: Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 167.19.250.100] on June 11, 2008 06:04 PM
Mod +5 Funny :-)

#

Re: Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 98.165.133.188] on June 11, 2008 06:11 PM
I was thinking exactly the same thing when I saw this headline.

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 72.173.211.145] on June 11, 2008 08:32 PM
Great article, and timely in my case. I live on 46 acres of land in the boonies, and I have been using a wireless router to connect to my satellite, from nearly 1000 feet away. The connection is intermittent, to say the least. I was considering options to get a more reliable connection, and I have 2 WRT54Gs from Linksys at my disposal. Unfortunately, the built-in firmware is less than adequate for my needs. Thanks to this article, I now know that I can ditch the firmware, and get a Linux alternative that allows things like access point mode and mesh networking. While Tasty Tomato looks great, after a bit of research, I found that DD-WRT is the better choice for me. It has many of the same options, plus, a feature that is applicable specifically to the WRT 54g. The router ships with its transmit strength permanently set at 28mW, when it is capable of up to 250mW! DD-WRT can rectify this situation. With it installed, I may not even need to use the second router!

Thanks for the info. (And thanks Linux!)

Dave

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 218.102.216.65] on June 11, 2008 09:35 PM
I have been using it for a long time on my Linksys WRT54G router, and it works great; the functionality and user interface are great.

The official firmware from Linksys really sucks, it will crash part of my router if there is a electricity shortage, and the most annoying part is that, only the port forwarding and DDNS will be service unavailable, which cannot be noticed unless some problems occurred, and, you will need to refresh the firmware (not just reset the router!) to fix the problem.

Tomato doesn't have problems listed above, and it comes with a bandwidth meter too!

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 24.39.188.82] on June 11, 2008 10:03 PM
"The router ships with its transmit strength permanently set at 28mW, when it is capable of up to 250mW!"

Be careful!! If memory serves, anything over 70 will eventually burn out your transmitter (the higher you set it, the sooner/more likely it will burn out.)

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 156.34.173.204] on June 11, 2008 10:11 PM
According to the site, it only supports Linksys WRT54G versions 1-4. Mine is v5 and it is a couple of years old. I guess I'll have to go with DD-WRT Micro instead.

#

Liked Tomato but had to go back to dd-wrt

Posted by: Anonymous [ip: 67.88.249.34] on June 11, 2008 10:16 PM
I have been using dd-wrt for about 8 months and decided to try tomato. Tomato is much simpler and looks great. It's great for most people but it's lacking for power users. After 4 days on Tomato (last week) I switched back the newly released dd-wrt v24. I just could not get tomato to do some more advanced features.

If your just a standard user and you want better router firmware then Tomato is the way to go, it has lots of eye candy and the UI very responsive. If you want more power and flexibility, dd-wrt is a better choice. Tomato you can just fumble through, but dd-wrt is best to read the tutorials. So far v24 has been working great. The main two features that forced my move was OpenVPN (no current release made for the latest tomato) and a wan repeater (allow you to connect to separate wireless links while still using it as an AP with a different subnet.) I also had a heck of a time trying to find any type of Tomato documentation.

#

Re: Liked Tomato but had to go back to dd-wrt

Posted by: Anonymous [ip: 204.50.208.4] on June 12, 2008 12:43 PM
I was waiting for someone to point out the difference so clearly before I chimmed in.

Tomato; good introductory and average home user firmware
DD-WRT; good power user or feature step up from Tomato
openWRT; the industrial strength monster but it's all ssh/cli

There is also a fork/parillel of openWRT with a garphic interface but I've found DD the best out of the bunch without taking the time to learn router admin purely by cli.

DD-WRT makes my home network a happy place and I've now two clients using it in production settings. (the wrt350n is my prefered hardware these days for it)

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 201.17.255.253] on June 12, 2008 12:56 PM
"The router ships with its transmit strength permanently set at 28mW, when it is capable of up to 250mW!"

have you considered directional antennas such as cantennas?

tomato allows increasing the wattage as well, only difference to dd-wrt is the voip features. hugely enjoying my tomato - the super-pretty traffic graphs are great

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 12.161.199.50] on June 12, 2008 02:15 PM
Hey, this is really great. I've been using DD-WRT for a few months now and always suspected my speed was slow. After installing Tomato - BTW it installed fine over DD-WRT and picked up *most* of the settings - I see a noticeable improvement. bandwidth testers say it's the same but it just feels faster. Hmm . . . could it all be in my mind? :)

#

Tasty Tomato firmware for routers

Posted by: Anonymous [ip: 118.172.75.92] on June 17, 2008 01:43 PM
After experiencing some unresolvable, with Linksys support, problems with my Linksys WRT54GS router I gave Tomato a try and not only eliminated my problems completely, discovered and fixed a Time Zone problem in Windows XP, but found numerous useful features available in Tomato. I'm well pleased with Tomato, although it would be nice if someone would produce a detailed Users Guide on how to use the many features. Just a note, I found Linksys support to be very nice although unable to help resolve my problems which were definitely due to the Linksys firmware. Over time router would not allow any new connections unless it was power cycled. Only existing connections continued to be accessed, and Tomato allows me to determine how long to retain connections in memory.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya