Ошибка temporary failure in name resolution ростелеком

Обновлено: 03.07.2024

Например, когда вы пытаетесь проверить связь с веб-сайтом , вы можете столкнуться с показанной ошибкой:

Обычно это ошибка разрешения имен, которая показывает, что ваш DNS- сервер не может преобразовать доменные имена в соответствующие IP-адреса. Это может стать серьезной проблемой, поскольку вы не сможете обновлять, обновлять или даже устанавливать какие-либо программные пакеты в вашей системе Linux.

В этой статье мы рассмотрим некоторые причины ошибки « Temporary failure in name resolution» и решения этой проблемы.

такие же пролблемы возникают если попытаться обновить или установить чтото

Пути решения проблемы

1. Отсутствующий или неправильно настроенный файл resolv.conf

Этот /etc/resolv.conf файл является файлом конфигурации преобразователя в системах Linux. Он содержит записи DNS, которые помогают вашей системе Linux преобразовывать доменные имена в IP-адреса.

Если этот файл отсутствует или существует, но ошибка разрешения имени все еще возникает, создайте его и добавьте общедоступный DNS-сервер Google, как показано

Сохраните изменения и перезапустите службу systemd-resolved, как показано.

Также разумно проверить состояние резолвера и убедиться, что он активен и работает должным образом:

Затем попробуйте проверить связь с любым веб-сайтом, и проблема должна быть решена.

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Однако в убунту 20 этот файл скоррее всего перезатрется и ДНС будует 127.0.0.53

2. Ограничения брандмауэра

Если первое решение не помогло вам, ограничения брандмауэра могут мешать вам успешно выполнять DNS-запросы. Проверьте свой брандмауэр и убедитесь, что порт 53 (используется для DNS - разрешение доменного имени) и порт 43 (используется для поиска whois ) открыты. Если порты заблокированы, откройте их следующим образом:

Для брандмауэра UFW (Ubuntu / Debian и Mint)

Чтобы открыть порты 53 и 43 на брандмауэре UFW, выполните следующие команды:

Для firewalld (RHEL / CentOS / Fedora)

Для систем на основе Redhat, таких как CentOS, выполните следующие команды:

3 Особенности настрокий ДНС в убунту 20

/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 .

К сожалению, поскольку /etc/resolv.conf косвенно управляется службой systemd-resolved , а в некоторых случаях сетевой службой (с помощью сценариев инициализации или NetworkManager ), любые изменения, сделанные пользователем вручную, не могут быть сохранены навсегда или только длиться какое-то время.

В этой статье мы покажем, как установить и использовать программу resolvconf для установки постоянных серверов имен DNS в файле /etc/resolv.conf в дистрибутивах Debian и Ubuntu Linux.

Зачем вам редактировать файл /etc/resolv.conf?

Основная причина может заключаться в том, что системные настройки DNS неправильно настроены или вы предпочитаете использовать определенные серверы имен или свои собственные. Следующая команда cat показывает сервер имен по умолчанию в файле /etc/resolv.conf в моей системе Ubuntu.

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

В этом случае, когда локальные приложения, такие как диспетчер пакетов APT, пытаются получить доступ к полным доменным именам ( полные доменные имена ) в локальной сети, результатом является ошибка « Temporary failure in name resolution », как показано на следующем снимке экрана.

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Устранение временных сбоев

То же самое происходит, когда вы запускаете команду ping .

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Поэтому, когда пользователь пытается вручную настроить серверы имен, изменения сохраняются недолго или отменяются после перезагрузки. Чтобы решить эту проблему, вы можете установить и использовать утилиту reolvconf, чтобы сделать изменения постоянными.

Чтобы установить пакет resolvconf , как показано в следующем разделе, вам нужно сначала вручную установить следующие серверы имен в файле /etc/resolv.conf , чтобы вы могли получить доступ к FQDM серверов репозитория Ubuntu в Интернете.

Установка resolvconf в Ubuntu и Debian

Сначала обновите пакеты системного программного обеспечения, а затем установите resolvconf из официальных репозиториев, выполнив следующие команды.

После завершения установки resolvconf systemd инициирует автоматический запуск и включение службы resolvconf.service . Чтобы проверить, работает ли он, выполните следующую команду.

Если служба не запускается и не включается автоматически по какой-либо причине, вы можете запустить и включить ее следующим образом.

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Проверить статус службы Resolvconf

Установите постоянные DNS-серверы имен в Ubuntu и Debian

Затем откройте файл конфигурации /etc/resolvconf/resolv.conf.d/head .

и добавьте в него следующие строки:

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Установите постоянные серверы имен DNS в Resolvconf

Сохраните изменения и перезапустите службу resolvconf. или перезагрузите систему.

Теперь, когда вы проверяете файл /etc/resolv.conf , записи сервера имен должны храниться там постоянно. Отныне вы не столкнетесь с какими-либо проблемами, связанными с разрешением имен в вашей системе.

Temporary failure in name resolution Ubunutu 20 проблемы с DNS

Я надеюсь, что эта краткая статья помогла вам настроить постоянные DNS-серверы имен в ваших системах Ubuntu и Debian. Если у вас есть какие-либо вопросы или предложения, поделитесь ими с нами в разделе комментариев ниже.

См. также

Ответы на вопросы для самопроверки пишите в комментариях, мы проверим, или же задавайте свой вопрос по данной теме.

Я только что установил Ubuntu Server 18.04 и настроил SSH, чтобы я мог продолжить настройку через свой рабочий стол, но у меня возникли некоторые проблемы, которые я не могу решить.

