# Tomato Firmware/Distributions

* Introduction, Features, Licensing and Support
* Supported Devices
* Installation and Configuration
* Menu Reference
* Distributions

# Distributions

The Tomato firmware distribution is maintained, primarily by Jonathan Zarate at Polar Cloud as a derivation of LinkSys's open-source code. Tomato is built in two flavors, a standard version that should run on all routers and the "New Driver" (ND) version for newer routers. Warning! Loading an ND version on an unsupported router could brick the router.
As such, others have further derived new distributions, named by the authors' usernames in the http://www.linksysinfo.org/forums.

### Feature comparison

| Mod Name | Base Tomato Version | Min Flash MB | Min Connections | Max Connections | SpeedMod | SFTP | VPN Client | VPN Server | SNMP | SD Card Support | USB Support | VLANs | IPv6 Support |
| Tomato | 1.28 | 4MB | | 4096 | No | No | No | No | No | No | No | No | No |
| Tomato ND | 1.28 | 4MB | | 4096 | No | No | No | No | No | No | No | No | No |
| TomatoVPN | 1.27** | 4MB | | 4096 | No | No | OpenVPN (GUI Setup) | OpenVPN (GUI Setup) | No | No | No | No | No |
| hardc0re | 1.25 | 4MB | | 4000+ | Yes | No | No | No | No | No | No | No | No |
| jyavenard | 1.27$^{***}$ | 4MB | | | | | PPTP/OpenVPN | PPTP/OpenVPN | Yes | | | No | No |
| Neorouter | 1.25$^{***}$ | | | | | | proprietary | proprietary | | | | Yes | No |
| roadkill | 1.21 | | | | | Yes | OpenVPN | OpenVPN | | SD, MMC | | No | No |
| SgtPepperKSU | 1.27v3.6$^{***}$ | | | | No | No | OpenVPN (GUI Setup) | OpenVPN (GUI Setup) | No | No | No | No | No |
| slodki | 1.28$^{**}$ | 4MB | | 10240 | Yes | Yes | OpenVPN with GUI | OpenVPN with GUI | No | SDHC, MMC with GUI | Print, NAS | No | No |
| Teddy Bear | 1.28$^{**}$ | 4MB/8MB | 128 | 10240 | Yes | Yes | OpenVPN (GUI Setup) | OpenVPN (GUI Setup) | No | No | Print, NAS | No | Yes$^{****}$ |
| Toastman | 1.28$^{**}$ | 4MB/8MB+ | 128 | Configurable | Yes | Yes | OpenVPN | OpenVPN | Yes | No | Print,NAS,FTP,Media | Yes | Yes |
| Thor | 1.25$^{**}$ | 8MB | | 8192 | Yes | FTP only | OpenVPN | OpenVPN | Yes | SDHC, MMC | NAS | No | No |
| Trzepako | 1.21 | 4MB | | ? | Yes | | No | No | No | No | | No | No |
| Victek | 1.28$^{***}$ | 4MB | | 8192 | Yes | No | No | No | No | No | Yes | No | No |
| $^*$ | Tomato standard only |
| $^{**}$ | Tomato ND (New Driver) only |
| $^{***}$ | Tomato standard and ND |
| $^{****}$ | With GUI, in current git builds only |
| NAS | = Network-attached storage |

### hardc0re Mod

Latest version: 10 jul 2009 (as of 08/2009)
* Based on Tomato 1.25
* aims to improve the router's performance under high load (many connections, more than 4000 or so).
* Tuned route cache and conntrack hash sizes.
* Tuned route cache parameters.
* Updated conntrack and netfilter components to later versions.
* Modified hash function to a newer one.

### jyavenard Mod

Latest version: 30 jan 2010 (as of 01/2010)
* Based on Tomato 1.27
* has been modified to include a PPTP client (PPTP server included but no GUI)
* OpenVPN client and server
* and an SNMP server.

### Neorouter Mod

