Система запускает Ubuntu 16.04.3 LTS с 3 сетевыми картами 1GBit: один встроенный и 2 Intel PCIe NIC. Оба Intel NIC связаны (bond0) с режимом 4 (LACP). Переключатель заблокирован для поддержки LACP на этих двух портах. Вот сетевая конфигурация:
cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s31f6
#iface enp0s31f6 inet dhcp
iface enp0s31f6 inet static
mtu 9000
address 192.168.x.x
netmask 255.255.x.0
network 192.168.x.0
gateway 192.168.x.1
dns-nameservers 192.168.x.x
auto enp3s0
iface enp3s0 inet manual
bond-master bond0
auto enp4s0
iface enp4s0 inet manual
bond-master bond0
auto bond0
iface bond0 inet static
mtu 9000
address 192.168.x.x
netmask 255.255.x.0
network 192.168.x.0
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate 1
bond-slaves none
Эта конфигурация работает довольно хорошо без ошибок. Но если загрузка сети довольно высока (например, при копировании 100-200 ГБ), в / var / log / syslog создаются следующие ошибки:
Feb 14 17:20:02 ubuntu1 kernel: [29601.287684] e1000e: enp3s0 NIC Link is Down
Feb 14 17:20:02 ubuntu1 kernel: [29601.287993] e1000e 0000:03:00.0 enp3s0: speed changed to 0 for port enp3s0
Feb 14 17:20:02 ubuntu1 kernel: [29601.379193] bond0: link status definitely down for interface enp3s0, disabling it
Feb 14 17:20:02 ubuntu1 kernel: [29601.379199] bond0: first active interface up!
Feb 14 17:20:04 ubuntu1 kernel: [29603.064712] e1000e: enp3s0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
Feb 14 17:20:04 ubuntu1 kernel: [29603.079162] bond0: link status definitely up for interface enp3s0, 1000 Mbps full duplex
Известна ли эта проблема? По-видимому, через несколько секунд неудачный интерфейс снова работает хорошо. Проблема не возникает очень часто.
В файле / proc / net / bonding / bond0 я вижу, что режим 4 был правильно распознан:
cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
I попытались использовать раб-ведомые с именами интерфейсов вместо них. Но в этом случае ifenslave был заблокирован во время перезапуска сетевых сервисов. Поэтому я нашел рекомендацию, что использование «none» bond0 будет вставлено и не блокируется.
Любые идеи?