
Я сижу в сети в Ubuntu 12.04. Все сайты работают, кроме одного http://developer.android.com/
. Не знаю почему.
В то же время этот же URL прекрасно открывается в Windows.
Итак, сайт работает, и проблема не связана с прокси-сервером.
Я чувствую себя совершенно беспомощным. Почему это происходит?
Firefox показывает ошибку
Сервер не найден
wget http://developer.android.com/
Resolving developer.android.com (developer.android.com)... failed: Name or service not known.
wget:unable to resolve host address 'developer.android.com'
ping developer.android.com
ping: unknown host developer.android.com
кот /etc/hosts
127.0.0.1 localhost
127.0.1.1 devsda
# The following lines are desirable for IPv6 capable hosta
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
кот /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.0.1
devsda@devsda:~$ хост developer.android.com
;; Truncated, retrying in TCP mode.
Host developer.android.com not found: 5(REFUSED)
devsda@devsda:~$ хост developer.android.com 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:
developer.android.com is an alias for www3.l.google.com.
www3.l.google.com has address 74.125.236.33
www3.l.google.com has address 74.125.236.37
www3.l.google.com has address 74.125.236.35
www3.l.google.com has address 74.125.236.39
www3.l.google.com has address 74.125.236.32
www3.l.google.com has address 74.125.236.46
www3.l.google.com has address 74.125.236.38
www3.l.google.com has address 74.125.236.40
www3.l.google.com has address 74.125.236.41
www3.l.google.com has address 74.125.236.36
www3.l.google.com has address 74.125.236.34
www3.l.google.com has IPv6 address 2404:6800:4007:800::1005
решение1
Как показывает вывод команды host
, это почти наверняка проблема DNS-сервера. Немного поразмыслив над тем, как это обычно настраивается в Ubuntu, кажется, что лучший способ изменить это — просто через Network Manager. Network Manager предлагает настройки DNS для каждого соединения, поэтому настройки DNS могут быть исправлены для соединения, вызывающего проблему, и не повлияют ни на что другое. Этоответ на Ask Ubuntuдает хорошее представление о том, как это сделать, включая скриншоты.
Перефразируя:
Щелкните правой кнопкой мыши по значку сети на рабочем столе и выберите
Edit Connections
. Или просто запуститеnm-connection-editor
из командной строки.Выберите вкладку с типом вашего подключения (проводное или беспроводное), затем имя вашего подключения и нажмите
Edit...
Перейдите на
IPV4 Settings
вкладку и введите8.8.8.8
в поле (или IP-адрес любого другого DNS-сервера по вашему выбору)DNS Servers
.Нажмите «Сохранить» и все готово!
Либо просто добавьте строку dns=8.8.8.8
в соответствующий файл (названный в честь вашего соединения) в /etc/NetworkManager/system-connections
. Строку следует добавить сразу после [ipv4]
строки .
Предостережения
Если у вас проводное соединение, возможно, в Network Manager еще нет конфигурации для этого. Если это так, просто нажмите Add
, выберите тип соединения и сделайте все остальное, как указано выше.
Также может быть, что есть настройка /etc/dhcp/dhclient.conf
для общесистемного DNS-сервера (кажется, сейчас это самое подходящее место для этого). Если файл содержит строку, которая начинается supersede domain-name-servers
и не закомментирована (она имеет #
в начале ), это может быть так. Если это так, вы, вероятно, можете просто удалить эту строку, затем отключиться/подключиться снова, и ваша проблема будет исправлена. Обратите внимание, что файл может быть под /etc/dhcp3
или /etc/dhcp4
вместо /etc/dhcp
.
решение2
Это похоже (по крайней мере на первый взгляд) на похожую проблему, с которой я столкнулся.
Содержание/etc/resolv.conf
nameserver 127.0.0.1
Мне сказали, что это означает, что на вашем компьютере локально запущена какая-то служба сервера имен.
Мой /etc/resolv.conf
указал на адрес моего маршрутизатора ISP. Я не уверен, какой сервер имен он использовал, но что бы это ни было, он был нестабильным. Поэтому я использовал пакет resolvconf
в Debian (следовательно, и в Ubuntu), чтобы добавить некоторые вещи в /etc/resolvconf
. Простое добавление текста вручную в /etc/resolv.conf
не работает, потому что он перезаписывается. Все, что я сделал, это добавил файл
/etc/resolvconf/resolv.conf.d/tail
с содержимым
nameserver 8.8.8.8
nameserver 8.8.4.4
И теперь эти строки автоматически добавляются в /etc/resolv.conf
. Так что это исправило проблему. Надеюсь, это поможет, и если это не по теме, я могу удалить этот ответ.