Как настроить гостевую систему LXC так, чтобы она получала адрес dhcp, чтобы я мог получить к нему доступ в своей сети?

Я столкнулся с этой проблемой раньше. Это может быть связано с сетевыми прокси. Вы можете проверить сетевые прокси!

1
задан 11 January 2013 в 05:50

2 ответа

Моя настройка на хостах Ubuntu 14.04.1 LTS (Trusty Tahr)

Добавить в /etc/network/interfaces на хосте

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

(перезагрузка после изменений)

И в конфигурационных файлах контейнера (/var/lib/lxc/containername/config) я устанавливаю lxc.network.link = br0

. При этом контейнер будет получать общедоступные IP-адреса с сервера dhcp точно так же, как и хост.

4
ответ дан 25 May 2018 в 03:08
  • 1
    @JonathanY. Br0 должен появиться после добавления его в / etc / network / interfaces, как указано в ответе. Возможно, вам потребуется перезагрузка. – Epeli 14 January 2015 в 12:58
  • 2
    Благодарю. То, что мне не хватало, было нужно добавить <username> veth br0 2 в /etc/lxc/lxc-usernet, чтобы использовать br0 в непривилегированных контейнерах. – Jonathan Y. 14 January 2015 в 20:09

Я использовал настройки Ubuntu LXC по умолчанию и настроил мой маршрутизатор для отправки всего трафика на 10.0.3.xxx на машину Ubuntu. На маршрутизаторе с поддержкой DD-WRT настройки выглядят примерно как снимок экрана ниже. Замените 192.168.1.137 IP-адресом машины, работающей на LXC. Другие маршрутизаторы должны иметь аналогичные параметры для настройки статического маршрута (например, это статические инструкции маршрутов для Linksys).

инструкции статического маршрута для Linksys

[d5 ] Это не связано, но я также использовал службу DNSMasq для указания имени хоста на IP-адрес контейнера LXC. Таким образом, я могу получить доступ к контейнеру в http://gitlab/ в любом месте сети. На мой взгляд, гораздо проще использовать имя хоста для доступа к контейнеру, чем помнить IP-адрес.

2
ответ дан 25 May 2018 в 03:08
  • 1
    Хороший подход - попробуйте. Пальцы вверх! Добавление статических маршрутов - и сам маршрутизатор может пинговать контейнеризованные машины! Но со многими маршрутизируемыми портами маршрутизаторов маршрутизатор не работает из-за: Error code: 4937 The IP address is not in the same subnet with LAN IP address. Please input another one. (маршрутизатор поддерживает подсеть 192.168.x.x, а LXD / LXC - в подсети 10.0.x.x) – stamster 12 June 2017 в 15:03
  • 2
    Да, вашему маршрутизатору необходимо будет принять маску подсети для моего решения. Мне нравится покупать маршрутизатор и добавлять прошивку после выхода на рынок , чтобы сделать сумасшедшие конфигурации возможными: -p – thirdender 13 June 2017 в 03:31
  • 3
    Я использую MikroTik как дома, так и в офисе, но это было для одной установки, где у них был простой маршрутизатор, поставляемый провайдером. Итак, ваша идея очень проста, но очень эффективна - принцип KISS :) Мне это нравится, и я буду использовать ее точно, поскольку я не могу понять, как эти контейнеры у них еще нет решения, чтобы разоблачить их во внешний мир. – stamster 13 June 2017 в 17:27

Другие вопросы по тегам:

Похожие вопросы: