Назад | Перейти на главную страницу

Сделайте контейнеры LXC доступными из физической сети

Я пытался добиться следующего. Я хочу использовать LXC в качестве тонкого изоляционного слоя внутри наших физических машин, то есть на каждой машине будет работать только один контейнер.

Для этого контейнера я хочу назначить IP-адрес внутренней сети (к сожалению, статически у нас нет DHCP).

Рассмотрим пример:

  1. У меня хост-система с IP 192.168.1.2/24
  2. Я хочу, чтобы контейнер, который я запускаю в нем, использовал 192.168.1.3/24 и был доступен из сети.

Вот что я пытался сделать:

  1. В хост-системе создайте мост с eth0 с адресом 192.168.1.3/24, затем привяжите к нему контейнер в режиме veth. Внутренний IP-адрес контейнера, скажем, 10.0.0.2.
  2. Вместо моста выше создайте сеть macvlan.
  3. То же, что и 2, но создайте сеть macvlan в режиме моста.
  4. В контейнере создайте интерфейс macvlan, связанный с eth0 хоста, и назначьте ему 192.168.1.3/24.

Ничего из этого не работает.

Я предполагаю, что я также должен добавить несколько маршрутов или что-то в этом роде, но я даже не знаю, какой из вышеперечисленных способов правильный.