У меня проблема в том, что мой компьютер с Ubuntu использует неправильный DNS-сервер. По какой-то причине машина запрашивает localhost
информацию DNS.
Я добавил DNS-сервер в графическом интерфейсе сетевых настроек, но /etc/resolv.conf
все еще содержит 127.0.0.1
адрес DNS-сервера. Теперь я подумал, что могу просто отредактировать файл самостоятельно, но в нем прямо сказано, что я не должен редактировать файл вручную.
Теперь, поскольку графический интерфейс настройки сети не сгенерировал файл с правильными настройками, как я могу сгенерировать новый resolv.conf
файл самостоятельно?
dns
resolv.conf
Ahatius
источник
источник
Ответы:
То, что ни один из ответов, опубликованных до сих пор, не является адресом, - это то, что спрашивающий не понимает, что наличие
nameserver 127.0.0.1
в нем/etc/resolv.conf
правильно, предполагая, что работает локальный сервер имен. А в Ubuntu 12.04 Desktop по умолчанию работает локальный сервер имен, а именноdnsmasq
процесс, контролируемый NetworkManager, который прослушивает127.0.0.1
. В Ubuntu 12.10 адрес прослушивания был изменен на127.0.1.1
.Поэтому решение не состоит в том, чтобы вносить какие-либо изменения в
resolv.conf
. Это правильно, предполагая, что спрашивающий хочет использовать локальный сервер имен.Если служба имен не работает, то локальный сервер имен не получает правильные адреса пересылки, или существует другая проблема с сетью.
Спрашивающий пытался использовать «GUI сетевых настроек», чтобы «создать файл с правильными настройками», и это не сработало. Я не знаю точно, что это значит, но вот правильный способ ввести адреса серверов имен, чтобы они оказались в
resolv.conf
нужное время. Я предполагаю, что спрашивающий использует,NetworkManager
а неifup
для настройки интерфейсов.Чаще всего интерфейсы настраиваются с использованием протокола DHCP. В этом случае ничего не нужно настраивать в локальной системе. DHCP-сервер знает, какой адрес сервера имен должен использовать его клиент, и отправляет эту информацию DHCP-клиенту, который отправляет его в NetworkManager, который отправляет его в resolvconf, в который помещается информация
resolv.conf
. Так что в этом случае, возможно, необходимо настроить DHCP-сервер.Если сетевой интерфейс на локальном компьютере настроен статически, в NetworkManager необходимо ввести правильные адреса серверов имен, например, индикатор сети | Редактировать соединения ... | Беспроводной | myconnection | Редактировать ... | Настройки IPv4 | Дополнительные DNS-серверы.
Возможно, локальный сервер имен не работает должным образом. В этом случае спрашивающий должен редактировать
/etc/NetworkManager/NetworkManager.conf
и закомментируйте строку
в разделе [[main] ». Чтобы закомментировать строку, поставьте
#
в начале строки, затем сохраните файл. Затем перезапустите сетевой менеджер.После этого
resolv.conf
вместо адреса 127. * будут вводиться нелокальные адреса серверов имен .Если спрашивающий использует,
ifup
а не NetworkManager для настройки сетевых интерфейсов, то ответ jmartin2279 верен: вы должны добавить адреса сервера имен в / etc / network / interfaces так, как описано в jmartin2279.Вопреки тому , что советуют некоторые другие ответы, в общем , вы должны не добавлять
nameserver
,domain
илиsearch
варианты файлов/etc/resolvconf/resolv.conf.d/
. Смотрите мои комментарии к этим ответам.источник
dhclient
чтобы изменения (nameserver
строки) наконец пришлиetc/resolv.conf
. Я запускаю кастомную трансляцию Xubuntu 14.04 (возможно, в этом причина).127.0.0.1
несмотря на мой менеджер сети , имеющими другие namerservers + Dnsmasq быть закомментирован + перезагружается + Dnsmasq убит (как он все еще запускается) + сеть перезапущена: /Если вы используете ifup для статической настройки интерфейса, вы можете добавить его в файл / etc / network / interfaces.
Откройте терминал и введите:
Вы должны увидеть что-то вроде:
Изменить на:
используя вашу собственную информацию о сети. это позволит вам установить днс. Вы можете использовать несколько серверов DNS здесь:
После этого запустите
источник
ifdown: interface eth0 not configured
sudo /etc/init.d/networking restart
В Ubuntu 12.04 изменилась обработка resolv.conf.
Если вы хотите добавить свой собственный адрес (а) сервера имен, то отредактируйте файл /etc/resolvconf/resolv.conf.d/ head
и добавьте туда свой сервер имен (например, Google open dns)
nameserver 8.8.8.8
сохраните файл и затем запустите
Нет перезагрузки или что-то еще. Может быть, вам нужно будет перезагрузить Network-Manager
Выполнено.
Вы можете проверить это с помощью команды
nslookup www.google.com
Результат должен быть похож на
источник
Чтобы добавить больше записей
/etc/resolv.conf
, создайте/etc/resolvconf/resolv.conf.d/tail
файл и добавьте их туда.Но если
/etc/resolv.conf
содержит127.0.0.1
, то добавление записей/etc/resolvconf/resolv.conf.d/tail
не изменит ничего. Вы должны установить адреса вашего DNS-сервера статически в NetworkManager, который будет отправлять их на dnsmasq, который прослушивает127.0.0.1
.Конфигурация DNS для статического интерфейса должна иметь вид записей «
dns-nameservers
», «dns-search
» и «dns-domain
», добавляемых в соответствующий раздел iface в/etc/network/interfaces
Прочитайте это для получения дополнительной информации.
`Более того:
Вы можете установить графический инструмент под названием
gnome-network-admin
, который установит ваш DNS. Попытайся :источник