В Ubuntu 16.04 server edition после запуска контейнера LXC на него можно ссылаться только по его IP-адресу. Включение домена .lxc в dnsmasq, похоже, не помогает, а доступные учебные пособия работают только для Ubuntu 14.04.

Невозможность использовать DNS-имена на хосте является серьезным неудобством.

Из сообщений в блоге я собираю, что LXD 2.9 решает некоторые проблемы с DNS, но кажется неясным, как установить через PPA.

Действия по воспроизведению

Следующие инструкции https://gauvain.pocentek.net/name-resolution-lxc-containers.html

  • установлен dnsmasq
  • LXC_DOMAIN="lxc" в /etc/default/lxc-net
  • добавлен server=/lxc/10.0.3.1 в /etc/dnsmasq.d/lxc
  • проверил, что /etc/resolv.conf содержит DNS-сервер 10.0.3.1

С помощью sudo lsof -i :53 я проверил, что lxd , dnsmasq и lxc-dnsmasq связаны с портом 53.

Однако, dig mycontainer.lxc не дает результатов. - Запрос dig @10.0.3.1 mycontainer.lxc не дает результатов. - Запрос dig @10.0.3.1 google.com дает правильные результаты.

1 ответ1

0

Вы пробовали использовать полный пример конфигурации, указанный в связанном источнике? Обратите внимание, что просто раскомментировать LXC_DOMAIN="lxc" не получится.

Кроме того, правила, используемые lxc dnsmasq, должны быть определены в его файле конфигурации DHCP, который обычно определяется в файле конфигурации /etc/default/lxc-net как: LXC_DHCP_CONFILE=/etc/lxc/dnsmasq.conf . Это означает, что добавление server=/lxc/10.0.3.1 в /etc/dnsmasq.d/lxc не будет иметь никакого значения, если этот файл не является сконфигурированным LXC_DHCP_CONFILE.

Смотрите также: https://askubuntu.com/questions/446831/how-to-let-built-in-dhcp-assign-a-static-ip-to-lxc-container-based-on-name-not#571095

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .