J'ai configuré LXC en utilisant:
lxc-create -t ubuntu -n lxcguest1
Mais je ne peux pas accéder aux services qui y sont exécutés depuis mon LAN, il semble être NAT. Comment le configurer pour pouvoir y accéder (il doit probablement obtenir son adresse DHCP depuis mon routeur Linksys)?
Merci.
networking
lxc
Benjamin Bryan
la source
la source
Réponses:
Je viens de régler 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 «bridge» plutôt que de la solution NAT. J'ai également désactivé la configuration par défaut du pont LXC (qui est NAT). Pour ce faire, modifiez simplement le fichier:
/etc/default/lxc
et passezUSE_LXC_BRIDGE="TRUE"
àUSE_LXC_BRIDGE="FALSE"
et redémarrez.la source
Ma configuration sur les hôtes Ubuntu 14.04.1 LTS (Trusty Tahr)
Ajouter à
/etc/network/interfaces
l'hôte(redémarrage après modifications)
Et sur les fichiers de configuration du conteneur (
/var/lib/lxc/containername/config
), je metslxc.network.link = br0
Avec cela, le conteneur obtiendra les adresses IP publiques du serveur DHCP comme l'hôte.
la source
<username> veth br0 2
à/etc/lxc/lxc-usernet
afin d'utiliserbr0
des conteneurs non privilégiés.J'ai utilisé les paramètres par défaut d'Ubuntu LXC et configuré mon routeur pour envoyer tout le trafic sur 10.0.3.xxx vers 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'IP de la machine exécutant LXC. D'autres routeurs devraient avoir des options similaires pour configurer une route statique (voici les instructions de route statique pour Linksys , par exemple).Ceci n'est pas lié, mais j'ai également utilisé le service DNSMasq pour 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.la source
Error code: 4937 The IP address is not in the same subnet with LAN IP address. Please input another one.
(le routeur contient le sous-réseau 192.168.xx, tandis que LXD / LXC sont sur le sous-réseau 10.0.xx)