These two seem to be the closest to what I want:
http://www.ntop.org/n2n/
OpenVPN with Quagga (OSPF)
I will have servers behind routers/firewalls not in my control. Many may be ADSL or other budget connections. There may also be multi-layered NAT as there are nodes in China. I have control of the servers, and I can request access to their routers to forward ports (although it would be best if this is not required).
n2n seems like it would do what I want out of the box and transparently. The payment requirements and the not so clear "commercial use" worries me, as well as the feeling that it is a bit experimental. If n2n is reasonably stable (anybody with experience with n2n?), I figure it would be fun anyways to tinker with n2n on the side.
OpenVPN and Quagga come with most distributions, and are solid. I plan to do something similar to what n2n does, but with a set of eyes doing the work. The IT can do the load-balancing and failure-tolerance, putting up links when links go down just in case, or setting up rules. And/or writing scripts. Added benefit that I can set up routes that may be better than what n2n would find.
What would I be better off going with? Using and hacking n2n, or using OpenVPN and Quagga to do something similar to n2n?