Latest version: 0.9.8, 12 oct 2009 (as of 10/2009)
* Based on Tomato 1.25
* Cross-platform zero-config VPN solution that connects computers into a virtual LAN.

### roadkill Mod

Latest version: 16 oct 2008 (as of 08/2009)
TomatoMod 1.21 *TEST VERSION 5* - This is a new test version it is only half baked for those who want to try.
* LZO 2.03
* OpenVPN v2.1rc13 + Management
* VPN GUI Interface
* SD/MMC GUI Interface with switchable gpio
* SFTP-Server
* QoS Limit
* App Limit
* Arp Binding
* IPID Adjust

### slodki Mod

Latest version: 1.28.02, 18 Feb 2011 (as of 02/2011)
* Tomato firmware ver. 1.28
* Optimized SDHC/MMC driver ver. 2.0.1 - this adds up to 32GB build-in storage on flash memory
* Higher transfers then previous mmc driver ver. 1.3.5 - +40% writing, +10% reading
* GPIO pins parametres selectable via GUI
* Detailed card ID data available via GUI
* Support for mounting ext2, ext3 and vfat partitions
* OpenVPN, vsFTP, Samba, print server etc - the same as in Teddy Bear Mod

### SgtPepperKSU Mod

Latest version: 01 jun 2009 (as of 08/2009)
* Based on Tomato 1.25 (ND also available)
* OpenVPN 2.1rc16 is compiled in and fully integrated as a system service.
* LZO 2.0.3 is compiled in for VPN compression option
* Two separately configurable instances of each clients and servers can be configured in the GUI
* TLS (optionally with static key HMAC authentication) and static-key encryption is supported
* Custom configuration field is added to the end of the dynamically generated config file
* UDP and TCP protocols supported
* TAP and TUN style tunnels supported
* Site-to-site tunnels without any custom configuration
* Status tabs displaying connected clients, VPN routes, and/or statistics.
* Sets up and tears down (including module insertion/removal) interfaces as appropriate to save memory
* Automatically adds and removes firewall rules as needed.
* Option to automatically start server/client with router
* Option to redirect Internet traffic over tunnel
* Options to accept/push DNS options.
* Encryption cipher settings are available.
* Client address allocation is handled via GUI.
* Added capability to use hostnames in the access restrictions page (unrelated to VPN, but I wanted it)
* and more...

### Teddy Bear Mod

