Introduction edit

Tomato is a partially free open source Linux-based firmware for several Broadcom-based Wi-Fi routers, including the Linksys WRT54G. The major emphasis of Tomato is on stability, speed and efficiency. It is maintained by Jonathan Zarate[1], who also developed HyperWRT +tofu. Tomato is notable for its web-based user interface that includes several types of bandwidth usage charts, advanced QoS access restriction features, raised connection limits which enables P2P networking, and support for 125 High Speed Mode (marketed by Linksys as "SpeedBooster").

This wikibook serves as the documentation for the Tomato firmware and its variations, documenting features, installation, configuration and use of the firmware.

Note: most likely the author of this Tomato firmware is no longer accessible, hence development of this software has ceased in the past 6-7 years! Multiple known/unknown security vulnerabilities may have been identified running in the last version, and therefore it is strongly NOT recommended to use this old software nowadays. Search for other custom firmware products elsewhere!

Features edit

The following features implemented in the Tomato base firmware over typical OEM firmware and open alternatives such as DD-WRT and OpenWRT:

  • Dynamic interactive GUI using Ajax (a technique for creating interactive web pages that update without reloading), SVG (scalable vector graphics that provide quality graphics within a browser) and CSS-based color schemes (allowing you to change the look and feel of the router configuration screens).
  • CLI (using BusyBox) with access via TELNET or SSH (using Dropbear)
  • DHCP server (using Dnsmasq) with dynamic and static DHCP leases
  • DNS forwarder (using Dnsmasq) with local hostnames, local domain names, and caching of internet addresses
  • Netfilter/iptables with customizable settings, IPP2P and l7-filter
  • Wake-on-LAN
  • Advanced QoS: 10 unique QoS classes defined, real-time pie graph display of prioritized traffic with drilldown into class details
  • Bandwidth graphing/statistics: real-time, last 24 hours, daily, monthly
  • Wireless modes: access point (AP), wireless client station (STA), wireless ethernet (WET) bridge, wireless distribution system (WDS aka wireless bridging), simultaneous AP and WDS (aka wireless repeating)
  • Dynamic DNS service with ezUpdate and services extended for more providers
  • Syslog viewable through the GUI (also downloadable)
  • SES button control
  • JFFS2
  • CIFS client
  • Adjustment of transmit power of wireless LAN, antenna selection, and 14 wireless channels
  • 'Boot wait' protection (increase the time slot for uploading firmware via the boot loader)
  • Advanced port forwarding, redirection, and triggering with UPnP page to view and delete UPnP forwarded port mappings
  • Advanced access restrictions
  • Init, Shutdown, Firewall, and WAN Up scripts
  • Uptime, load average, and free memory status
  • Reboot ability, although almost no configuration changes require a reboot
  • Wireless survey page to view other networks in your neighborhood
  • Known bugs in Broadcom-based Linksys firmware fixed

Licensing edit

While the core source code is licensed under GPLv2, the source code for the user interface is under a more restrictive license which forbids use without the author's permission.

Support edit

Weblinks edit

Many screenshots of version 1.25
Screencast of the actual upgrade from LinkSys firmware to Tomato 1.25, 7:22 min, 11 MB

References edit