Чрезвычайно медленный поиск DNS


11

Ubuntu 12.10

Я объясню первую проблему. Иногда, когда я загружаю веб-страницу, она никогда не завершает загрузку и говорит, что не может связаться с сервером или чем-то в этом роде. Когда я пингую этот веб-сайт, терминал говорит, что не может разрешить имя хоста. Тогда я попробовал DNS-серверы Google, но мне не повезло. Это странно, потому что у меня никогда не было этой проблемы в Windows 7. Я использовал

    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 127.0.1.1
    search hsd1.or.comcast.net

Зачем использовать 127.0.1.1? Значит ли это, что он пытается разрешить адреса локально? Когда я пингую сервер поиска comcast, я получаю ошибку тайм-аута.


Похоже, что поиск DNS работает, если я заменю 127.0.1.1 на 8.8.8.8, который является DNS-сервером Google. Но это перезаписывается при каждой загрузке.
Кеннет Кларк

Пожалуйста, разделите половину этого (возможно, проблемы с видео AMD) на отдельный вопрос, чтобы он мог получить свои собственные ответы.
ImaginaryRobots

Ладно. Я разделил два. Теперь, если только я могу получить решение: /
Кеннет Кларк

Я уже установил свой DNS-сервер на 8.8.8.8, поэтому я изменил его на 8.8.4.4, и он начал работать, поэтому у Google иногда тоже возникают некоторые проблемы. Думал, что стоит упомянуть.
Эдуард Лука

Ответы:


29

/etc/resolv.conf (который на самом деле является символической ссылкой на /run/resolvconf/resolv.conf) записывается утилитой resolvconf на основе информации, поступающей из различных возможных источников.

127.0.1.1 - это IP-адрес обратной связи, который прослушивает контролируемый NetworkManager экземпляр dnsmasq. Dnsmasq работает локально и принимает DNS-запросы на 127.0.1.1 и перенаправляет эти запросы на внешний сервер имен, адрес которого предоставляется NetworkManager. Эта схема не всегда работает хорошо, и если у вас есть какие-либо проблемы с ней (как у вас), то рекомендуется отключить dnsmasq под управлением NetworkManager. Чтобы отключить его, отредактируйте/etc/NetworkManager/NetworkManager.conf

sudo gedit /etc/NetworkManager/NetworkManager.conf

и закомментируйте строку

dns=dnsmasq

так что это выглядит следующим образом.

#dns=dnsmasq

Затем перезапустите сетевой менеджер. Используемая вами команда зависит от вашей версии Ubuntu:

sudo service network-manager restart # For newer systems using Systemd
sudo restart network-manager         # For older systems using Upstart

После этого у вас должна быть nameserverстрока в resolv.conf с IP-адресом без обратной связи. Если это не так, попробуйте следующую команду.

sudo dpkg-reconfigure resolvconf

Если у вас все еще нет nameserverстроки в resolv.conf с IP-адресом без обратной связи или если у вас все еще нет службы DNS, попробуйте перезагрузиться.

Если у вас все еще нет хорошей службы DNS, тогда начните исследовать сервер имен по внешнему IP-адресу (1.2.3.4 в примере ниже). Правильно ли разрешаются доменные имена при использовании утилит hostили dig?

host www.ford.com 1.2.3.4

dig @1.2.3.4 www.gm.com

Работают ли серверы имен Google?

host www.ford.com 8.8.8.8

dig @8.8.4.4 www.gm.com

Если вы обнаружите, что ваш внешний сервер имен не работает должным образом, вам следует настроить свое соединение на использование хорошо управляемого сервера имен, такого как Google. Для этого щелкните правой кнопкой мыши по индикатору сети и перейдите в «Редактировать соединения | | Редактировать ... | Настройки IPv4. Предполагая, что текущий метод имеет значение Automatic (DHCP), установите для метода значение «Метод» Automatic (DHCP) addresses onlyи заполните правильные адреса серверов имен в поле с названием Additional DNS servers.


1
Почему dnsmasq участвует? Эта проблема кусает меня каждый раз, когда я устанавливаю Ubuntu.
Джозеф Гарвин

Для меня это была проблема с Google DNS 8.8.8.8, который был временно недоступен. Который был настроен вручную в моей конфигурации шлюза в качестве основного DNS. Доступность DNS была проверена выполнением ping 8.8.8.8. Чтобы устранить эту проблему, я изменяю свой основной IP-адрес DNS на один из IP-адресов OpenDNS 208.67.222.222.
Джмарсели

1

Возможно, вы захотите щелкнуть правой кнопкой мыши апплет менеджера сети, отредактировать соединения и добавить еще один DNS. Это должно «придерживаться»


Когда я редактирую его в сетевом менеджере, он ничего не делает. Это действительно странно ...
Кеннет Кларк
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.