Latest version: 30 November 2010 (as of December 20, 2010), available for download from Tomatousb.org/download.
Currently based on the 1.28 build of Tomato, this is the list of changes made to official Tomato ND (New Driver):
* Support for USB 1.1 (OHCI and UHCI) and USB 2.0, configurable via Tomato GUI.
* USB storage (Ext2/Ext3, FAT/FAT32 and NTFS filesystems) and USB printing support.
* Auto-mounting for USB drives (added in v05). When this feature is activated in the GUI, and USB drive is plugged in, all mountable partitions will be automatically mounted to a directory under /mnt. If you want to override default mount point, mount your partition manually in the satrtup, wanup, or hotplug script, i.e.: mount -o noatime,nodev /dev/discs/disc0/part1 /opt, or by using /etc/fstab file and "mount -a" command. If you mount the partition manually, it will not be re-mounted to a default mount point. If after mounting the drive you want to execute some additional scripts - to run the programs etc - it's a good idea to add several seconds sleep before doing so.
* Support for /etc/fstab, and mounting by label and UUID.
* Network File Sharing using built-in Samba server 2.0.10. Please check this post if you're experiencing problems copying files to Samba shares, and this post if you have issues with authenticated access to Samba shares.
* Printer server (p910nd) is included and started automatically if you enable printing support. Bidirectional copying can be disabled via GUI if it causes problems with your printer. Only one instance of printer server is started automatically, and listens on port 9100. If you need to support more than 1 printer, add commands to run additional instances of p910nd to your startup script. Follow these directions to set up your printer in Windows.
* USB Hotplug script - it can be useful for configuring USB devices after connecting them to the router or on boot-up, for example loading firmware into HP1018 or similar printer (there're some posts on page 11 of this thread with more details about HP1018 printer).
* Fixed slow running clock problem on Asus WL-520GU. After flashing this firmware you have to reboot the router at least once for clock to get fixed (this fix is included into official Tomato releases starting from Tomato 1.24).
* Fixed WLAN LED on Asus WL-520GU, SES button and WLAN led on Asus WL500gP v1 and Buffalo WBR2-G54 (these fixes are included into official Tomato releases starting from Tomato 1.24).
* Built-in FTP server daemon (vsftpd) with GUI.
* L7 filter patterns are updated to the latest official version (2009-05-28), removed experimental rtp-2 pattern.
* Added CGI scripts support to HTTP daemon - you can place your CGI scripts into "/www/ext/cgi-bin" folder, and they will be executed when you access them via http://<router_ip>/ext/cgi-bin/my_script_name.
* Included SpeedMod by Rodney H.
* Added new "NAT Target" setting to "Advanced -> Firewall" (SNAT or MASQUERADE).
* Upgraded Broadcom Wireless driver to version 4.158.4.0.
* UPnP daemon is replaced with MiniUPnPd with NAT-PMP support (MiniUPnPd is included into official Tomato releases starting from Tomato 1.24. This mod however adds additional GUI settings for UPnP). UPnP is disabled by default, NAT-PMP is enabled by default.
* Added new "Regulatory Mode" setting (off|g|h) and "Country/Region" setting to "Advanced -> Wireless".
* Added wireless auto channel selection.
* Changed to use passive mode for wireless scan (generally should pick up more APs).
* Replaced JFFS2 filesystem driver by JFFS ver 1.3 from ray123 to provide more available JFFS space.
* Replaced ramfs by tmpfs.
* Updated busybox and dnsmasq.
The mod (starting from build 20) comes in 4 different flavours:

#### Standard

    all standard features described above; ~180KB JFFS space (3 blocks) available on 4MB flash routers;

#### Extras

    all features of Standard plus Linux Ext2/Ext3 and FAT32 filesystem utilities (fdisk, e2fsck, mke2fs, mkswap, mkdosfs), built-in loop device support, additional color schemes. ~60KB JFFS space (1 block) available on 4MB flash. This version is for people who don't really need JFFS space, or have 8MB flash routers, and would like to be able to partition/format drives in Linux native Ext2/Ext3 format or in FAT32 format directly on the router without installing any additional tools.

#### Lite

    all features of Standard but no Samba; some very minor features are stripped out of Busybox, about 540KB JFFS space (9 blocks) available on 4MB flash routers;

#### No CIFS

    all features of Standard but no CIFS Network filesystem support, about 300KB JFFS space (5 blocks) available on 4MB flash routers;

### Toastman Mod

Latest version; 9 Mar 2012
Toastman-RT-1.28.7496.2-RT MIPSR2 K2.6 for RT-N16 etc. Toastman-RT-1.28.0496.2-RT-N MIPSR2 K2.6 for E4200, RT-N66U etc.
(New versions are available frequently, check Linksysinfo.org for releases).
With Teaman Client Monitor (IPTMon or BWclimon depending on build, can have graphical monitoring of all clients in realtime or last 24 hours and download statistics for all clients.
Web Portal "NoCatSplash" (splashd) integrated by Victek.
VLAN builds include the VLAN-GUI by Augusto Bott and experimental Multi-SSID.
CPU frequency display, CPU % useage, CPU Overclock menu.
Static ARP Binding, Bandwidth Limiter per client,
Significant improvements to Tomato's QOS includes new IMQ based ingress system with class priorities, and an incoming class bandwidth pie chart, making it much easier to evaluate QOS rule effectiveness.
Configurable QOS class names, comprehensive example QOS rules loaded as default. Many useful features/tools for easier administration of networks.
Up to 250 clients in Static DHCP, Access Restrictions, 500 in Wireless Restrictions. Suitable for large installations such as hotels and condominiums as well as the normal user.
* MiniDLNA 1.0.22: cvs 2011-08-25
* Miniupnpd ver. 1.6 (20110725)
* Dnsmasq: 2.59 update
* Busybox 1.18.5 update
* radvd: 1.8.1 update
* Dropbear 0.54 update
* ebtables: update to 2.0.10-2 (August 11th, 2011)
* Samba 3: security updates CVE-2011-2522 & CVE-2011-2694
* ntfs-3g release 2011.4.12
* IPV6 improvements
* BCM SDK: 5.10.147.0: wireless driver in RT builds
* BCM SDK: 5.100.138.9: wireless driver in RT-N builds
* PPP: single line MLPPP support
* Support for Belkin F7D3301/F7D3302/F7D4301/F7D4302/F5D8235v3, ASUS RT-N12 B1/RT-N10U/RT-N66U routers.
* Added support for USB led on E3000, WRT610Nv2, DIR-320, H-618B routers.
* Various optimizations backports and fixes from upstream 2.6 kernel.
* PPTP Client with GUI by Jean-Yves Avenard
* Support for 3G USB Modems
* Udpxy v1.0-Chipmunk-build21
Includes the new updates from Tomato-USB/RT by Fedor Kozhevnikov. The RT wireless driver has however been reverted to 5.10.147.0 in the interests of stability.

### Thor Mod

Latest version; 27 jul 2009 (as of 08/2009)
Tomato_RAF_1.25.8515 ND USB .8 v3
* Based on Tomato 1.25
* ND only
* recent versions need more than 4 MB
* includes USB / NAS / FTP / VPN / SNMP
* includes all the updates and changes up till now (15/07/2009)
* Based on Victek's sources so it has all his features
* Wrt54 Skin based on absolon
* tomato-FS-patches 27062009
* net-snmp 5.0.9 & Interface
* OpenVPN 2.1rc13 & Inteface(Keith Moyer's implementation)
* Optware options under USB
* NTFS support with RW

### Trzepako Mod

Latest version: 03 aug 2008 (as of 08/2009)
Based off the Tomato 1.21 build, this modification adds:
* conanxu mod 1.5 (IP/MAC Bandwidth, pps, connection limiter, SPEEDMOD and so on...)
* ipt_ROUTE & ipt_random

### Victek Mod. Tomato RAF

Latest version: 1.28 as of 4 Jan 2010
This modification has two branches; Standard Version (A) & ND (New Driver) Version (B).
(A) Common in both versions (and not included in Official Tomato version):
* BusyBox 1.14.2
* ip_conntrack version 2.1 (16384 buckets, 8192 connection max)
* DNSMasq 2.49
* Dropbear 0.51 extended RWIN cli command
* Extended static DHCP / MAC restriction (up to 140 clients)
* IP/MAC Bandwidth Limiter (up to 140 clients)
* ARP Binding (up to 140 clients)
* Extended miniupnpd
* Extended themes (18 themes)
* CPU Freq. Display & Overclock (125-300MHz)
* Previous WAN IP
* ISP Concentrator ID
* Two additional button script windows
* System command window built into GUI (Tools-System)
* ARP command included
* Extended command in BusyBox; chown, hostname ..
(B) Additionally in ND version:
* Wireless & Ethernet driver 4.158.4.0
* Added new "Regulatory Mode" setting (off|d|h) and "Country/Region" setting to "Advanced -> Wireless" in ND version
* Added wireless auto channel selection.
* Wireless Scan 'passive mode' (shows more AP's if they exist in the neighborhood).

## References

* ↑ List of Tomato mods
* ↑ hardc0re release announcement.
* ↑ jyavenard release announcement.
* ↑ roadkill release announcement.
* ↑ slodki release announcement.
* ↑ SgtPepperKSU release announcement.
* ↑ Teddy Bear's TomatoUSB Changelog
* ↑ Thor release announcement.
* ↑ Trzepako release announcement.
* ↑ Victek Mod. Tomato RAF release announcement.