Ubuntu: Как правильно настроить DNS-серверы в / etc / network / interfaces для resolvconf?

Все примеры, которые я видел в конфигурациях ( /etc/network/interfaces ), показали, что вы настраиваете интерфейс, а затем под ним dns-* строки dns-* такие как:

 auto eth0 iface eth0 inet static ... dns-nameservers 127.0.0.2 dns-search example.com my.example.com 

Теперь я знаю, что протокол DNS не зависит от механизма транспорта. Поэтому не следует пытаться добавить IPv6-адрес в строку dns-nameservers .

Тем не менее, поскольку я также настраиваю интерфейс для IPv6 в любом случае, имеет смысл добавить строку dns-nameservers :

 iface eth0 inet6 static ... dns-nameservers ::2 dns-search example.com my.example.com 

… или сделал это? Потому что, когда resolvconf создает /etc/resolv.conf он просто игнорирует все DNS-серверы IPv6. Он также, кажется, игнорирует dns-search и dns-domain . Единственной строкой, которая, по-видимому, является dns-nameservers строка dns-nameservers из конфигурации IPv4 для eth0 .

Каков правильный метод настройки DNS-серверов?


Дальнейшие косвенные доказательства того, почему он должен быть частью каждой соответствующей строфы iface . Цитата из man 8 resolvconf :

Программа ifup(8) может использоваться для настройки сетевых интерфейсов в соответствии с настройками в /etc/network/interfaces(5) . Чтобы сделать ifup push resolvconf информацию в resolvconf когда он настраивает интерфейс, добавьте dns- строки в соответствующую iface в /etc/network/interfaces . Чтобы добавить адреса серверов имен, добавьте строку, начинающуюся с dns-nameservers .

5 Solutions collect form web for “Ubuntu: Как правильно настроить DNS-серверы в / etc / network / interfaces для resolvconf?”

Правильно поместить dns- * параметры в iface eth0 inet static строфу iface eth0 inet static или iface eth0 inet static строфу iface eth0 inet6 static . Параметры становятся активными, когда определение логического интерфейса, к которому они принадлежат, становится активным.

Я просто тестировал это на своей машине Ubuntu 15.04, которую я обычно настраиваю с помощью DHCP. Я отключил NetworkManager и отредактировал / etc / network / interfaces, чтобы он выглядел следующим образом:

 iface eth0 inet static address 192.168.178.22 netmask 255.255.255.0 dns-nameservers 8.8.8.8 dns-search foo iface eth0 inet6 static address fe80::390:f5ff:fef7:96b9/64 dns-nameservers ::2 dns-search bar 

Я тогда сделал

 $ sudo ifup eth0 

Результаты:

 $ ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:90:f5:f7:96:b9 inet addr:192.168.178.22 Bcast:192.168.178.255 Mask:255.255.255.0 inet6 addr: fe80::390:f5ff:fef7:96b9/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2114609 errors:0 dropped:1 overruns:0 frame:0 TX packets:1757693 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2033346950 (2.0 GB) TX bytes:1318685445 (1.3 GB) Interrupt:20 Memory:f7e00000-f7e20000 $ cat /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver ::2 nameserver 8.8.8.8 search bar foo 

Обратите внимание, что теперь адреса, dns-nameservers и dns-параметры поиска из обеих строф активны.

[Обновлено 30 мая 2015 года]

На моем RPi работает Ubuntu 16.04.2 LTS, мои выводы были следующими:

Примечание. Я удалил NetworkManager и просто оставил файл resolvconf для его работы. (Это фиксированный сервер, поэтому все не меняется по сети.)

ЕСЛИ у меня были строки dns-search и dns-nameserver только на одном интерфейсе (первичный, проводной), но не на другом (wlan0), а затем при перезагрузке, примерно в 95% случаев, когда файл /etc/resolv.conf пустой.

Например, когда мой файл интерфейсов выглядел следующим образом:

 # The primary network interface auto enxb827ebbfedcf iface enxb827ebbfedcf inet static address 192.168.1.16 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-search summer.co.uk summer.vpn dns-nameserver 192.168.1.16 dns-nameserver 192.168.1.1 # end stanza with clear line+ # The loopback network interface auto lo iface lo inet loopback auto wlan0 iface wlan0 inet static address 192.168.1.17 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf 

THEN после перезагрузки мой resolv.conf будет выглядеть так:

 # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN 

