Hi.
I´m making an script for load balancing of two
cablemodems internet connections toward my LAN.
The problem is that when I try to ''equalize'' the
the two internet connections with the weight=1 it
doesn´t work. On the other hand, if I put 5 and 5
it works, but not at 100%, it does intermittlently,
some times works and others don´t.
example:
ip route add default equalize\
nexthop via $P1 dev $IF1 weight 5\
nexthop via $P2 dev $IF2 weight 5
Besides, when I open, for example, the firefox browser, it
takes a lot to start navigating, sometimes it works and other
times gives an error and I can´t navigate.
>From the server it works properly, but form the clients PCs
doesn´t.
By the way, I´m making NAT toward the Client PCs.
Do you have any idea why does it take so long to start
navigating and why sometimes it works and sometimes doesn´t.
This is the current script running in my server:
#================================================
P0_NET=10.0.1.0/24
IF0=eth1
IP0=10.0.1.1
IF1=eth0
IP1=xxx.xxx.xxx.7
P1_NET=xxx.xxx.xxx.0/24
P1=xxx.xxx.xxx.1
IF2=eth2
IP2=yyy.yyy.yyy.21
P2_NET=yyy.yyy.yyy.0/24
P2=yyy.yyy.yyy.1
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth2/rp_filter
echo 3 > /proc/sys/net/ipv4/route/gc_elasticity
echo 1 > /proc/sys/net/ipv4/route/gc_interval
echo 0 > /proc/sys/net/ipv4/route/gc_timeout
ip route flush cache
ip route flush all
ip route flush table modem0
ip route flush table modem1
ip rule add from $IP1 lookup modem0
ip rule add from $IP2 lookup modem1
ip route add $P1_NET dev $IF1 src $IP1
ip route add $P2_NET dev $IF2 src $IP2
ip route add $P0_NET dev $IF0 src $IP0
ip rule add from $P1_NET lookup modem0
ip route add $P0_NET dev $IF0 table modem0
ip route add 0/0 via $P1 table modem0
ip rule add from $P2_NET lookup modem1
ip route add $P0_NET dev $IF0 table modem1
ip route add 0/0 via $P2 table modem1
ip route add default equalize\
nexthop via $P1 dev $IF1 weight 5\
nexthop via $P2 dev $IF2 weight 5
#=================================================