Originally posted by: Slowlearner
With routers now in the 30$ price range, running ICS makes no sense and having two LAN connectors serves no useful purpose.
I strongly disagree.
With an external hardware router you are bound to whatever it provides for firewalling, NAT/masquarading and forwarding.
If you have the firewall and NAT under OS control you have all the flexibility in the world. There are a lot of wacky things you might want to do.
Just for example, I play a game which is hardcoded to use just one port (server port, incoming). So if I want to serve two game sessions of this from two different computers behind my firewall, I have to selectively forward to the same port on different machines based on source IP address. Unless you have a full-IOS Cisco router you can't do that with a hardware router.
Plus there area plenty of broken routers which do timeout on NATed TCP connections and other stuff they are not allowed to. And you have no sourcecode.