So far, I've had a large number of questions about a statement I made here in NANOG. The statement was made in passing, while I was looking for sources for something that would run BGP4 and allow us to transition from static single-homing to dynamic multi-homing. Rather than answer, yet many more inquiries, I am posting the answer here in NANOG, to fore-stall further such inquiries.
MHSC prefers open-source whenever we can get it and prefer to run reference-standard code. This is why we run sendmail v8.8.8, qpopper, BIND, and others.
I see no need for open source when it is quite obvious you do not understand anything that you are compiling.
We are a Caldera VAR and our servers are built up from Caldera Open Linux Standard edition, with about 30 add-ons <groan>. We *do* have BRU, Netscape, and other commercial binaries that have been bought, but not before attempting to find acceptable reference-standards. We have also provided DewPoint/Caldera with input towards an Enterprise Server distribution for Linux.
Linux.. the choice of a gnutered generation.
Anyway, we've applied for an ASN and ran into the BGP4 requirement. Ergo, we were looking for the reference-standard BGP4 implementation, which is GateD. We (I) was *very* surprised at the attitude exhibited at <http://www.gated.org>. Very much anti-commercial. But, that does not matter to me as I have $other$ things to worry about (Paying the rent around here is one of them <sigh>). Ergo, having run *that* trail to ground, I posted a query here in NANOG, that Dean Anderson, Shane Wright, Craig Labovit, and others have answered.
Well, you can probably write your own BGP implementation in about a month. This would cost you considerably less than $110k assuming a conservative valuation of your time ($4.25-$5.00/hr).
I now have gated v3.5.9, for Linux, and am building it now. I'll probably run into trouble, as I do with most things that don't have a configure script, or have an otherwise non-standard build process (Why is it that *only* the academic originated stuff is such a PITA? <sigh>).
LINUX#make sh: make: command not found LINUX#Ihatethesefuckingcomputersasdf3252r23t2g sh: Ihatethesefuckingcomputersasdf3252r23t2g: command not found LINUX#goddamn these academic types etc..