
Recentemente configurei um sistema Ubuntu 16.04 com uma configuração Ethernet vinculada. Anteriormente, parecia que para que isso funcionasse, o módulo de ligação precisava ser incluído em /etc/modules
ou /etc/modules.d
. Isso está documentado aqui:
https://help.ubuntu.com/community/UbuntuBonding
No entanto, no sistema Ubuntu 16.04 que acabei de configurar, não fiz nada para forçar o carregamento do módulo do kernel de ligação (por exemplo, nenhuma entrada em /etc/modules
) e ainda assim o módulo do kernel de ligação está carregado e a porta ligada está funcionando como anunciado.
Tenho tentado descobrir o que está desencadeando o carregamento deste módulo e não consigo encontrar. Pelo que eu posso dizer, a Canonical não se reuniu para mudar para o systemd-networkd para a versão 16.04, então não há mágica do systemd em ação, pelo que eu sei udev
.
Agora a coisa toda está realmente me incomodando (principalmente porque não carregar explicitamente o módulo em 14.04 não teria funcionado), então pergunte no StackExchange.
Responder1
O NetworkManager ganhou suporte para bonding recentemente. Duvido que espere que você carregue o módulo manualmente.
Há uma minoria de tutoriais que não dizem para você carregar o módulo, então me pergunto sobre o script ifenslave... hah.
No pacote Debian 8, arquivo ifenslave.pre-up:
add_master()
{
# Return if $BOND_MASTER is already a bonding interface.
[ -f "/sys/class/net/$BOND_MASTER/bonding/slaves" ] && return
# If the bonding module is not yet loaded, load it.
if [ ! -r /sys/class/net/bonding_masters ]; then
modprobe -q bonding
fi