Enter your email address:

Delivered by FeedBurner

Load Balance your traffic with a script for linux


StumbleUpon Toolbar

When you have two ISPs you may want to make your linux machine balance the load of your internet access, you can use ip route

The package needed for this is iproute, if you are using debian you can install it with

apt-get install iproute

or go to this page and download the source of iproute

Let's use this Load Balance Script which work for Centos, Fedora, Ubuntu, Debian and should work for all distributions.

-----------cut here--------------

#!/bin/bash

#IPs of the def gateways

IP1=192.168.1.1

IP2=192.168.2.1

REDLOCAL=10.1.1.0/24

IPLOCAL=10.1.1.1

# NICs

IF1=eth0

IF2=eth1

ip rule add from $IP1 lookup T1

ip route add $REDLOCAL via $IPLOCAL table T1

ip route add 0/0 via $IP1 table T1

ip route add from $IP2 lookup T2

ip route add $REDLOCAL via $IPLOCAL table T2

ip route add 0/0 via $IP1 table T1

ip route default equalize nexthop via $IP1 dev $IF1 nexthop via $IP2 dev $IF2

--------------cut here ---------------------

that should do the job, off course make the changes on the variables according to your needs.

Trackback URL for this post:

http://www.go2linux.org/trackback/26
StumbleUpon Toolbar

 If you like this article, subscribe to our full rss

If this article was somehow useful for you, you can leave something in the tip's jar

Please post your question in our forum and use comments only to leave your comments about the article, thanks.

mirando algunas cosas y

mirando algunas cosas y ajustando a dos tarjetas de red tengo el sig script

#!/bin/bash -v

#IPs

IP1=190.84.224.246

IP2=190.156.148.160

#ahora los Gateways

P1=190.84.224.1
P2=190.156.148.1

#Las redes
P0_NET=192.168.0.0/16
P1_NET=190.84.224.0/24
P2_NET=190.156.148.0/23

# NICs

IF1=eth0

IF2=eth1

ip route add $P1_NET dev $IF1 src $IP1 table T1
ip route add default via $P1 table T1
ip route add $P2_NET dev $IF2 src $IP2 table T2
ip route add default via $P2 table T2

ip route add $P1_NET dev $IF1 src $IP1
ip route add $P2_NET dev $IF2 src $IP2

#ip route add default via $P1

ip rule add from $IP1 table T1
ip rule add from $IP2 table T2

ip route add $P0_NET dev $IF0 table T1
ip route add $P2_NET dev $IF2 table T1
ip route add 127.0.0.0/8 dev lo table T1
ip route add $P0_NET dev $IF0 table T2
ip route add $P1_NET dev $IF1 table T2
ip route add 127.0.0.0/8 dev lo table T2

route del -net 0.0.0.0 netmask 0.0.0.0 dev $IF1
ip route add default scope global nexthop via $P1 dev $IF1 weight 1 nexthop via $P2 dev $IF2 weight 1

thank you for your

thank you for your support,

Guillermo Garron

can you post an output of ip

can you post an output of ip route or route -n ??

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

Captcha
This question is for testing whether you are a human visitor and to prevent automated spam submissions.

This site is proudly hosted at Bluefur Hosting