You are not logged in.

#1 2007-09-23 13:46:55

synthead
Member
Registered: 2006-05-09
Posts: 1,337

Using many sources for internet?

A little off topic, but I have Clearwire as an ISP right now, get's about 1.5M down 256K up.  Slow, but the wireless part got me since I like to carry internet where I go.  Buuuut, I'm stuck in a contract I can't afford to break.  Lame!  So I called Comcast, and they're coming over later today to bring me a modem among some other things.

So I'm going to have two sources for internet.  What I would really like to do is use both at the same time, taking advantage of the bandwidth of both.  I have a wireless router that Clearwire is on right now, and soon I'll have a Thomson cable modem that I can use through my wired ethernet port.  So I could get internet through eth0 or eth1, but how can I, and will I be able to, use both?

On a side note, I have a WRT54Gv2 router that I flashed with OpenWRT, so it's running its own version of linux that I can mess with.  It's got everything including a package manager, telnet and ssh ready to go, you know, the complete kit and kaboodle.  If I could have Comcast and Clearwire doing the same thing on the router, it would be so nice.  Connect via 802.11g, bammo, ultimate power.

Let me know what I need to do and I'll buy you a big cheeseburger when I head out to Jack in the Box in a few!

P.S.  I'm sure people in Sweden think this plan rivals ideas of multithreading 386s together ... ta!

Offline

#2 2007-09-24 00:06:34

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,964

Re: Using many sources for internet?

Check http://bbs.archlinux.org/viewtopic.php?id=36290 , it's about  a similar setup.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2007-09-24 00:36:50

somairotevoli
Member
Registered: 2006-05-23
Posts: 335

Re: Using many sources for internet?

This gentoo wiki entry may help: http://gentoo-wiki.com/Dual_internet_connections

Offline

#4 2007-09-29 23:40:54

synthead
Member
Registered: 2006-05-09
Posts: 1,337

Re: Using many sources for internet?

Thanks guys, I'm working on it now. smile

Offline

#5 2007-10-01 06:51:07

synthead
Member
Registered: 2006-05-09
Posts: 1,337

Re: Using many sources for internet?

Nothing yet tongue

Got two NICs, eth0 and eth1.  eth0 is a wired connection going straight to a Clearwire modem (directly connected to the internet).  eth1 is a wireless connection going through a router to a Comcast modem.

What I'm doing: I get an IP via DHCP for both interfaces.  I get a normal crazy ass IP from Clearwire and 192.168.1.x from my router.  I modprobe bonding, and bring the interface up with the IP 192.168.1.10 and netmask 255.255.255.0 (would this netmask work with what I got)?  Then I run "ifenslave bond0 eth1 eth0"  As far as I know, this is how you do it, but when I try to ping google.com, nothing.

Baah!  What do I do?

Last edited by synthead (2007-10-01 06:52:00)

Offline

#6 2007-10-01 23:36:08

hungsonbk
Member
Registered: 2007-05-26
Posts: 105
Website

Re: Using many sources for internet?

In you situation, you can't use bonding because it just combines two NICs into a virtual NIC with only one ip address. What you need to do is to tweak your Linux routing table so that it can load balancing between two NICs.

For example, you have two ISP with the following information:

ISP1 connects to eth0:

eth0 ip 10.0.0.1
eth0 net 10.0.0.0/24
eth0 gateway: 10.0.0.254

ISP2 connects to eth1:
eth1 ip 192.168.0.1
eth1 net: 192.168.0.0/24
eth1 gateway: 192.168.0.254


Step 1: install the iproute2
#pacman -S iproute

Step 2: Add two routing tables in /etc/iproute2/rt_tables file as like this:
#
# reserved values
#
255     local
254     main
253     default
200     ISP1
199     IPS2
0       unspec
#
# local
#
#1      inr.ruhep

Step 3: use the following command:
ip route add 10.0.0.0/24 dev eth0 src 10.0.0.1 table ISP1
ip route add 192.168.0.0/24 dev eth1 src 192.168.0.1 table ISP2
ip route add default via 10.0.0.254 table IPS1
ip route add default via 192.168.0.254 table IPS2

ip route add default scope global nexthop via 10.0.0.254 dev eth0 weight 1 \
nexthop via 192.168.0.254 dev eth1 weight 1


If you have two ISPs with different speed, you can change the weight parameter in the last command. I don't remember exactly but the higher the weight nunber, the more traffic will be sent on that link.

The above commands are used if your have static IPs. but if you have dynamic ip address, i suggest you to write a script with above command, put it in /etc/rc.d/ and run it after two NICs got their dynamic ip. If you want to grap ip address of an interface after i got the dynamic ip, you can use the following command:

IP1="`/sbin/ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"

For more information, you should look into some iproute2 document.

Hope this can help you.

Cheers.

Last edited by hungsonbk (2007-10-01 23:38:16)

Offline

Board footer

Powered by FluxBB