3

Using Ubuntu Server 16.04

I've created a bonded connection between eno1 & eno2, to create 'bond0', in 'Round Bobin' configuration

When I look at the network traffic stats (using ifstat for example), it shows traffic on eno1 & eno2, but nothing on bond0

Screenshot of Network Traffic

Is this normal behaviour, or do I perhaps have something setup incorrectly?

Everything appears to be pointing to the correct IP address of the bonded connection.

I know with this type of a connection it will route a single 'process' through one connection, not both, so the weighting towards eno2 doesn't surprise me (I downloaded a large folder to test) - but should bond0 show any traffic (eg, the sum of eno1+2)?

Or does the 'virtual' nature of the connection mean it will never itself see any traffic?

ifconfig file...

bond0     Link encap:Ethernet  HWaddr 7a:2e:3e:25:27:27
          inet addr:192.168.0.210  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eno1      Link encap:Ethernet  HWaddr 1c:98:ec:0f:47:10
          inet addr:192.168.0.202  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::1e98:ecff:fe0f:4710/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:639661 errors:0 dropped:56 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:140614455 (140.6 MB)  TX bytes:680 (680.0 B)
          Interrupt:16

eno2      Link encap:Ethernet  HWaddr 1c:98:ec:0f:47:11
          inet addr:192.168.0.203  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::1e98:ecff:fe0f:4711/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3239553542 errors:0 dropped:77 overruns:0 frame:0
          TX packets:759036926 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4786541843470 (4.7 TB)  TX bytes:254845825782 (254.8 GB)
          Interrupt:17

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:1989 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1989 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:141834 (141.8 KB)  TX bytes:141834 (141.8 KB)

Interfaces file...

auto eno1    
iface eno1 inet static
address 192.168.0.202
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4

auto eno2
iface eno2 inet static
address 192.168.0.203
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4

auto bond0
iface bond0 inet static
address 192.168.0.210
gateway 192.169.0.1
netmask 255.255.255.0
dsn-nameservers 8.8.8.8 8.8.4.4
up /sbin/ifenslave bond0 eno1 eno2
down /sbin/ifenslave -d bond0 eno1 eno2

2 Answers 2

1

Devices eno1 and eno2 does not need to have ip address configured. Ip address configuration is picked up with bond device.

Example for eno1 and eno2 as slaves and the bonding interface bond0 using a simple active-backup setup, with eno1 being the primary interface

auto eno1    
iface eno1 inet manual
bond-master bond0
bond-primary eno1

auto eno2
iface eno2 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.0.210
gateway 192.168.0.1
netmask 255.255.255.0
dsn-nameservers 8.8.8.8 8.8.4.4
bond-mode active-backup
bond-miimon 100
bond-slaves none

One other thing - you have wrong gateway configuration for bond0 device (192.169.0.1 should be 192.168.0.1). See example of bond configuration here and here.

2
  • Thanks - great spot on the gateway - might explain why I was struggling to get my router to recognise it correctly. I'll comment out the IP details that was more legacy from before bonding to test the connections.
    – aldredd
    Aug 4, 2016 at 20:24
  • Fantastic - I'm now getting data streaming through all 3 interfaces when viewed with ifstat! Had to adjust from the above a little - I think because I'd already configured it with ifenslave - and I do get a network config error during boot up (forget the error, but made me wait 5min4sec to resolve) which I need to fix, but I've been put on the right track.
    – aldredd
    Aug 4, 2016 at 21:49
0

It's important to pay attention to bond-mode ! see "Descriptions of bonding modes" on page https://help.ubuntu.com/community/UbuntuBonding

Mode active-backup is not good in terms of getting double bandwith: Active-backup policy: Only one slave in the bond is active.

2
  • Thanks - I don't think I'm using Active-Backup - I believe I'm using Round-Robin. I didn't specify a type, but I read that not specifying a type in /etc/modules defaulted it to Round-Robin. I should probably be explicit in the selection, so will update it.
    – aldredd
    Aug 4, 2016 at 20:27
  • I was describing this cause the exampke on the link I postred uses "active backup" and I would save you for using the example with this settings.
    – 0x0C4
    Aug 5, 2016 at 5:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .