Ryan Harden wrote:
> While you could probably build a linux router that is just as fast as a
> real hardware router, you're always going to run into the moving pieces
> part of the equation.
Not if you boot directly from USB key into memory with no disk drive.
You probably don't want a USB key. Too easy to knock off, etc. Though
for a small enough USB key, like the Kingston microSD-to-USB adapters (like
FCR-MRR+SDC) ... that'd probably be okay.
What we did for a few applications...
FreeBSD 7.1R on a 4GB compact flash, the CF plugged into a CF-to-IDE
converter. In our case we case modded a few Intel ISP 1100 1U servers
to allow the CF to be inserted from the front. Great for VPN service
(either server or client), load balancers, traffic shapers, or smallish
ad0: 3847MB <CF CARD 4GB 20071116> at ata0-master PIO4
Designed to run with root as read-only-usually, with memory filesystems for
/var and /tmp (logging to a remote syslog server and serial console seem to
address most of the obvious complaints).
This only partially addresses the moving parts concerns, since the system
is still dependent on fans. However, with a passive heatsink, at least the
loss of a single fan isn't critical. And, geez, most of my switch gear has
fans, so at what point do we draw the line? We had a 3Com SuperStack switch
(~10 years old) that we didn't identify as the source of a nasty growly
sound for probably half a decade.
There have been numerous discussions about PC routers on NANOG and other
lists in the past. Short form is, if you know what you're doing and the
tradeoffs and benefits are acceptable, it can really rock. Otherwise,
proceed with caution and do lots of reading.