I have a Linux server with two NIC that are connected to a switch (and one NIC for management) and I want to use combine them and use LACP there, but for some unknown reason to me the bonding will just not work/go up.
It also ignores the LACP configuration and goes into round-robin mode.
Huawei switch configuration:
interface Eth-Trunk10
description #### Server ####
port link-type trunk
port trunk allow-pass vlan 167
stp disable
mode lacp
load-balance src-dst-mac
/etc/network/interfaces:
auto lo
iface lo inet loopback
iface enp3s0 inet manual
auto enp4s0
iface enp4s0 inet manual
bond-master bond1
auto eno1
iface eno1 inet manual
bond-master bond1
auto bond1
iface bond1 inet manual
bond-slaves eno1 enp4s0
bond-miimon 100
bond-mode 802.3ad
bond-lacp-rate 1
auto bond1.167
iface bond1.167 inet static
address x.x.x.x
netmask 255.255.255.248
vlan-raw-device bond1
auto vmbr0
iface vmbr0 inet static
address a.a.a.b
netmask 255.255.255.248
gateway a.a.a.a
bridge-ports enp3s0
bridge-stp off
bridge-fd 0
/proc/net/bonding/bond1:
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: load balancing (round-robin)
MII Status: down
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: enp4s0
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:f9
Slave queue ID: 0
Slave Interface: eno1
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 00:1b:21:3a:6f:fb
Slave queue ID: 0
Network status:
● networking.service - Raise network interfaces
Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
Active: active (exited) since Tue 2019-09-24 19:33:18 CEST; 13s ago
Docs: man:interfaces(5)
Process: 16974 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=0/SUCCESS)
Main PID: 16974 (code=exited, status=0/SUCCESS)
Sep 24 19:33:18 rakete systemd[1]: Starting Raise network interfaces...
Sep 24 19:33:18 rakete ifup[16974]: /etc/network/if-pre-up.d/ifenslave: 47: echo: echo: I/O error
Sep 24 19:33:18 rakete ifup[16974]: /etc/network/if-pre-up.d/ifenslave: 47: echo: echo: I/O error
Sep 24 19:33:18 rakete ifup[16974]: Waiting for vmbr0 to get ready (MAXWAIT is 2 seconds).
Sep 24 19:33:18 rakete systemd[1]: Started Raise network interfaces.
lsmod | grep bond:
bonding 159744 0
I could not find anything helpful on these error messages. Maybe someone here has some experience with the bonding feature in Linux?
Update, ip lookup:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master mgmt state UP mode DEFAULT group default qlen 1000
link/ether b4:2e:99:3d:68:64 brd ff:ff:ff:ff:ff:ff
3: enp4s0: <BROADCAST,MULTICAST,SLAVE> mtu 1500 qdisc pfifo_fast master bond1 state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
4: eno1: <BROADCAST,MULTICAST,SLAVE> mtu 1500 qdisc pfifo_fast master bond1 state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
5: bond1: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
6: bond1.167@bond1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state LOWERLAYERDOWN mode DEFAULT group default qlen 1000
link/ether 00:1b:21:3a:6f:f9 brd ff:ff:ff:ff:ff:ff
7: mgmt: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether b4:2e:99:3d:68:64 brd ff:ff:ff:ff:ff:ff