Dual Internet Connection Load Balancing
I'm trying to setup our company's network to handle 2 internet connection and provide some load-balancing and special routing features.
We have some servers in the local network which are connected through a Linux server acting as a router to the internet. I want to add another internet connection to the router and have it load-balance the network traffic using both links.
The two connections are from 2 different ISPs and they are very fast as long as the data is transferred in their own networks, the ISPs have poor connections between them. So I when a client from ISP A connects to one of the servers I want the router to use the network interface that is linked to ISP A and the same for B. The ISPs can easily be told apart from their IP ranges.
So my goals are:
1. set-up load balancing using both the connections for traffic originating from our computers
2. in case one of the connection fails, the other should be used for all traffic
3. if possible, when one link fails I want the connections which were active on that interface to be transferred to another interface
4. packets originating from clients should be router through the interfaces linked to those clients' ISPs.
I would appreciate any hints and ideas.
How could this work for more than 2 internet connections?