Hi all, ive been using the nano howto to load balance to adsl links for
a good while now ive got our live server running kernel 2.6.11.6 and
these links work fine.
i set up another server same model of machine and used the same kernel
config ( wanted to try some tos stuff out) 2.6.11.6 but this one doesnt
balance properly. what ever i put in table 222 (which is looked at from
all sources) it ALWAYS uses the first hop! and never the 2nd and if i
change them round so the 2nd link is on top then that one will always
get used???
Im using julians patches on both routes-2.6.11-12.diff.
the only thing that is different between the setups is the ips obviously
and the fact that one of the link goes via the live server 192.168.0.1
which then goes out of the gateway 217.155.241.46 so 2 gateways, but the
routing is fine as if i switch the hops over so 192.168.0.1 is the first
nexthop then it works but again it wont go to the hop below it..
heres some config that might help
2nd server with problems :
"debiantest:/usr/src# ip route show table 222
default
nexthop via 217.155.31.190 dev eth1 weight 1
nexthop via 192.168.0.1 dev eth2 weight 1
debiantest:/usr/src# ip rule
0: from all lookup local
50: from all lookup main
201: from 217.155.31.184/29 lookup 201
202: from 192.168.0.0/24 lookup 202
222: from all lookup 222
32766: from all lookup main
32767: from all lookup default
tracert results : debiantest:/usr/src# traceroute hotmail.com
traceroute: Warning: hotmail.com has multiple addresses; using 64.4.32.7
traceroute to hotmail.com (64.4.32.7), 30 hops max, 38 byte packets
1 dsl-217-155-31-190.zen.co.uk (217.155.31.190) 2.382 ms 2.320 ms
1.331 ms
debiantest:/usr/src# traceroute google.co.uk
traceroute: Warning: google.co.uk has multiple addresses; using
216.239.39.104
traceroute to google.co.uk (216.239.39.104), 30 hops max, 38 byte packets
1 dsl-217-155-31-190.zen.co.uk (217.155.31.190) 2.368 ms 2.318 ms
1.315 ms
debiantest:/usr/src# traceroute scan.co.uk
traceroute to scan.co.uk (213.218.221.5), 30 hops max, 38 byte packets
1 dsl-217-155-31-190.zen.co.uk (217.155.31.190) 8.689 ms 2.336 ms
1.343 ms
debiantest:/usr/src# traceroute metropower.co.uk
traceroute to metropower.co.uk (70.85.26.36), 30 hops max, 38 byte packets
1 dsl-217-155-31-190.zen.co.uk (217.155.31.190) 2.602 ms 2.335 ms
1.337 ms
live server:
ideanat:/home/rooto# ip rule
0: from all lookup local
50: from all lookup main
51: from all lookup main
201: from 217.155.31.184/29 lookup 201
202: from 217.155.241.40/29 lookup 202
203: from 192.168.0.81 lookup 203
204: from 192.168.0.73 lookup 204
222: from all lookup 222
32766: from all lookup main
32767: from all lookup default
ideanat:/home/rooto# ip route show table 222
default proto static
nexthop via 217.155.31.190 dev eth1 weight 1
nexthop via 217.155.241.46 dev eth2 weight 1
(this is what it should do, each request is going to a different link,
(obviously if its not cached)
traceroute to google.co.uk (216.239.57.104), 30 hops max, 38 byte packets
1 dsl-217-155-241-46.zen.co.uk (217.155.241.46) 0.568 ms 0.353 ms
0.297 ms
ideanat:/home/rooto# traceroute microsoft.com
traceroute: Warning: microsoft.com has multiple addresses; using
207.46.130.108
traceroute to microsoft.com (207.46.130.108), 30 hops max, 38 byte packets
1 dsl-217-155-31-190.zen.co.uk (217.155.31.190) 1.421 ms 1.351 ms
1.320 ms
ideanat:/home/rooto# traceroute metropower.co.uk
traceroute to metropower.co.uk (70.85.26.36), 30 hops max, 38 byte packets
1 dsl-217-155-241-46.zen.co.uk (217.155.241.46) 0.442 ms 0.473 ms
0.303 ms
the 2nd server is basically using one link with a proper external ip
217.155.31.186 and the other link which is going via 192.168.0.0, goes
to 192.168.0 then gets statically routed to 217.155.241.42, ( i ran out
of ips)
this is driving me mad i cant see why its doing this, please help :)
cheers
ant