Saturday, March 10, 2007

Open Source Routers - XORP

Last time I did some research into various open source routers. I've explored three in some detail, but should probably preface my remarks by stating that I am not a network engineer. Like the guy who figures that, given enough time and adequate tools, he can probably do the maintenance on his car himself, I know enough to get by, provided there is adequate documentation available (and by adequate documentation, I include Google, of course).

Nevertheless, I figure there's no harm in trying this stuff out on elderly hardware, and seeing how things turn out.

The three I looked at in detail were XORP, Vyatta, and Freesco. Today I want to look at XORP.

XORP
Of the three products I looked at in some detail, XORP (the eXtensible Opensource Router Project) looks and feels the most like a traditional FOSS product. It also has a great license -- the BSD style, which is extremely flexible. At the time of this writing, it's up to version 1.4 RC (that's release candidate for you non-techie types out there). The first page of the site says that...

Initial funding to develop XORP is provided by Intel and the National Science Foundation. Further funding has been provided by Microsoft Corporation and Vyatta. We are extremely grateful for their support.
Well, isn't that civic minded of the folks at Vyatta? This led me to suspect that there is probably significant crossover in some of the code between Vyatta and Xorp. I have not verified this.

The folks at XORP conveniently offer a LiveCD download, so I was able to get this thing up and running in no time.

Functionality
The functionality currently in place with XORP is listed (in great detail) on their website, here. There is also an extremely helpful (and well written) user manual available. As you can see if you go through the list, it offers a reasonably rich feature set. Unlike some of its commercial cousins, though, don't expect a slick gui or web based interface -- this is about as minimalist as you can get. Be certain to download and print the (160+) page manual. You're going to need it.

Overall, though, this is an extremely powerful and well developed product. I was in particular impressed with the LiveCD product -- you could use this to set up a CDROM based firewall, an emergency router, etc. with minimal effort. And the LiveCD takes great pains to try to figure out how and where it can load/save configuration files (it seems devoted to floppy discs, though; it would be nice if it tried looking for memory sticks first).

This is a great product. I'm almost certainly going to configure some failover hardware using the LiveCD version of XORP.