Combine two Internet connections
You may be in the same situation as me: not a good Internet connection and a neighbour you know well.
So you may be asked the same question as me: can we join our two connections to double the speed?
The answer is not simple, there are several solutions with different costs, different degrees of sharing and complexity. Let's study 3 cases.
To start, the most complex and most expensive, but that really does what is expected: combine the 2 connections to make one 2 times faster.
To do that, it requires a 3rd machine, with a 3rd IP address. So we need to rent a dedicated server in a hosting company or have a 3rd friend with a good connection.
We are connected, my neighbor and me to this remote machine by the two connections, and it is it which will be connected to the rest of the Net for us. This can be done with a adapted Linux distribution like pfSense. But it is complex and expensive, because we need to rent a server!
A router with 2 entries
A cheaper solution is to buy a router which can do load balancing between two Internet connections and the two PCs. It means that if one is too busy, it will use the other, if both are available, it can use a little of both to go faster. (But not really double the speed like in the 1st solution.)
In the affordable prices, I only found the Linksys (or Cisco) RV042 (near $150).
The configuration is not particularly easy to really share the connections, but you can keep the default settings to use the other connection in case of failure of the first.
It's without a doubt the ideal solution for those who don't want to spend too much money. The Linksys will also be a good router that will connect several computers and protect them from external attacks.
The last solution will please the most stingy of you, because it only requires a small investment: a network card. Of course it is also the most trivial and requires some knowledge of networking.
The goal is to plug an Internet connection on a network card and the 2nd on a different network card (even if you use WiFi, you need a card per connection). Then we use the route function in command line that will allow to define which gateway to use for a specified IP range.
The basic syntax is the following:
route ADD IP_to_join gateway_IP
We can also specify IP ranges, but the syntax is different on Windows or Linux (mask, netmask, gw ...), I'll let you find documentation elsewhere.
Example:I surf on the Web, so I resolve addresses (with DNS server) and download files (pages, images...). I can ask via the route command to contact the DNS with my neighbour's connection and keep the rest with mine.
We can then continue to separate: one for e-mail, other for instant messaging, video downloads from Dailymotion stay with my connection, those from Youtube go on my neighbour's one, etc...
This does not really distribute the load, a connection can be saturated because my neighbour and I are downloading the same sort of thing. But we can not have our cake and eat it.
According to me, the ideal solution is the famous router Linksys RV042. It's obviously the simplest. The hardest thing, with it, will be to run a cable between the two apartments (we can't bring Internet connection wireless to it)!