Практика
Иногда появляется ошибка gmail.com: Temporary failure in name resolution
Иногда, когда вы пытаетесь проверить связь с веб-сайтом, обновить систему или выполнить любую задачу, требующую активного подключения к Интернету, вы можете получить сообщение об ошибке « Temporary failure in name resolution » на вашем терминале.
Например, когда вы пытаетесь проверить связь с веб-сайтом , вы можете столкнуться с показанной ошибкой:
intellect.icu@pc: ~$ ping google.com ping: gmail.com: Temporary failure in name resolution
Обычно это ошибка разрешения имен, которая показывает, что ваш DNS-сервер не может преобразовать доменные имена в соответствующие IP-адреса. Это может стать серьезной проблемой, поскольку вы не сможете обновлять, обновлять или даже устанавливать какие-либо программные пакеты в вашей системе Linux.
В этой статье мы рассмотрим некоторые причины ошибки « Temporary failure in name resolution» и решения этой проблемы.
sudo apt update Err:1 http://ppa.launchpad.net/ondrej/php/ubuntu focal InRelease Temporary failure resolving 'ppa.launchpad.net' Err:2 http://dl.google.com/linux/chrome-remote-desktop/deb stable InRelease Temporary failure resolving 'dl.google.com' Err:3 http://security.ubuntu.com/ubuntu focal-security InRelease Temporary failure resolving 'security.ubuntu.com' Err:4 http://ua.archive.ubuntu.com/ubuntu focal InRelease Temporary failure resolving 'ua.archive.ubuntu.com' Err:5 http://dl.google.com/linux/chrome/deb stable InRelease Temporary failure resolving 'dl.google.com' Err:6 http://ua.archive.ubuntu.com/ubuntu focal-updates InRelease Temporary failure resolving 'ua.archive.ubuntu.com' Err:7 http://ua.archive.ubuntu.com/ubuntu focal-backports InRelease Temporary failure resolving 'ua.archive.ubuntu.com' Reading package lists... Done Building dependency tree Reading state information... Done 140 packages can be upgraded. Run 'apt list --upgradable' to see them. W: Failed to fetch http://ua.archive.ubuntu.com/ubuntu/dists/focal/InRelease Temporary failure resolving 'ua.archive.ubuntu.com' W: Failed to fetch http://ua.archive.ubuntu.com/ubuntu/dists/focal-updates/InRelease Temporary failure resolving 'ua.archive.ubuntu.com' W: Failed to fetch http://ua.archive.ubuntu.com/ubuntu/dists/focal-backports/InRelease Temporary failure resolving 'ua.archive.ubuntu.com' W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/focal-security/InRelease Temporary failure resolving 'security.ubuntu.com' W: Failed to fetch http://dl.google.com/linux/chrome-remote-desktop/deb/dists/stable/InRelease Temporary failure resolving 'dl.google.com' W: Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/InReleaseTemporary failure resolving 'dl.google.com' W: Failed to fetch http://ppa.launchpad.net/ondrej/php/ubuntu/dists/focal/InRelease Temporary failure resolving 'ppa.launchpad.net' W: Some index files failed to download. They have been ignored, or old ones used instead.
Этот /etc/resolv.conf
файл является файлом конфигурации преобразователя в системах Linux. Он содержит записи DNS, которые помогают вашей системе Linux преобразовывать доменные имена в IP-адреса.
Если этот файл отсутствует или существует, но ошибка разрешения имени все еще возникает, создайте его и добавьте общедоступный DNS-сервер Google, как показано
nameserver 8.8.8.8
Сохраните изменения и перезапустите службу systemd-resolved, как показано.
$ sudo systemctl restart systemd-resolved.service
Также разумно проверить состояние резолвера и убедиться, что он активен и работает должным образом:
$ sudo systemctl status systemd-resolved.service
Затем попробуйте проверить связь с любым веб-сайтом, и проблема должна быть решена.
intellect@ubuntu : ~ $ ping google.com
Однако в убунту 20 этот файл скоррее всего перезатрется и ДНС будует 127.0.0.53
Если первое решение не помогло вам, ограничения брандмауэра могут мешать вам успешно выполнять DNS-запросы. Проверьте свой брандмауэр и убедитесь, что порт 53 (используется для DNS - разрешение доменного имени) и порт 43 (используется для поиска whois ) открыты. Если порты заблокированы, откройте их следующим образом:
Чтобы открыть порты 53 и 43 на брандмауэре UFW, выполните следующие команды:
$ sudo ufw allow 53 / tcp $ sudo ufw allow 43 / tcp $ sudo ufw reload
Для систем на основе Redhat, таких как CentOS, выполните следующие команды:
$ sudo firewall-cmd --add-port = 53 / tcp --permanent $ sudo firewall-cmd --add-port = 43 / tcp --permanent $ sudo firewall-cmd --reload
Мы надеемся, что теперь у вас есть представление об ошибке « Temporary failure in name resolution » и о том, как ее исправить, выполнив несколько простых шагов. Как всегда, мы будем благодарны за ваши отзывы.
/etc/resolv.conf основной файл конфигурации для DNS имя распознавателя библиотеки. Сопоставитель - это набор функций в библиотеке C, которые обеспечивают доступ к системе доменных имен Интернета ( DNS ). Функции настроены для проверки записей в файле /etc/hosts или нескольких DNS-серверов имен, или для использования базы данных хоста сетевой информационной службы ( NIS ).
В современных системах Linux, использующих systemd (менеджер системы и служб), службы DNS или разрешения имен предоставляются локальным приложениям через службу с разрешением systemd . По умолчанию эта служба имеет четыре различных режима для обработки разрешения доменных имен и использует файл-заглушку systemd DNS ( /run/systemd/resolve/stub-resolv.conf ) в режиме работы по умолчанию.
Файл-заглушка DNS содержит локальную заглушку 127.0.0.53 в качестве единственного DNS-сервера и перенаправляется в файл /etc/resolv.conf, который использовался для добавления серверов имен, используемых системой.
Если вы запустите следующую команду ls в /etc/resolv.conf , вы увидите, что этот файл является символической ссылкой на файл /run/systemd/resolve/stub-resolv.conf .
$ ls -l /etc/resolv.conf lrwxrwxrwx 1 root root 39 25 февраля 2059 г. /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
К сожалению, поскольку /etc/resolv.conf косвенно управляется службой systemd-resolved , а в некоторых случаях сетевой службой (с помощью сценариев инициализации или NetworkManager ), любые изменения, сделанные пользователем вручную, не могут быть сохранены навсегда или только длиться какое-то время.
В этой статье мы покажем, как установить и использовать программу resolvconf для установки постоянных серверов имен DNS в файле /etc/resolv.conf в дистрибутивах Debian и Ubuntu Linux.
Основная причина может заключаться в том, что системные настройки DNS неправильно настроены или вы предпочитаете использовать определенные серверы имен или свои собственные. Следующая команда cat показывает сервер имен по умолчанию в файле /etc/resolv.conf в моей системе Ubuntu.
$ cat /etc/resolv.conf
Проверьте DNS-серверы
В этом случае, когда локальные приложения, такие как диспетчер пакетов APT, пытаются получить доступ к полным доменным именам ( полные доменные имена ) в локальной сети, результатом является ошибка « Temporary failure in name resolution », как показано на следующем снимке экрана.
Устранение временных сбоев
То же самое происходит, когда вы запускаете команду ping .
$ ping google.com
Temporary failure in name resolution
Поэтому, когда пользователь пытается вручную настроить серверы имен, изменения сохраняются недолго или отменяются после перезагрузки. Чтобы решить эту проблему, вы можете установить и использовать утилиту reolvconf, чтобы сделать изменения постоянными.
Чтобы установить пакет resolvconf , как показано в следующем разделе, вам нужно сначала вручную установить следующие серверы имен в файле /etc/resolv.conf , чтобы вы могли получить доступ к FQDM серверов репозитория Ubuntu в Интернете.
#Public DNS от google США nameserver 8.8.4.4 nameserver 8.8.8.8 #Public DNS от freenom Нидерланды nameserver 80.80.80.80 #Public DNS Яндекс Россия nameserver 77.88.8.8 nameserver 77.88.8.88 nameserver 77.88.8.7
Сначала обновите пакеты системного программного обеспечения, а затем установите resolvconf из официальных репозиториев, выполнив следующие команды.
$ sudo apt update $ sudo apt install resolvconf
После завершения установки resolvconf systemd инициирует автоматический запуск и включение службы resolvconf.service . Чтобы проверить, работает ли он, выполните следующую команду.
$ sudo systemctl status resolvconf.service
Если служба не запускается и не включается автоматически по какой-либо причине, вы можете запустить и включить ее следующим образом.
$ sudo systemctl start resolvconf.service $ sudo systemctl enable resolvconf.service $ sudo systemctl status resolvconf.service
Проверить статус службы Resolvconf
Затем откройте файл конфигурации /etc/resolvconf/resolv.conf.d/head .
$ sudo nano /etc/resolvconf/resolv.conf.d/head
и добавьте в него следующие строки:
nameserver 8.8.8.8 nameserver 8.8.4.4
Установите постоянные серверы имен DNS в Resolvconf
Сохраните изменения и перезапустите службу resolvconf. или перезагрузите систему.
$ sudo systemctl start resolvconf.service
Теперь, когда вы проверяете файл /etc/resolv.conf , записи сервера имен должны храниться там постоянно. Отныне вы не столкнетесь с какими-либо проблемами, связанными с разрешением имен в вашей системе.
Постоянные DNS-серверы
Я надеюсь, что эта краткая статья помогла вам настроить постоянные DNS-серверы имен в ваших системах Ubuntu и Debian. Если у вас есть какие-либо вопросы или предложения, поделитесь ими с нами в разделе комментариев ниже.
Ответы на вопросы для самопроверки пишите в комментариях, мы проверим, или же задавайте свой вопрос по данной теме.
Комментарии
Оставить комментарий
Операционная система LINUX
Термины: Операционная система LINUX