Como atribuir um endereço IPv4 a uma segunda interface de rede de um contêiner LXC?

1

Estou executando um contêiner lxc que desejo conectar a duas pontes diferentes ( br0 e br1 ). Quando eu configuro o arquivo de configuração do contêiner ( /var/lib/lxc/testcontainer/config ) como mostrado abaixo, somente a primeira interface é atribuída a um endereço IP:

lxc.network.type = veth
lxc.network.link = br0
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:e6:16:c5

lxc.network.type = veth
lxc.network.link = br1
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:c5:16:c5

Isso é confirmado usando lxc-ls :

NAME              STATE   AUTOSTART GROUPS IPV4          IPV6 
testcontainer     RUNNING 1         -      192.168.1.6   -    

E usando ifconfig de dentro do contêiner:

eth0      Link encap:Ethernet  HWaddr 00:16:3e:e6:16:c5  
          inet addr:192.168.1.6  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::216:3eff:fee6:16c5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:440 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:48388 (48.3 KB)  TX bytes:1576 (1.5 KB)

eth1      Link encap:Ethernet  HWaddr 00:16:3e:c5:16:c5  
          inet6 addr: fe80::216:3eff:fec5:16c5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2796 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:521109 (521.1 KB)  TX bytes:648 (648.0 B)

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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

A alteração da ordem das interfaces de rede dentro do arquivo de configuração resulta na exibição da outra interface (que anteriormente não foi atribuída) e no endereço IPv4.

O que é necessário para receber um IPv4 na segunda interface?

    
por Greg 16.08.2016 / 15:57

1 resposta

0

Não vendo nenhum IP estático definido no seu snippet de configuração, suponho que você esteja usando o DHCP / dnsmasq. Nesse caso, você precisa ativar a configuração de rede para eth1. Na maioria dos modelos, por padrão, apenas a eth0 foi configurada com um script de configuração de rede padrão.

Dependendo do modelo / SO que você está usando, edite o arquivo de configuração de rede e adicione algo na linha de:

auto eth1
iface eth1 inet dhcp

(este exemplo é para o container debian / ubuntu)

    
por 18.05.2017 / 23:24