Я пытался бежать

но постоянно получал ошибки:

Я проверил, было ли у меня интернет-соединение нормально, запустив

и я получил ответ, все хорошо там.

Я подозревал, что, возможно, мой DNS не был настроен правильно, поэтому я попытался

и получил ошибку:

Временный сбой в разрешении имен

Итак, я решил, что это на самом деле какая-то проблема DNS, но все "ответы", которые я пробовал, не сработали для меня.

Я пробовал редактировать /etc/resolv.conf без удачи, как представляется, символическая ссылка.

Я нашел ответ, который работает, только если я запускаю из-под root, то есть:

Но он дает указание отменить изменения впоследствии:

Если я это сделаю, я снова потеряю связь.

  • Должен ли я просто оставить все как есть или что-то еще?
  • Может ли это быть постоянным решением?
  • И является причиной проблемы тот факт, что /run/resolvconf/resolv.conf на самом деле не существует?

3 ответа

отлично работает, однако, это должно быть сделано вручную после каждой загрузки и после каждого отключения / повторного подключения к сети, так что это работает, но это ручное решение, а не постоянное решение;

чтобы запустить беспроводную сеть автоматически, просто:

вам, вероятно, придется перезагрузиться; тогда вы сможете использовать значок беспроводной сети, который появляется в области уведомлений на панели управления (убедитесь, что область уведомлений добавлена ​​на панель), чтобы выбрать беспроводную сеть; после этого он автоматически восстановит соединение;

однако для автоматического восстановления проводной сети я попытался установить avahi-daemon и avahi-autoipd, но, видимо, это не помогает; даже попробовал

в основном, если вы устанавливаете дистрибутив, такой как рабочий стол Xubuntu, устанавливается соответствующий инструмент (ы)/daemon/config, и сеть обнаруживается автоматически, когда он подключен без какой-либо пользовательской конфигурации; было бы неплохо узнать, какой инструмент /daemon/config/setting это делает.

Хотя пост не о том, но из возможных причин пока представляются реальными две:

Prometheus и метрики dnsmasq

Експортер собирает такие метрики:

Их же можно получить запросов типа Chaos (см. DNS classes) с помощью dig .

Что они нам дают?

Или с выборкой по конкретному хосту:


dnsmasq debugging

dnsmasq: compile time options: IPv6 GNU-getopt DBus i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile

Обращаемся к нему:

dnsmasq: compile time options: IPv6 GNU-getopt DBus i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile

dnsmasq logging

resolv.conf и resolv.dnsmasq

Имеет смысл вынести апстрим-сервера из resolv.conf и в нём оставить только сам dnsmasq , что бы быть уверенным в том, что все DNS-запросы из системы будут переданы ему, плюс это позволяет иметь динамически обновляемый resolv.conf (например, если он генерируется NetworkManager).

Далее можно создать новый файл, например resolv.dnsmasq , в котором перечислить апстримы:

И задать в конфиге /etc/dnsmasq.conf опцию --resolv-file="/etc/resolv.dnsmasq" :

Перед рестаром проверяем синтаксис конфига:

--servers

Кроме того, спомощью server можно задать конкретные апстримы для конкретных доменов.

--strict-order

Размер кеша dnsmasq

Задаётся с помощью опции cachesize , например:

SIGUSR1

Oct 26 10:53:45 localhost dnsmasq[30433]: time 1572076425 Oct 26 10:53:45 localhost dnsmasq[30433]: cache size 150, 0/45516 cache insertions re-used unexpired cache entries. Oct 26 10:53:45 localhost dnsmasq[30433]: queries forwarded 22241, queries answered locally 633009 Oct 26 10:53:45 localhost dnsmasq[30433]: queries for authoritative zones 0

В котором мы видимо невероятно много полезной информации:

Выглядит это так:


При этом в дампе dnsmasq всё по-прежнему отлично:

Oct 26 11:12:36 localhost dnsmasq[30433]: time 1572077556 Oct 26 11:12:36 localhost dnsmasq[30433]: cache size 150, 0/49227 cache insertions re-used unexpired cache entries. Oct 26 11:12:36 localhost dnsmasq[30433]: queries forwarded 24327, queries answered locally 724600 Oct 26 11:12:36 localhost dnsmasq[30433]: queries for authoritative zones 0



Вадим Максимов


Вадим Максимов

Платон, cat /etc/resolv.conf выводит:"namespace 208.67.222.222"
dhcp нет такого пакета

Платон Рыжиков

dhcp-клиент предоставляется пакетами dhcpcd или dhclient. Здесь dhcp какой-то, видимо, есть, но сервер не предоставляет информацию о dns-серверах (запись должна иметь вид nameserver <addr>)

Вадим Максимов


Вадим Максимов ответил Платону

Платон Рыжиков

Ну тут два варианта:
1) сконфигурировать dhcp-сервер соответствующим образом (если есть к нему доступ)
2) установить вручную настройки dns и отключить настройку dns в dhcp-клиенте

Bin Bash


Bin Bash ответил Платону

Bin Bash


Bin Bash

Копировать конфиг при установке1 ,2установите дшсп и дшсп клиент при установке , вообще пакман -Syu при установке все это можно через чрут.

Machina Animata

у меня такое было из-за того, что при установке не поставился пакет dhcpcd, хотя он вроде как в base входит. Загрузился снова с флешки и поставил вручную. Может поможет

Читайте также: