Eu tenho um laptop com o Ubuntu 14 Desktop. O laptop possui conexão WLAN à minha LAN e é gerenciado pelo gerenciador de rede . Da causa, o laptop também é um nic (eth0), mas não está conectado. Eu uso este laptop como um host LXC. Eu tenho vários contêineres servindo aplicativos. Com a configuração básica do LXC (configurações padrão, como o uso do dnsmasq, rede em ponte).
A saída ifconfig
está mostrando 4 interfaces: eth0
, lo
, wlan
e lxcbr0
. Até o momento, ainda não há nenhuma configuração especial do iptables. É um novo sistema instalado
Agora, configurando o NAT no meu host LXC ...
iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 21404 -j DNAT --to 10.0.3.180:3142
... Consigo acessar serviços em meus contêineres, ao acessar de outra máquina na minha LAN, por exemplo:
foo@LANMachine2: wget -O - http://lxc-host:21404 #it works
Dica: lxc-host
é um nome DNS para o laptop gerenciado pelo meu roteador.
Agora, o que eu quero fazer é permanecer na minha máquina e acessar o serviço de um contêiner a partir do próprio host LXC e de outros contêineres hospedados usando o mesmo nome DNS, assim:
bar@lxc-host: wget -O - http://lxc-host:21404
#or
bar@lxc-container: wget -O - http://lxc-host:21404
#both not working and leading to output:
Connecting to lxc-host (lxc-host)|The.IP.shown.here|:21404... failed: Connection refused.
Como fazer isso funcionar? É possível de alguma forma? A maioria das importações para mim seria capaz de conectar-me de outros contêineres aos serviços de outros contêineres, roteando através do host LXC. (Isso me permitiria padronizar a configuração dos meus contêineres)