Я работаю на сервере Ubuntu 16.04.2 и apt-get update
возвращает временную ошибку, решающую «все в списке».
- Когда я пингую www.google.com, он отвечает неизвестным хостом.
- Когда я пинг с 8.8.8.8, я получаю пакеты, отправленные без ошибок и т. Д.
Я перепробовал все "исправления", которые я могу найти на форумах Ubuntu и во всем остальном мире интернета, и ничего не работает. resolv.conf
Пуст, Ifconfig показывает НСА функционирует, брандмауэр выключен, и я выбросил молоток на всякий случай. К сожалению, я набираю это на другом компьютере в той же сети, но не могу прикрепить текст с различных выходных данных, чтобы показать, что происходит. Нужна помощь в этом, пожалуйста.
Файл 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
search 8.8.8.8 8.8.4.4
Последняя строка помещает их в файл интерфейсов при перезагрузке системы. Это новое для 16.04LTS. Я думаю, что Windows NT4 была не так уж плоха, как и Ubuntu Server 12.
networking
server
internet
dns
Гэри Мерсер
источник
источник
Ответы:
Вам нужен сервер имен в вашем
/etc/resolv.conf
файле. Отредактируйте/etc/resolv.conf
и добавьте работающий сервер имен. Google предоставляет бесплатный8.8.8.8
.Сделай это:
Поместите это как первую строку без комментариев:
Вы можете проверить эту функциональность с:
Вы можете сделать это изменение постоянным, добавив в этот файл строку своего
/etc/resolvconf/resolv.conf.d/head
файла.источник
Отмеченный ответ фактически не работает в Ubuntu 18.04.01. Чтобы исправить эту проблему, вот что я сделал:
sudo gedit /usr/lib/systemd/resolv.conf
nameserver 8.8.8.8
(и / или любой другой сервер имен), затем сохраните и выйдите.sudo ln -sf /usr/lib/systemd/resolv.conf /etc/resolv.conf
Кредиты для https://askubuntu.com/a/1050280/899241
источник
Не могли бы вы опубликовать ссылку на страницу, которая говорит, что файл resolv.conf должен быть пустым? Я думаю, что это в лучшем случае вводит в заблуждение.
Отредактируйте этот файл командой
sudo nano /etc/resolv.conf
и поместите туда одну строку:Это должно исправить ваше разрешение имени и различные программы, которые его используют - ping, apt-get и т. Д.
Вы также должны выяснить, почему resolv.conf пуст. Возможно, ваш DHCP-сервер не настроен должным образом.
источник
Не очень хорошая идея на Ubuntu 16.04.x просто перезаписать
/etc/resolv.conf
. ОС, скорее всего, перезапишет его.Файл
/etc/resolv.conf
обычно является символической ссылкой на другой файл:это означает, что это правильно, и вы можете редактировать его, но, скорее всего, другая программа собирается перезаписать его. Я предполагаю, что у вас установлен NetworkManager. Насколько мне известно, эта служба управляет содержанием вашей решимости. Так что вы действительно должны попытаться настроить это. (С другой стороны, NetworkManager может быть отключен в вашей системе. Возможно, вам придется сказать мне.)
Попробуйте
nmtui
добавить туда правильный DNS-сервер. Я бы также использовал8.8.8.8
только в качестве вторичного DNS. Ваш основной DNS должен быть машиной или маршрутизатором рядом с вашей локальной сетью или чем-то еще, что у вас там есть ...источник
nmtui
на основе текста этого.У меня была такая же проблема, пока я не отредактировал со следующими значениями файл 50-cloud-init.yaml
надеюсь, что это работает и для вас
источник
addresses: [8.8.8.8,8.8.4.4]
(возможно, лучше использовать Cloudflare 1.1.1.1 )/etc/netplan/50-cloud-init.yaml
и затемsudo netplan --debug apply
.Вы столкнулись с проблемой, связанной с DNS-сервером, который вы указали для своей системы. Проверьте запись вашего сервера имен в /etc/resolv.conf.
Проблема в том, что команда ping не может определить, что такое «www.google.com», поскольку ваш DNS-сервер не может разрешить его и предоставить Google фактический IP-адрес (доступ к каждому серверу возможен только по его IP-адресу).
Решение
Изменить запись в
/etc/resolv.conf
. Либо предоставьте правильный DNS-сервер по выбору,/etc/resolve.conf
который может решить "www.google.com"или yВы можете указать свой локальный системный распознаватель с IP-адресом 127.0.0.53, добавив строку
или укажите IP-адрес DNS-сервера Google (любой из них): 8.8.8.8 или 8.8.4.4
PS Вы можете лучше понять , как работает DNS здесь
источник
Проблема, которую мы рассмотрели здесь, связана с разрешением доменных имен внутри IP-адреса. С версии 15 сервера Ubuntu, я полагаю, используется система динамических файлов конфигурации, которые меняются каждый раз при перезапуске или перезапуске службы или системы. Если администратор вносит изменения в файл resolv.conf, эти изменения удаляются при перезапуске службы распознавателя.
Чтобы сделать изменения постоянными, Ubuntu сделал способ сделать изменения пользователей постоянными, не влияя на динамическую конфигурацию файлов конфигурации. Предложение от LD James (выше) состояло в том, чтобы добавить изменения, которые мне нужно было внести в
/etc/resolvconf/resolv.conf.d/head
файл.Это сделало изменения постоянными и решило проблему разрешения сообщения об ошибке доменных имен
host not found
. Это решение для установки DNS-сервера имен в файле интерфейсов, а затем передачи его также в распознаватель. Спасибо всем за ваши высшие усилия в решении этой головоломки.источник