I was looking for a software router to provide me with the flexibility of configuring the router to the needs of my personal setup. Having previously used a commercial software which is no longer available, I was on the search for an alternative. I stumbled across zeroshell and decided to try it out. I was very impressed with the flexibility of the software. I am running it on a virtual linux machine and it has so far run flawlessly. It does not use a lot of resources and can conveniently be configured using a web browser. I particularly like the fact that you can use whatever internet connects are connected to the virtual machine(or physical machine) and thereafter build the system to your requirements. I have yet to fully implement the full features that this router offers such as implementation of the proxy server, internet agreggation/bonding. It has a medium learning curve but with the options that are provided for configuration it is part of the package.