netplan: серверы имен в netplan yaml. Какой эффект?

Как влияет поле nameservers / address в файле конфигурации yaml?

Любое приложение, которое я пробовал, использует серверы имен /etc/resolv.conf. Это происходит даже при остановленном resolvconf.

Это использует systemd в качестве резольвера. Нет ошибок при генерации или применении.

РАЗРЕШЕНИЕ

Спасибо всем, кто откликнулся. Конфигурация netplan yaml настраивает серверы имен после того, как я это сделаю:

  1. Purge resolvconf;
  2. Поместить DNS моей локальной сети в качестве сервера пересылки в /etc/bind/named.conf.options;
  3. Замените ссылку /etc/resolv.conf статическим файлом как

    поисковый сервер имен 127.0.0.53

И это работает. Я нахожу, что должен включить поиск в resolv.conf, даже если у меня есть поле поиска в моей конфигурации netplan yaml. Головоломка на другой день.

3
задан 19 May 2018 в 13:08

2 ответа

Примечание: Это может копировать информацию от chili555, однако в обсуждении с ними, вышеупомянутый человек предложил отправить 'авторитетный' ответ, поскольку я работал с этой точной проблемой/вопросом прежде.

Поведение, засвидетельствованное в Вашей среде, systemd-resolved эквивалентный какой dnsmasq на пред18.04 делал. netplan обновления влияют на серверы имен это systemd-resolved используйте для его поисков. Это детализировано в последнем разделе ответа.

Но сначала, для любопытного, некоторой истории об этом поведении, и как это отличается от 'более старых' версий Ubuntu, которые используют Администратора сети и dnsmasq. (Не стесняйтесь пропускать мимо следующего раздела этого ответа, если Вы только хотите 18.04-связанный материал),


Прежде 18.04: dnsmasq как локальный сопоставитель кэширования

До 18,04, каждый раз, когда Вы использовали Ubuntu GUI, она установит dnsmasq вместе с Администратором сети. Интеграция Администратора сети с dnsmasq обновил бы dnsmasq список 'следующего транзитного участка' серверы (восходящие серверы DNS) для того, куда отправить запрос.

Поэтому запрос DNS для google.com передал бы из любого приложения, запрашивает разрешение, в dnsmasq, и если dnsmasq не знает IP-адреса или имел кэшируемую запись, истекают, затем передал бы запрос DNS любому восходящему серверу DNS (для этого примера, 8.8.8.8 или 8.8.4.4). Необходимо было бы затем проверить Администратора сети или dnsmasq конфигурация для наблюдения, где 'восходящие' серверы DNS были.

Это - типичное поведение в графической Ubuntu, установленной от Настольного ISOs.

Установка по умолчанию с Сервера ISOs, с другой стороны, следовала за традиционным "обновлением /etc/resolv.conf"метод через resolvconf пакет и используемый /etc/resolv.conf непосредственно вместо того, чтобы связаться через dnsmasq.


18.04: netplan, и systemd-resolved

С 18,04, система DNS по умолчанию systemd-resolved. Это работает как dnsmasq из старых делает, кроме него делает это и для Рабочего стола и для Сервера установки ISO в настоящее время. Это также может интегрироваться с Администратором сети (используемый в средах GUI для руководящего Wi-Fi и такого), и с Netplan (который лучшие дескрипторы сети Ethernet)

systemd-resolved от вручают netplan (серверы или пользовательские рабочие столы) или Администратор сети (Рисунки рабочего стола по умолчанию) список серверов DNS для отправки запросов в (ли статически настроенный или настроенный через DHCP). Поэтому с помощью того же примера сверху, запроса DNS google.com прошел бы systemd-resolvedтупиковый сопоставитель, который или возвратил бы кэшируемое справочное значение или передал бы его на восходящие серверы DNS.

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

С NetPlan или Администратором сети, можно передать список восходящих серверов DNS systemd-resolved со следующей командой:

systemd-resolve --status

который даст Вам набор вывода. Соответствующий раздел был бы похож на это (взятый от chili555ответ для целесообразности):

DNS Servers: 8.8.8.8
             8.8.4.4
             2600:1700:5aa0:830::1
4
ответ дан 1 December 2019 в 15:21

Отказ от ответственности: Это - хорошо образованное предположение и не канонический, зарегистрированный ответ.

Любое приложение, которое я попробовал, использует/etc/resolv.conf серверы имен.

В моих 18,04 системах, непрокомментированном, то есть, на самом деле операционный, говорит раздел/etc/resolv.conf:

nameserver 127.0.0.53

Таким образом, я верю, признак использования dnsmasq, система та информация DNS кэшей. Это означает, я верю, посмотрите в локальном кэше сначала, прежде, чем спросить внешние серверы имен.

Но локальный кэш не будет содержать информации о сервере имен о веб-сайте, который никогда не посещался прежде. В этом случае система использует объявленные внешние серверы имен DNS. Они могут быть объявлены в/etc/network/interfaces в более старых системах; в/etc/netplan / *.yaml в более новых системах или, почти во всех настольных установках, в Администраторе сети.

На самом деле/etc/resolv.conf говорит нам, как внешние серверы имен могут быть найдены.

Выполненная "systemd-твердость - состояние" для наблюдения деталей о восходящих использующихся в настоящее время серверах DNS.

В моей системе в сообщении говорится, частично:

DNS Servers: 8.8.8.8
             8.8.4.4
             2600:1700:5aa0:830::1

Короче говоря, я полагаю, что серверы имен DNS, как объявляют, в netplan говорят систему, где посмотреть, если информация DNS не найдена в локальном кэше.

2
ответ дан 1 December 2019 в 15:21

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

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