Por favor, tentei fazer o ping 10.0.3.8 (ip do container LXC) do VMB mas não funcionou! Você tem uma ideia, por favor?
Aqui está uma explicação do que eu quero fazer: (seta vermelha)
As setas azuis significam que o ping funciona corretamente. A seta vermelha significa que há um problema: tento do VMB (192.168.1.7) para o ping 10.0.3.8, tenho esta 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.
Atenciosamente.
Responder1
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 Linux Container que extrairá um endereço da rede 192.168.1.x.
Abaixo estão as instruções básicas, masetapas detalhadas e antecedentes vêm deste artigo do Bonsai Framework.
Crie um macvlan permanente no host
Adicione ao final do
/etc/network/interfaces
arquivo 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
Reinicie o seu sistema para que a alteração tenha efeito. Você notará um mvlan0
agora ao visualizar seus dispositivos de rede com ifconfig -a
.
Conecte o Container ao macvlan
Host modificando o arquivo de configuração localizado em /var/lib/lxc/[container]/config
.
As entradas a serem adicionadas à 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 endereço MAC unicast administrado localmente exclusivo por meio de um site gratuito comohelion.org.
Por fim, ajuste o arquivo de interfaces dentro do container para vincular via estático ou se preferir use dinâmico.
No meu caso, ajusto meu roteador doméstico para que 192.168.0.1 a 192.168.0.20 não sejam atribuídos dinamicamente e usem estática em meu LXC.
Então, modifico meu arquivo de interfaces de contêineres da seguinte maneira,
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 Linux.