Ping para o contêiner LXC

1

Por favor, eu tento fazer o ping 10.0.3.8 (ip do container LXC) da VMB, mas não deu certo! Você tem uma ideia, por favor?

Aqui está uma explicação do que eu quero fazer: (seta vermelha)

As setas azuis indicam que o ping funciona corretamente. A seta vermelha significa que há um problema: eu tento de VMB (192.168.1.7) para ping 10.0.3.8 eu tenho essa mensagem bloqueada: ping 10.0.3.8 PING 10.0.3.8 (10.0.3.8) 56 (84) bytes de dados . --- 10.0.3.8 estatísticas de ping --- 68 pacotes transmitidos, 0 recebidos, 100% de perda de pacotes, tempo 67214ms -

Muito obrigado.

Cumprimentos.

    
por researcher 18.03.2015 / 20:45

1 resposta

1

Quando você cria um contêiner Linux, ele existe em seu próprio espaço de rede. É por isso que os endereços IP parecem tão diferentes. Suas Máquinas Virtuais têm 192.168.1.x, enquanto seus Contêineres Linux recebem 10.0.3.x.

Uma maneira de resolver isso é criar uma placa de rede virtual dedicada no Container Linux, que então extrairá um endereço da rede 192.168.1.x.

Abaixo estão as principais instruções, mas etapas detalhadas e em segundo plano vêm deste artigo da Bonsai Framework .

  

Crie um macvlan permanente no host

     

Adicione à parte inferior do arquivo /etc/network/interfaces do host,

# Creates a macvlan interface called macvlan0 without an IP address  
iface mvlan0 inet manual  
   pre-up ip link add mvlan0 link eth0 address 8a:38:2a:cc:d7:aa type macvlan mode bridge  
   post-down ip link del macvlan0  
auto mvlan0  

Reinicialize seu sistema para que a alteração entre em vigor. Você notará um mvlan0 agora ao visualizar seus dispositivos de rede com ifconfig -a .

Conecte o Container a macvlan no Host, modificando o arquivo de configuração localizado em /var/lib/lxc/[container]/config .

  

As entradas para adicionar à sua nova placa de rede,

# macvlan for external IP  
lxc.network.type = macvlan   
lxc.network.macvlan.mode = bridge  
lxc.network.flags = up  
lxc.network.link = mvlan0  
lxc.network.hwaddr = 00:16:3e:8d:4f:51  
lxc.network.name = eth0  

Para o hwaddr, gere um único endereço MAC unicast administrado localmente por meio de um site gratuito como helion.org .

Por fim, ajuste o arquivo de interfaces dentro do contêiner para vincular via estática ou se preferir usar dinâmico.

No meu caso, eu ajustei meu roteador doméstico para que 192.168.0.1 a 192.168.0.20 não sejam designados dinamicamente e usem estáticos em meu LXC.

Portanto, modifico o arquivo de interfaces de contêineres da seguinte forma,

auto eth0  
iface eth0 inet static  
address 192.168.0.12  
gateway 192.168.0.1  
netmask 255.255.255.0  

auto eth1  
iface eth1 inet dhcp  

Reinicie seu contêiner de Linux.

    
por phamti 08.03.2017 / 04:16