Konfiguruję LXC za pomocą:
lxc-create -t ubuntu -n lxcguest1
Ale nie mogę uzyskać dostępu do żadnych usług działających na nim z mojej sieci LAN, wygląda na to, że ma NAT. Jak skonfigurować, aby móc uzyskać do niego dostęp (prawdopodobnie potrzebuje adresu dhcp z routera Linksys)?
Dzięki.
networking
lxc
Benjamin Bryan
źródło
źródło
Odpowiedzi:
Właśnie poradziłem sobie z tym problemem. Zasadniczo musisz skonfigurować most i powiązać z nim kartę sieciową i pojemnik. Oto artykuł, który śledziłem:
http://bj0z.wordpress.com/2011/08/19/howto-build-a-base-lxc-container-in-ubuntu-11-04/
Wygląda na to, że tak jak ja, potrzebujesz rozwiązania „pomostowego”, a nie NAT. Wyłączyłem również domyślną konfigurację mostka LXC (która jest NAT'owana). Aby to zrobić, po prostu edytuj plik:
/etc/default/lxc
i zmieńUSE_LXC_BRIDGE="TRUE"
naUSE_LXC_BRIDGE="FALSE"
i uruchom ponownie.źródło
Moja konfiguracja na hostach Ubuntu 14.04.1 LTS (Trusty Tahr)
Dodaj do
/etc/network/interfaces
na hoście(uruchom ponownie po zmianach)
A na plikach konfiguracyjnych kontenera (
/var/lib/lxc/containername/config
) ustawiłemlxc.network.link = br0
Dzięki temu kontener otrzyma publiczne adresy IP z serwera dhcp, podobnie jak host.
źródło
<username> veth br0 2
do/etc/lxc/lxc-usernet
w celu korzystaniabr0
z nieuprzywilejowanych pojemników.Użyłem domyślnych ustawień Ubuntu LXC i skonfigurowałem router, aby wysyłał cały ruch z 10.0.3.xxx na maszynę Ubuntu. Na routerze obsługującym DD-WRT ustawienia wyglądają jak na poniższym zrzucie ekranu. Zamień
192.168.1.137
na IP maszyny z uruchomionym LXC. Inne routery powinny mieć podobne opcje do ustawiania trasy statycznej (tutaj są na przykład instrukcje dotyczące trasy statycznej dla Linksys ).Nie ma to żadnego związku, ale użyłem również usługi DNSMasq, aby wskazać nazwę hosta na adres IP kontenera LXC. W ten sposób mogę uzyskać dostęp do kontenera w
http://gitlab/
dowolnym miejscu w sieci. Moim zdaniem o wiele łatwiej jest użyć nazwy hosta, aby uzyskać dostęp do kontenera, niż zapamiętać adres IP.źródło
Error code: 4937 The IP address is not in the same subnet with LAN IP address. Please input another one.
(router posiada podsieć 192.168.xx, podczas gdy LXD / LXC są w podsieci 10.0.xx)