Re: multipath device round robin not working?

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jan 13, 2007 at 12:54:24PM +0100, zutph3n@xxxxxxxxx wrote:
> Hi,
> 
> I have a linux server running kernel 2.6.19 that is connected with 2 
> seperate 100Mbit links to the same isp:
> 
> 
>                                 +---+
>  +---------------+              | I |                        
> +---------------+
>  |               |              | S |                        
> |               |
>  |        eth0 --+--------------+ P |                        
> |               |
>  |               |              | S |                        
> |               |
>  | linux 2.6.19  |              | W |========================|  ISP 
> GATEWAY  |
>  |               |              | I |                        
> |               |
>  |        eth1 --+--------------+ T |                        
> |               |
>  |               |              | C |                        
> |               |
>  +---------------+              | H |                        
> +---------------+
>                                 +---+
> 
> Both links have their own ip but have the same gateway. The problem is I 
> can't seem to get egress traffic load balanced over the 2 nics.
> 
> IP config after boot (dhcp from isp)
> ip a:
> 
> 1: lo: <LOOPBACK,UP,10000> mtu 16436 qdisc noqueue
>    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
>    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
> 
> 2: eth0: <BROADCAST,MULTICAST,NOTRAILERS,UP,10000> mtu 1500 qdisc 
> pfifo_fast qlen 1000
>    link/ether 00:00:00:00:00:0f brd ff:ff:ff:ff:ff:ff
>    inet 10.0.0.110/24 brd 10.0.0.255 scope global eth0
> 
> 3: eth1: <BROADCAST,MULTICAST,NOTRAILERS,UP,10000> mtu 1500 qdisc 
> pfifo_fast qlen 1000
>    link/ether 00:00:00:00:00:ed brd ff:ff:ff:ff:ff:ff
>    inet 10.0.0.120/24 brd 10.0.0.255 scope global eth1
> 
> Default routing table after boot
> ip r:
> 
> 10.0.0.0/24 dev eth0  scope link
> 10.0.0.0/24 dev eth1  scope link  metric 1
> 127.0.0.0/8 dev lo  scope link
> default via 10.0.0.1 dev eth0
> default via 10.0.0.1 dev eth1  metric 1
> 
> I enabled ip_forward and set arp_ignore to 1 for eth0 and eth1 to make 
> sure the correct nic answers to arp requests.
> 
> I tried to get the egress load balancing to work by replacing the above 
> two default routes with:
> 
> ip route add default mpath drr nexthop via 10.0.0.1 dev eth0 weight 1 
> onlink nexthop via 10.0.0.1 dev eth1 weight 1 onlink
> 
> I assumed that with mpath device round robin both nics would be used 
> more or less equally, but the reality is only one of the nics actually 
> works and the second nic even stops responding to arp requests.
> 
> Am I doing something totally wrong or impossible here or is the device 
> round robin code not working properly?

Curiosity but why use such a setup is your ISP link > 2Gbp/s ?  Why not bond if
you want HA.

why its not round robining. I am going to guess but this line

default via 10.0.0.1 dev eth0

costs less to use than

default via 10.0.0.1 dev eth1  metric 1

so it should never use the second.  I say guess cause I don't know what the
default metric is if you do add one.

What you want it to look something like is

default  proto static  metric 5 
        nexthop via 144.132.144.1  dev vlan2 weight 5
        nexthop via 10.20.20.230  dev ppp0 weight 20

There is a link to a howto on the web site that steps out how to set this up

Alex


> _______________________________________________
> LARTC mailing list
> LARTC@xxxxxxxxxxxxxxx
> http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
> 

Attachment: signature.asc
Description: Digital signature

_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux