web-dev-qa-db-fra.com

Comment configurer un invité LXC pour qu'il reçoive une adresse DHCP afin de pouvoir y accéder sur mon réseau?

J'ai installé LXC en utilisant:

lxc-create -t ubuntu -n lxcguest1

Mais je ne peux accéder aux services qui y sont exécutés à partir de mon réseau local, il semble être en NAT. Comment puis-je le configurer pour pouvoir y accéder (il faut probablement qu'il obtienne l'adresse DHCP de mon routeur Linksys)?

Merci.

15
Benjamin Bryan

Je viens de traiter ce problème moi-même. Fondamentalement, vous devez configurer un pont et y lier votre carte réseau et votre conteneur. Voici l'article que j'ai suivi:

http://bj0z.wordpress.com/2011/08/19/howto-build-a-base-lxc-container-in-ubuntu-11-04/

On dirait que, comme moi, vous avez besoin de la solution "pont" plutôt que de la solution NAT. J'ai également désactivé la configuration de pont LXC par défaut (qui est NAT'ed). Pour ce faire, éditez simplement le fichier: /etc/default/lxc et remplacez USE_LXC_BRIDGE="TRUE" par USE_LXC_BRIDGE="FALSE" et redémarrez.

5
user108168

Ma configuration sur les hôtes Ubuntu 14.04.1 LTS (Trusty Tahr)

Ajouter à /etc/network/interfaces sur l'hôte

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

(redémarrer après les modifications)

Et sur les fichiers de configuration du conteneur (/var/lib/lxc/containername/config) je mets lxc.network.link = br0

Avec cela, le conteneur obtiendra des adresses IP publiques du serveur DHCP, tout comme l’hôte.

5
Epeli

J'ai utilisé les paramètres par défaut Ubuntu LXC et configuré mon routeur pour envoyer tout le trafic sur 10.0.3.xxx à la machine Ubuntu. Sur un routeur compatible DD-WRT, les paramètres ressemblent à la capture d'écran ci-dessous. Remplacez 192.168.1.137 par l'adresse IP de la machine exécutant LXC. Les autres routeurs doivent avoir des options similaires pour configurer une route statique (voici instructions de route statique pour Linksys , par exemple).

DD-WRT settings for static routing to LXC

Cela n'a aucun rapport, mais j'ai également utilisé le service DNSMasq pour faire pointer un nom d'hôte vers l'adresse IP du conteneur LXC. De cette façon, je peux accéder au conteneur à http://gitlab/ n'importe où sur le réseau. À mon avis, il est beaucoup plus facile d'utiliser un nom d'hôte pour accéder à un conteneur que de se souvenir de l'adresse IP.

DD-WRT DNSMasq settings

2
thirdender