I work in the third world at an educational ministry. We're setting up in a new office and need to decide on an Internet package. Because the (only) telecom business has figured out that government organizations can spend limitless money on an Internet connection, there is a huge disparity in cost between leased lines for business use and home connections.
Can anyone explain my options for what I believe (from searching other threads) is called channel bonding? That is, I want to take 4 Internet connections (4 lines connected to 4 DSL modems), stick them into a server and let all computers on the network make use of the increased bandwidth. Also, I have to split use roughly equally between all 4 because of the way the ISP arranges billing.
The server has not yet been built, so we can easily go Windows or Linux at this point in time.
Catch: it's tough to get fancy equipment (read: decent routers) here. But we can, for example, buy a bunch of network cards.
What are my choices?
I would suggest that you run the Pfsense firewall/router distribution on you server.
With this software you can load balance across the four DSL connections that you have. see http://doc.pfsense.org/index.php/Multi_WAN_/_Load_Balancing for more details.
You can also host data/services (web server,FTP etc) for external users through this router via a DMZ.
In all you would need 6 Network interfaces on your server. 4 - DSL lines 1 - LAN 1 - DMZ
Using a residential DSL line would most likely mean that you would be given a dynamic IP address. With a single line you would normally use a dynamic DNS service such as dyndns (http://www.dyndns.com). With this approach you would create an account with dyndns (say) and choose a web address. This web address will be a sub domain on one of the domains owned by DynDns. Then you would sync a DNS update client on you router with your account at DynDNS. At this point people can access your server using the address you choose when you signed up for the DynDNS account.
Doing this across multiple residential lines becomes either tricky or expensive. DynDNS has options that you can look at (Round robin load balancing etc. ). If this is beyond your budget then you can consider the following:
Hope this helps =)
I can present a few ideas off the top of my head:
With 4 IP's and 4 physical interfaces you can use either bonding mode 5 or 6 on Linux (I believe there are Windows alternatives as well) both are adaptive load balancing algorithms for outgoing traffic, however this may also require some DNS-fu depending on what exactly you're doing with incoming traffic.