Múltiplos endereços IP com interfaces ligadas

5

Eu tenho um servidor com duas portas ethernet e juntei-as com a seguinte configuração em /etc/network/interfaces :

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual
bond-master bond0

auto eth1
iface eth1 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.0.300
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

Atualmente, todas as conexões são roteadas por bond0 . Eu preciso de outra interface, como bond1 , que pode operar em um endereço IP separado, como 192.168.0.301 .

Sei que, para conseguir isso com apenas a interface eth0 , preciso anexar:

auto eth0:0
iface eth0:0 inet static
(and so on)

mas como eu faria isso com uma ligação de rede? Algo ao longo das linhas de bond0:0 e bond0:1 talvez? Ou bond0 e bond1 , mas crie 4 interfaces de rede totais, como: eth0:0 eth1:0 e eth0:1 e eth1:1 e use-as como os respectivos escravos para as duas ligações separadas? Meio confuso, mas qualquer ajuda seria apreciada!

    
por Michael Morrow 10.06.2016 / 07:11

2 respostas

1

Como eu mesmo tive esse problema e há pouca informação nele em qualquer lugar, aqui está a solução "correta" para o arquivo / etc / network / interfaces:

auto bond0
iface bond0 inet static
    address 192.168.0.5
    netmask 255.255.255.0
    gateway 192.168.0.1
    bond-mode 802.3ad
    bond-miimon 100
    bond-updelay 200
    bond-downdelay 200
    bond-lacp-rate 1
    bond-slaves eth0 eth1

auto bond0:1
iface bond0:1 inet static
    address 192.168.10.160
    netmask 255.255.255.0

Funciona quase da mesma forma que com interfaces regulares como eth0, mas você não deve repetir a configuração de ligação - que deve estar apenas na configuração bond0. Você pode adicionar quantos endereços IP adicionais forem necessários, como bond0: 2, bond0: 3, etc.

Se você também quiser adicionar endereços IPv6, será um pouco diferente novamente, já que você precisa adicionar isso (como um exemplo):

iface bond0 inet6 static
    address 2eee:354:3a3::745
    netmask 64
    gateway 2eee:354:3a3::1

O IPv6 não precisa de bond0: 1 ou soluções similares - basta usar bond0 para cada endereço. Ele usa as configurações de ligação do endereço IPv4, como um segundo endereço IPv4. E você não precisa repetir a parte do gateway para endereços IPv6 adicionais, apenas use address e netmask para o segundo endereço IPv6.

Depois de alterar o arquivo de interfaces, você deve executar os seguintes comandos para reiniciar totalmente a rede e carregar essas alterações:

ip address flush eth0
ip address flush eth1
systemctl restart networking

Isso remove todos os endereços IP da eth0 e eth1 e reinicia a rede com a nova configuração. Certifique-se de ter efetuado login localmente na máquina, já que você precisa desligar completamente a rede antes de reiniciá-la, para que todas as conexões sejam perdidas.

    
por iquito 10.01.2018 / 18:10
0

Estou usando uma configuração que você quer, mas no CentOS. Eu acredito que você pode descobrir como traduzi-lo para o Ubuntu se eu mostrar como ele funciona no CentOS. Minha configuração é assim:

ifcfg-eth4

DEVICE=eth4
BOOTPROTO=none
HWADDR=00:0F:FE:E4:A4:CF
ONBOOT=yes
HOTPLUG=no
SLAVE=yes
MASTER=bond2

ifcfg-bond2

DEVICE=bond2
BOOTPROTO=none
IPADDR=192.168.20.1
NETMASK=255.255.0.0
ONBOOT=yes
TYPE=bonding
MASTER=yes
BONDING_OPTS="miimon=100 mode=1" 

ifcfg-bond2: 1

DEVICE=bond2:1
BOOTPROTO=none
IPADDR=192.168.41.1
NETMASK=255.255.0.0
ONBOOT=yes
TYPE=bonding
MASTER=yes
BONDING_OPTS="miimon=100 mode=1" 

Então, eu tentaria assim no seu caso:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual
bond-master bond0

auto eth1
iface eth1 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.0.300
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

auto bond0:1
iface bond0 inet static
address 192.168.1.300
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
bond-mode balance-rr
bond-miimon 100
bond-slaves eth0 eth1

Experimente.

    
por nobody 10.06.2016 / 08:21