LARTC
[Top] [All Lists]

[LARTC] multipath device round robin not working?

To: lartc@mailman.ds9a.nl
Subject: [LARTC] multipath device round robin not working?
From: "zutph3n@gmail.com" <zutph3n@gmail.com>
Date: Sat, 13 Jan 2007 12:54:24 +0100
Delivered-to: sp-com-lists@consult.net
Delivered-to: lartc-list@securepoint.com
Delivered-to: lartc@outpost.ds9a.nl
List-archive: <http://mailman.ds9a.nl/pipermail/lartc>
List-help: <mailto:lartc-request@mailman.ds9a.nl?subject=help>
List-id: "Mailinglist of the Linux Advanced Routing &amp; Traffic Control project" <lartc.mailman.ds9a.nl>
List-post: <mailto:lartc@mailman.ds9a.nl>
List-subscribe: <http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc>, <mailto:lartc-request@mailman.ds9a.nl?subject=subscribe>
List-unsubscribe: <http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc>, <mailto:lartc-request@mailman.ds9a.nl?subject=unsubscribe>
Sender: lartc-bounces@mailman.ds9a.nl
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)
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?
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

<Prev in Thread] Current Thread [Next in Thread>