Thinking about using a Linux box as a router? This article compares some older one-disk routers to the Linux Router Project (LRP).
A few years ago there was a company called MorningStar Technologies (not to be confused with the financial firm ;) which was later bought out by Ascend. And if I'm not mistaken --someone please correct me-- Ascend was bought by Livingston, and Livingston was purchased by Lucent, ad nauseum. Or was it CompaqDigitalMicrocom 3ComMegahertz who bought it? Nevermind.
The company MorningStar made routers. Two models were the MorningStar Express FR and the MorningStar Express Plus. MorningStar routers were cheap, too. One of their many competitors, Cisco Systems, charged $2500. for the same functionality in a router they charged $1450. for.
The MSE FR was a heavy metal box about the size of a laptop and just as rack mountable. The Plus was a different animal altogether. The MorningStar Express Plus was actually a 386SX PC with 4MB RAM (yep that's right), a 1.44MB floppy, and a RISCom card ( == a V.35 serial port a.k.a. 'T1 port', see http://www.sdlcomm.com/).
Like Ciscos, the MSE series of routers had their own command set, binaries, etc., the difference being the platform(s). The MSE software you could take one 1.44 disk and stick it into any PC with the right hardware (IRQ settings, port addresses must match as well) and voila, Instant Router.
Once I had an MSE that died with extreme prejudice from a NYNEX power spike. We had no spare routers and the customer was down. In 1995 the quickest we could get another router was overnight, for a big phat charge that I would have to eat, and overnight was WAY TOO LONG for the customer to be down. I needed a router, fast. So I made one. I used a 386DX (the motherboard came from a local BBS in a modem trade or something) with 4MB RAM, a RISCom card lifted from an MSE, and a licensed copy of BSDi 2.0. It supported a 56K leased line from Bangor, ME to Ellsworth, ME for about a year and a half. I think it's hostname was Sloth or Gluttony but I'm not sure. Anyway this is an example of what the Linux Router Project (LRP) mutated from.
And let's not forget another excellent weird router that I call 'The F-Box.' 'F' stands for Frankenstein, built out of spare parts. It's a router that runs on one 1.44 disk under DOS. The software is called IPRoute (see http://www.mischler.com/iproute/) by David F. Mischler. Grab a packet driver for your favorite NIC from http://www.crynwr.com/ and you're in business. If you need throttling (traffic-shaping, bandwidth-limiting controls) you do it in the hardware: Use a 286 to throttle an Ethernet connection to 56K. The 286 just can't keep up. Use a 386SX for ISDN speeds, etc. Do your own empirical studies in situ.
The point is that from Day One, you could stick a V.35 port in a Unix box and <Presto!> turn that box into a router. Or two Ethernet cards and call it a bridge. Of course the kernel would need to support your hardware --in the early days there was no kernel support for RISCom cards. The pros and cons of an industry standard Cisco versus a sticky tape Linux box depend on the situation. Think about: Overhead, security, cost, command set, filtering rules, bus noise, traffic-shaping, complexity, cost-benefit, etc., etc., etc. Just weigh the specifics of 'which tool for the job.' Indeed, do your own research.
I have not done a lot of work/research with LRP incarnation at linuxrouter.org as such but I am familiar with the "Materhorn Project [sic]" --I don't know why they spelled it that way. It's a brilliant Linux-oid implementation, taking up one disk (much like an MSE router) but running Linux command sets (like a BSDi box). The FAQ is here. However it does not run standard Linux commands 'ifconfig' and 'route', rather it runs a command called 'ip', which necessitates the learning of a new command set anyway. With this in mind I wonder why the 'L' stands for 'Linux.'
Considering the practical, I don't see much difference between the MSE and Materhorn. For small networks you can RIP, NAT (Masqeuerade) or DHCP. But for larger networks it does not support gateD, and cannot route between Autonomous Systems (ASs). Source is available for gateD so I assume it just hasn't been assimilated by the LRP Borg yet. Give them time. However, unlike the MSE, Materhorn recognizes the loopback interface --probably because the last time I can remember MSE software being updated was 1995. And lastly, another difference is TFTP. The MSE has it, Materhorn does not have it.
Besides the LRP there's a multitude of other devices, appliances, systems and software available to complete the same job. Simple gains in popularity and 'press coverage,' much like Napster versus Gnutella, Hotline, Scour, etc. have shown the spotlight on Linux for developers as well as consumers. You've heard of Napster, have you ever heard of Gnutella? Similarly, you've heard of Linux and the LRP. There are lots of other products out there. The DOS-based routers, for example, have a single thread of execution, and by design are much more secure and stable than any Unix/Linux/Freenix based product. Ever have a Single-Function-DOS box crash?
How much of a NIST freak are you? I standardized my Alpha- and Intel-based servers to run the same version of Linux; every machine in the shop has an SMC NIC; all the PCs run the same version of Win 98 ; and all the routers are Cisco. There's something to be said for standardization. When Jackie in sales calls the help desk complaining that the network is down, we don't have to ask her what OS she's running, nor do we have to walk her through determining what NIC she's got. We have one CD and one set of drivers to be used on every machine.
The servers very well should run Linux. But do we want to standardize every machine in the shop to run Linux? Each genre of task should be standardized --so if you're going to have one Linksys hub, you might as well have all your hubs Linksys. If you have one Cisco router, ditto. Linux on the diskless PC routers, ditto. Or if you can't afford a Cisco, your trade-off is money vs. time: The time it takes you to learn the LRP command sets. Besides, you already have Linux on the servers!
There might be applications and situations for the LRP, I cannot see any. Not even embedded systems. Microsoft wants your refrigerator to run Windows CE; well, Linux developers are doing it too. That's good in a certain way, though it's bad in and of itself. To me, the LRP is a host of developers having wasting time. I hope at least they're having fun.