DNS иногда работает, но очень медленно.

9

У меня проблемы с DNS после обновления до Ubuntu 12.04 (Precise Pangolin) с Ubuntu 10.04 (Lucid Lynx) вчера.

DNS иногда работает, но очень медленно.

Я прочитал запись блога DNS в Ubuntu 12.04 .

  • «Мне действительно не нужен локальный преобразователь, как я могу его отключить? Чтобы отключить dnsmasq в Network Manager, вам нужно отредактировать /etc/NetworkManager/NetworkManager.conf и прокомментировать строку« dns = dnsmasq »(поставьте # перед ним) затем выполните «sudo restart network-manager». "

У меня нет этой строки, чтобы комментировать. Проверка в Synaptic Package Manager показывает, что dnsmasq не установлен (dnsmasq-base есть).

Редактирование и создание соединений с использованием графического интерфейса пользователя NetworkManager (и указание DNS-серверов) не помогает; Ubuntu не уважает DNS-серверы с пользовательским интерфейсом. Должны ли эти инструменты GUI не работать?

  • «Я использую конфигурацию статического IP-адреса, куда я должен поместить свою конфигурацию DNS? Конфигурация DNS для статического интерфейса должна идти как записи« dns-nameservers »,« dns-> search »и« dns-domain », добавленные в интерфейс в / etc / network / interfaces "

Есть ли примеры этого доступны? Мой /etc/network/interfacesочень редкий.

На данный момент я отредактировал /etc/resolv.confзамену сервера имен 127.0.0.1на DNS-сервер (мой широкополосный маршрутизатор), но я не знаю, как долго будет длиться это исправление, пока файл не будет перезаписан этой новой системой (dnsmasq?).

Jazzist
источник

Ответы:

3

network-managerпредназначен для управления сетевыми требованиями всей вашей рабочей станции в 12.04 вместе с resolvconfи dnsmasq-base.

dnsmasq-base это просто исполняемый файл dnsmasq, который сетевой менеджер запускает с использованием отдельной конфигурации и без стартовых скриптов.

resolvconf Переписывает /etc/resolv.conf всякий раз, когда один из интегрированных пакетов 12.04 сообщает ему через сценарии, что что-то изменилось.

Не похоже, что он правильно установлен, если у вас нет этой dns=dnsmasqстроки в вашей конфигурации. Это также может объяснить медлительность.

Вы можете попробовать dpkg-reconfigureна Network-Manager и на resolvconf

В качестве альтернативы, если вы используете такие программы, как VPN, которые не интегрированы с менеджером сети или другими несовместимыми программами, вы можете полностью деинсталлировать network-manager и resolvconf и положиться на isc-dhcp-clientнастройку сети и DNS, или pppdесли вы используя модем.

dnsmasqПод управлением network-manager предназначен для ускорения поиска DNS с помощью кэширования, но если вы деинсталлируете network-manager, вы также избавитесь от dnsmasq - по крайней мере, он не будет работать сам по себе. Вам нужен обычный dnsmasqпакет, чтобы он запускался и работал во время загрузки.

Вы не говорите, нужен ли вам DHCP или у вас есть статические IP-адреса.

Адам
источник
1

Удалить /etc/resolv.confи сделать символическую ссылку следующим образом:

/etc/resolv.conf -> /var/run/resolvconf/interface/NetworkManager

То есть выполните:

ln -s /var/run/resolvconf/interface/NetworkManager /etc/resolv.conf

Локальный DNS в Ubuntu всегда плохая идея (разрешение доменов после 10-15 запросов).

fsdf
источник
1

Ответ Адама дает правильную справочную информацию.

Если вы отредактировали или удалили /etc/resolv.conf, прежде чем продолжить, убедитесь, что это символическая ссылка на «../run/resolvconf/resolv.conf». Если вам нужно восстановить эту символическую ссылку, перезагрузите компьютер, прежде чем продолжить.

Если у вас есть какие-либо проблемы с DNS, и вы не знаете, в чем причина, то лучше убедиться, что /etc/NetworkManager/NetworkManager.conf не содержит строку «dns = dnsmasq». Прокомментируйте строку. Это исключает dnsmasq как возможную причину проблемы.

Вопрос был "Почему мой DNS медленный?" Если DNS работает вообще, то конфигурация должна быть по существу правильной.

Длительные задержки могут возникнуть, если в /etc/resolv.conf указано несколько серверов имен, а первый из перечисленных серверов имен не отвечает. Glibc resolver (3) пробует первый из перечисленных серверов имен и ждет пять секунд, прежде чем пробовать следующий из перечисленных серверов имен.

Второй вопрос касался использования «DNS-серверов имен». Примеры использования «dns-nameservers» и т. Д. Можно найти в resolvconf (8). Запустите "man 8 resolvconf" в окне терминала, чтобы прочитать эту страницу руководства.

jdthood
источник