How do i do this

I am after an install of a stable and secure flavour of Linux to run as
an _easily_* configurable router.

The router needs one LAN interface and two WAN interfaces, with many
specific rules needed as to what data goes through which interface.
These rules need to be simple to add, remove, and change. This must
include the ability to change rules automatically if a WAN interface
has had a certain amount of traffic within a month. MRTG type graphs of
WAN interface usage, including by port number, certain web sites, and
by (labelled) LAN MAC address are also needed.

To refine:
One WAN interface would be for general browsing and certain games,
while the other would be for all incoming and outgoing emails, text
chat (Windows Live, MSN etc), certain websites (eg: youtube), FTP, and
large downloads.
If the first WAN interface reached a certain data usage within a month
then all traffic would go through the second interface. This would need
to revert to the usual rules once a specified anniversary date had been
passed. If possible something similar, applied by quota and per MAC
address, would come into effect daily.
All rules must be able to be applied or not by MAC address. In this way
one or more specified computers could always use the first WAN even
after the month's limit has been reached.

*easily configurable does not mean things like "-A FORWARD -i eth1 -m
state --state NEW,RELATED,ESTABLISHED -j ACCEPT", but more like "MAC
all, PORT 25, WAN 2" and "MAC 11:22:33:44:55:66, PORT all, WAN 1,
ALWAYS".

Router

Mitch Frazier's picture

Not sure if there's an out of the box solution for all you want to do but you might check out Linux LiveCD Router.

Mitch Frazier is an Associate Editor for Linux Journal.