Однако при одной или двух перезагрузках я заметил, что у нее есть то, что я хотел, например

 # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 192.168.1.16 nameserver 192.168.1.1 search summer.co.uk summer.vpn 

Решение. Когда я дал BOTH интерфейсы (проводные и wlan0) линии dns-поиска и dns-nameserver, все это работало нормально при каждой перезагрузке (пока все равно)

т.е. для меня работает следующий файл интерфейсов:

 # The primary network interface auto enxb827ebbfedcf iface enxb827ebbfedcf inet static address 192.168.1.16 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-search summer.co.uk summer.vpn dns-nameserver 192.168.1.16 dns-nameserver 192.168.1.1 # end stanza with clear line+ # The loopback network interface auto lo iface lo inet loopback auto wlan0 iface wlan0 inet static address 192.168.1.17 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-search summer.co.uk summer.vpn dns-nameserver 192.168.1.16 dns-nameserver 192.168.1.1 wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf 

и дает мне следующий правильный resolv.conf после каждой перезагрузки (до сих пор)

 # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 192.168.1.16 nameserver 192.168.1.1 search summer.co.uk summer.vpn 

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

Вывод: если в интерфейсе (кроме lo0) отсутствует информация DNS-поиска и dns-nameserver, тогда resolvconf ничего не помещает в ваш файл resolv.conf. (Это как если бы ifup использовал wlan0-интерфейс второй и ifup протерлся resolv.conf или такой, как.)

Я не уверен, что это ошибка или нет, но мне все равно.

Редактирование сетевых интерфейсов для добавления использования вашего настраиваемого DNS – это способ … но для постоянной модификации системного resolv.conf с вашим пользовательским сервером dnsnameserver вам необходимо установить пакет resolvconf (если он еще не установлен по умолчанию) и заполнить его базу файл конфигурации с вашими значениями DNS-серверов DNS. Надеемся, что это краткое руководство поможет вам в дальнейших конфигурациях относительно записей DNS resolv.conf http://www.bytelinux.com/make-permanent-changes-to-resolv-conf-file-on-ubuntu/

Вы хотите использовать DNS-серверы IPv6 на /etc/network/interfaces … просто введите записи DNS-имен IPv6 на конкретный сетевой интерфейс следующим образом:

 dns-nameservers 2001:4860:4860::8844 2001:4860:4860::8888. 

Для постоянного добавления DNS-пользователей IPv6 в resolv.conf используйте ту же самую ссылку, которую я добавил ниже, и отредактируйте основной файл resolvconf, заполнив ваши собственные DNS-имена IPv6:

 nameserver 2001:4860:4860::8844 nameserver 2001:4860:4860::8888 

Чтобы настроить / etc / network / interfaces с IPv6, используйте это руководство http://www.bytelinux.com/configure-permanent-static-ip-address-alias-interfaces-debian-based-systems/ и замените IPv4 на IPv6 как это следует: auto eth0

 iface eth0 inet6 static address 2800:210:0:1::3 netmask 64 gateway 2800:210:0:1::1 dns-nameservers 2001:4860:4860::8844 

Почему вы не внедряете эти DNS-серверы IPv6 DNS непосредственно в файл общесистемного файла /etc/resolv.conf, редактируя базовый файл resolvconf, как это было предложено в моем предыдущем ответе ссылкой, и продолжаете использовать файл сетевых интерфейсов? Вы можете добавить набор DNS-серверов DNS IPv6 в /etc/resolv.conf, и если вы хотите использовать другие серверы имен IPv6 для конкретной сетевой платы, используйте их только в / etc / network / interfaces.

  • Ошибка при обновлении apt-get: недопустимы следующие подписи:
  • Программное обеспечение (SciTe) работает по-разному при открытии с терминала Vs GUI
  • Ошибка загрузки Slackware после новой установки
  • Карта Вставить ключ в конец / Главная
  • Crontab самовосстанавливается
  • Добавление репозитория в apt-mirror
  • SSD клон не загружается и не монтируется правильно
  • Клиенты SFTP загружают файлы со слишком строгими правами
  • Почему logrotate генерирует пустые файлы журнала при использовании двух подстановочных знаков в пути журнала?
  • проблема с печатью: одна страница на ПК печатает на нескольких страницах
  • Что не требует дефрагментации? Linux или ext2 ext3 FS?
  • Linux и Unix - лучшая ОС в мире.