I would also be interested in this.
Unfortunately I could not find any simple way to do it.
I'm a bit afraid doing this because my last 3 routers had some problems: They dropped my internet connection when I turned on QoS functionality and started massive torrent downloading. The router's CPU just couldn't handle the big traffic with QoS. Image just what would happen if you would use a torrent client on your router box which starts to hash the downloaded data, or you just copy some files via samba (gigabit) which would eat your CPU... I think we would face the same problems... dropping internet connection, dropping wireless clients, malfunctioning firewall, stopping dhcp functionality, lagging LAN connections etc
Here is a list of what is actually needed for router capability:
- General routing function: RIPv2 etc... maybe with: iproute2.tcz
- DHCP server: I haven't find any in the repo. And what about address reservation?
- NAT functions: Should be done by the dhcp server? or by the firewall? I dunno...
- PPPoE connection handling: Should be done with: pppd.tcz pppsetup.tcz
- SPI Firewall: I don't really know what Stateful Packet Inspection is, and how to set iptables to work like that
- Wireless AP: hostapd.tcz is fine for this task (I guess it's a lot of work to setup WEP/WPA/WPA2 and the other stuff correctly)
- DynDns update client: inadyn or ddclient (none of them are in the repository)
- Simple webserver to have a WebGUI: I vote for Cherokee, but I think there is no WebGUI available for configuring the general router stuff.
Some logging: iptables, netstat, etc...
Nice to have extras: QoS functions, traffic shaping by ethernet interface, torrent client, ftp server, samba server, printer sharing, mail server (a bit out of scope)