Дополнительно
Как добавить DNS-сервер через resolv.conf?
Является ли /etc/resolv.conf
бесполезным в Ubuntu 12.04 LTS (Precise Pangolin)?
Я вижу, что информация о DNS-сервере теперь хранится в NetworkManager. Инструмент командной строки nmcli
может перечислить это для вас.
Если я хочу добавить еще один DNS сервер, поможет ли добавление его в /etc/resolv.conf
с помощью пакета resolvconf
?
208
19
Если
/etc/resolv.conf
содержитnameserver 127.0.0.1
, то добавление записей в/etc/resolvconf/resolv.conf.d/tail
не принесет никакой пользы.Если вы используете NetworkManager, то вместо этого вам следует статически добавить адреса серверов имен через индикатор сети: Edit Connections... | Edit... | Настройки IPv4 | Дополнительные DNS-серверы.
Если вы действительно хотите добавить больше записей в
/etc/resolv.conf
, создайте/etc/resolvconf/resolv.conf.d/tail
и добавьте их туда.Как и в случае с каждым выпуском Ubuntu, рекомендуется прочитать Ubuntu Release Notes, доступные здесь:
Разделы "Рабочий стол" и "Общая инфраструктура" содержат ссылку на
Я нашел другой подход здесь, что предполагает добавление строки, как показано ниже в файле
/etc/dhcp-сервер/программа dhclient.конф
:Кроме того, я нашел третий подход здесь, что предполагает добавление строк в файле
/etc/сети/интерфейсов
:Обновление: вот официальные документы для третьего подхода.
Похоже, что вы говорите о пакете resolvconf.
Установите пакет resolvconf.
Запустите
В верхней части файла находится страшное предупреждение. Файл /etc/resolv.conf автогенерируется из содержимого этого файла; предупреждение здесь для того, чтобы оно попало в /etc/resolv.conf при генерации /etc/resolv.conf. В конце файла добавьте
Нажмите Ctrl x и ответьте "да" на сохранение файла. В завершение перегенерируйте /etc/resolv.conf, чтобы изменения были применены прямо сейчас:
Затем проверьте содержимое /etc/resolv.conf и убедитесь, что добавленная вами строка теперь там. Более того, она все еще будет там при следующей загрузке машины или перезапуске сетевой службы, в зависимости от того, что произойдет раньше.
Ниже я покажу вам лучший способ, который я нашел, так как я запускаю сервер Ubuntu Edition и использовать ifup, а не через NetworkManager.
На самом деле для меня они сделали это проще :) положить все это в файл интерфейсы в /etc/сети/. Те же конфигурации, которые вы написали бы к resolv.conf, который теперь может быть в одном файле конфигурации сетевой адаптер как показано в примере ниже:
Я надеюсь, что это помогает и облегчает, как и мне, теперь мы можем создавать статические IP-адреса и добавить в DNS-серверы и DNS-домена все в одном файле :)
Шахта работает сервер Ubuntu 12.04. Я сделал следующие изменения и перезагрузил сервер (обычно это можно сделать, только снижая сетевой интерфейс, то есть
ifdown eth0 В
илиifup eth0 в
).В файл/etc/resolvconf/файл resolv.конф.Д/База-я добавил следующие записи:
Я надеюсь, что выше помогает!
Вы можете использовать NetworkManager как заявил в откровенном'ы ответ, но если вы предпочитаете ручное редактирование файла
/etc/файл resolv.конф
, вы можете сделать это путем удаления его (он's фактически символическая ссылка), а затем создает новый текстовый файл с содержимым. Вresolvconf программа только записывает в файл
/работа/resolvconf/файл resolv.конф`.Примечание: Этот ответ был дан для довольно другой, предварительной версии вопроса, с фокусом только на предварительную установку желаемого сервера имен.
Это работает до версии 12.04:
Отредактируйте
/etc/dhcp3/dhclient.conf
и добавьте :prepend domain-name-servers 127.0.0.1;
.(На самом деле, эта строка уже присутствует; все, что вам нужно сделать, это убрать комментарий).
resolvconf
бесполезно. Я'м на Linux-сервер и мой IP-адрес является статическим и мой ДНС сервера являются статическими. Мне не нужныresolvconf
или настройка.Все просто-это моя политика при работе на сервере. Чем меньше сложность, тем легче он'll быть, чтобы управлять/исправлять, когда вещи ломаются.
Так я же способностей продувки resolvconf и вручную убедился, что в/etc/файл resolv.conf
и это'т [ссылки][5] и просто создали статический файл. Только в случае, если программа пытается изменить файл, я сделал
chattr +я(неизменяемые) в файле
/etc/файл resolv.conf` и в качестве меры предосторожности.Большинство из вышеперечисленных предполагает наличие девственной системы, но реальность часто такова, что вы занимались установкой различных клиентов DHCP, отключил сетевой менеджер в некоторые предыдущие версии Ubuntu, и т. д. Может быть, стоит знать следующее. Я've был с помощью dnsmasq, но демонтировать его. В настоящее время моя система имело следующее содержание файла
/etc/файл resolv.конф
(который является символической ссылкой на/работа/resolvconf/файл resolv.conf
и на моей системе):Это не'т имеет значения, как часто я бегу
судо resolvconf -U
или `судо команды dpkg-перенастроить resolvconf, она не'т обновить сервер имен на те, что я поставил в помощью. Информация resolvconf не использовать NetworkManager не присутствовал:Однако, получается так, что если есть несколько файлов в эту папку, этот файл не может использоваться вообще. Виновником был файл не удаляется при деинсталляции раздача:
Просто удалением этого файла (и работает
судо resolvconf -У
потом) решил мой DNS проблемы:Я надеюсь, что это помогает другим с помощью отладки (сложных взаимодействий между всеми этими различными сетевыми инструментами), а также. Если вы используете
resolvconf
убедитесь, что для запуска командыls /работа/resolvconf/интерфейсы
, чтобы увидеть, что'ы есть.Я просто удалил ссылку в
/etc/файл resolv.conf
и создал регулярную файл с серверов' адреса. Это работает, и я не'т вижу никаких причин, чтобы использовать эту довольно странную конструкцию, что разработчики Ubuntu создали.Вы можете изменить подключение на "авто для eth0" или что имя, которое вы используете для подключения в НМ. Вы можете сделать это, щелкнув правой кнопкой мыши на Нм и выбрав "и изменить соединения...и". На вкладке IPv4 вы можете выбрать и"автоматически (DHCP, только адрес) и" как и"способ" и нм позволит вам установить на сервер адрес(адреса) вручную даже адреса передаются через протокол DHCP.
Добавив свою лепту в и без того длинный список, здесь'ы еще один способ (проверено на 12.04):
Редактировать/выполнить/resolvconf/интерфейс/программа NetworkManager`, чтобы соответствовать вашим потребностям. Здесь'ы пример:
Затем, как указано на большинстве других примеров, сделать
судо resolvconf -у
. Теперь вы найдете ваш файл resolv.conf` и в таком виде:Я до сих пор не'т нравится, как он'ы, реализуемые в настоящее время (кажется, в Ubuntu нужен сервис для каждого фу это делает), и предпочел бы обычный
файл resolv.conf
и точно. Но этот подход представляется наилучшим компромиссом для меня до сих пор. Добавил, что "локальный-НС quot и; должно'т слишком больно.Как насчет:
До этого использовать сетевой менеджер изменить DNS адрес и способ изменения
Затем выполните команды выше и перезагрузка. Это не решение для меня.
Я исправил это, изменив порядок источников. Я переехала источник
ДНС
доуведомления
в/и т. д./файл nsswitch.конф
:Вы можете сохранить ваши настройки и по-прежнему использовать локальный сервер кэширования таким образом.
Это очень популярный вопрос, с набором стандартных ответов, которые, ИМО, довольно суховато. Я, например, всегда были проблемы после установки Ubuntu уважать ДНС я настроил в менеджере сетей, в частности настройки статический DNS-серверов с "автоматически (DHCP, только адрес), что" -- и сегодня я, наконец, разобралась, что на самом деле не так.
Проблема заключается во взаимодействии с resolvconf и NetworkManager. resolvconf этот файл называется
файл/etc/resolvconf/интерфейс-заказ
. По крайней мере с моей системы, через NetworkManager разве'т в этот файл вообще (за исключением того, что это'ы, охватываемых * Дикие карты в конце). Вот что происходит, программа dhclient'последний отчет s в resolvconf важнее всего, что она скажет.Таким образом, по крайней мере в моем случае ответ был добавить
на или вблизи верхней части интерфейса-того, файл/etc/resolvconf/`.
(Да, я знаю, что многие люди просто говорит: "удалить resolvconf", который выглядит как плохая идея сама по себе мне. Но более того, не менее коварный и xenial рассмотреть resolvconf важной частью системы [например, Убунту-минимальный зависит от него], так что это будет трудно, чтобы держать вашу систему в соответствии с обновленными государство без resolvconf.)
<удар>по запросу могу предоставить более подробно о том, как я это понял.</удара> (редактировать: видимо, я не'т сделать это, когда это было предложено, к сожалению. На данный момент я не'т помню гораздо более подробно, чем то, что я говорю далее:) В общем, я заменил resolvconf исполняемый с оболочкой оболочку вокруг него, который сбросил свои аргументы, ввода, вывода и вывода ошибок в файлах; и добавлен комплект -х для resolvconf's обновление скриптов.
(Редактировать я могу сказать, что то, что я имею в виду в первой части заключается в том, что я использовал команду sudo перенести фактическую resolvconf исполняемый файл, который может быть найден с помощью какой команды или командный тип. Затем создать сценарий оболочки, который в конечном итоге просто выполняет переехал resolvconf, но и выводит аргументы в какой-нибудь файл, и использует перенаправление консоли для отправки устройства stdin, stdout и stderr различные другие файлы. Я не'т вспомнить, куда "resolvconf's обновление скриптов и" и может'т в настоящее время легко проверить. Я думаю, что многие выродки Linux может выяснить, что я имею в виду; возможно, какой-то добрый самаритянин обеспечит еще более подробно в комментарии.)
Другой способ заключается в том, чтобы определить настройки DNS-серверов на:
Если вы Don'Т есть такой файл, просто создайте его:
Источник, см. Также этот.
Чтобы изменить DNS, следуйте инструкциям: https://developers.google.com/speed/public-dns/docs/using
Перейти к сети
Выберите подключение, для которого вы хотите настроить DNS.
Чтобы изменить настройки беспроводного подключения, перейдите на вкладку беспроводное, а затем выберите нужную беспроводную сеть.
Нажмите стрелку (справа), и в появившемся окне, выберите Параметры IPv4 или вкладке Настройки IPv6.
Если выбранный метод автоматически (DHCP), откройте выпадающее меню и выберите Автоматически (DHCP, только адрес) вместо. Если метод находится на что-то другое, не меняйте его.
В поле DNS-серверов, введите DNS IP-адресов, разделенных запятой
сервер 1.1.1.1 имен 1.0.0.1
суда apt-получить установку -г resolvconf
сервер 1.1.1.1 имен 1.0.0.1
перезагрузка