Como configuro um convidado do LXC para que ele obtenha um endereço dhcp para que eu possa acessá-lo na minha rede?

14

Eu configurei o LXC usando:

lxc-create -t ubuntu -n lxcguest1

Mas não consigo acessar nenhum serviço executado na minha LAN, parece ser NAT. Como faço para configurá-lo para que eu possa acessá-lo (provavelmente precisa obter o endereço DHCP do meu roteador Linksys)?

Obrigado.

    
por Benjamin Bryan 22.12.2012 / 09:14

3 respostas

5

Eu acabei de lidar com esse problema. Basicamente, você precisa configurar uma ponte e vincular sua placa de rede e seu contêiner a ela. Aqui está o artigo que eu segui:

link

Parece que, como eu, você precisa da solução 'bridge' em vez da solução NAT. Eu também desliguei a configuração padrão da ponte LXC (que é NAT). Para fazer isso, basta editar o arquivo: /etc/default/lxc e alterar USE_LXC_BRIDGE="TRUE" para USE_LXC_BRIDGE="FALSE" e reinicializar.

    
por user108168 01.02.2013 / 02:28
4

Minha configuração em hosts LTS (Trusty Tahr) do Ubuntu 14.04.1

Adicione a /etc/network/interfaces no host

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
    address 0.0.0.0

auto br0
iface br0 inet dhcp
    bridge_ports eth0

(reinicialize após as alterações)

E nos arquivos de configuração do contêiner ( /var/lib/lxc/containername/config ), defino lxc.network.link = br0

Com isso, o contêiner obterá endereços IP públicos do servidor dhcp, assim como o host.

    
por Epeli 13.11.2014 / 16:14
2

Eu usei as configurações padrão do Ubuntu LXC e configurei meu roteador para enviar todo o tráfego em 10.0.3.xxx para a máquina Ubuntu. Em um roteador habilitado para DD-WRT, as configurações parecem com a imagem abaixo. Substitua 192.168.1.137 pelo IP da máquina que está executando o LXC. Outros roteadores devem ter opções semelhantes para configurar uma rota estática (aqui estão as instruções de rota estática para a Linksys , por exemplo).

Isso não está relacionado, mas eu também usei o serviço DNSMasq para apontar um nome de host para o endereço IP do contêiner LXC. Dessa forma, posso acessar o contêiner em http://gitlab/ em qualquer lugar da rede. Na minha opinião, é muito mais fácil usar um nome de host para acessar um contêiner do que lembrar o endereço IP.

    
por thirdender 25.11.2015 / 05:47