Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

So, I've got two NICs:


and I have multiple IP addresses assigned to each:

auto lo
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet static

auto eth0:0
allow-hotplug eth0:0
iface eth0:0 inet static

auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static

auto eth0:2
allow-hotplug eth0:2
iface eth0:2 inet static

auto eth1
allow-hotplug eth1
iface eth1 inet static

auto eth1:0
allow-hotplug eth1:0
iface eth1:0 inet static

auto eth1:1
allow-hotplug eth1:1
iface eth1:1 inet static

auto eth1:2
allow-hotplug eth1:2
iface eth1:2 inet static

I've also setup ip route like so:

sudo ip route add dev eth0 table eth0
sudo ip route add default via dev eth0 table eth0

sudo ip route add dev eth1 table eth1
sudo ip route add default via dev eth1 table eth1

sudo ip rule add from table eth0
sudo ip rule add from table eth1

Now when I execute the following commands, everything works fine I get back my external IP:

curl --interface eth0 ; echo
curl --interface eth0:0 ; echo
curl --interface eth0:1 ; echo
curl --interface eth0:2 ; echo
curl --interface eth1 ; echo

However, when I run:

curl --interface eth1:0 ; echo

Nothing happens. I've obviously messed up my routes or something. Can anyone help me out? Thanks.

ip route

default via dev eth0 dev eth0  proto kernel  scope link  src dev eth1  proto kernel  scope link  src

route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface         UG    0      0        0 eth0   U     0      0        0 eth0   U     0      0        0 eth1


So I found this, which is what I'm trying to do however, I don't want to specify any subnets. I just want it to round-robin the requests.

share|improve this question
I'm guessing you are statically assigning your IP addresses, no? If you are, wouldn't you agree that posting the contents of /etc/network/interfaces is more informative than the output of ifconfig? I'd like to see how you actually have it manually configured. – I-Ii Mar 22 '14 at 21:37
Updated. Thanks – Hugh Mar 23 '14 at 16:48
Wich distribution are you using? – Nils Mar 23 '14 at 22:00
What happens when you add explicit routing rules for all outgoing IP addresses? – Daniel B Mar 24 '14 at 13:03
Where is your initial connection(s) to the Internet? Which interface(s)? What are configuration details for such interface(s). – I-Ii Mar 24 '14 at 23:53

I think you should read up about bonding interfaces.

If you want to load-balance using two interfaces the system you are connecting to has to "speak" exactly the same LB-protocol as you do.

Else you will loose packets.

share|improve this answer
Can I still choose which IPs are used for outbound requests over that bond for each interface? Thanks. – Hugh Mar 24 '14 at 17:45
@James Why would you want to do that? – Nils Mar 28 '14 at 15:40

Having several NICs connected to the same network might just get you extra collisions. Unless you configure the network carefully, it won't work. And it is quite improbable that the last link is your bottleneck; if it is, you are probably better off with a high speed NIC (and upstream hardare to match).

The whole IP network idea is that you have one NIC on each net. A set up like the one you have is extremely out of line with what is normally done, and (if even legal) is unlikely to have ever been put through it's paces and any misbehaviour fixed.

share|improve this answer
Ok, I'll trying putting the interfaces on different subnets. Once I've done that how can I load-balance outbound requests over those two interfaces? – Hugh Mar 23 '14 at 19:37
I don't see how having multiple NICs on the same network would cause any problems at all. Packet collisions don't exist on a fully switched network. Address collisions won't occur with the OPs configuration. – Daniel B Mar 24 '14 at 12:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.