Рейтинг:2

systemd-resolved не разрешает домены

флаг cn

Мой NetworkManager подключается к Интернету, но у меня нет доступа к Интернету из-за плохой конфигурации DNS. У меня нет большого опыта работы с настройками DNS, но, похоже, проблема связана с systemd-resolved. Я могу напрямую пинговать IP-адреса (например, 8.8.8.8) и получать ответ в обычном режиме, но я не могу разрешать домены при использовании приведенной ниже конфигурации по умолчанию. Я попробовал символическую ссылку на три режима конфигурации, перечисленные в документации по разрешению systemd, но ни один из них не работает.

Не удается разрешить ни один домен со следующим, но я могу без проблем пинговать IP-адреса (пробовал кучу, и все они работают).

# /etc/resolv.conf 
сервер имен 127.0.0.53
параметры edns0 траст-объявление

Я также получаю ошибки тайм-аута при использовании dig или host.

; <<>> DiG 9.16.1-Ubuntu <<>> www.ubuntu.com
;; глобальные параметры: +cmd
;; время соединения истекло; нет доступа к серверам

Я могу получить разрешение домена и подключиться к Интернету, изменив сервер имен resolv.conf на 8.8.8.8, но разрешение занимает много времени: загрузка веб-страницы занимает> 1 минуты, даже если тесты скорости сети показывают более 100 Мбит / с и пинг <30 мс на той же машине.

Конфигурация ниже работает, вроде как, с очень медленным временем отклика.

# /etc/resolv.conf 
сервер имен 8.8.8.8
параметры edns0 траст-объявление

Дополнительная информация, которая может быть полезна

Как я уже сказал, я новичок в этих системах, и я изо всех сил пытаюсь решить проблему. Ниже все, что, на мой взгляд, может быть полезно. Все выходные данные ниже используют сервер имен 127.0.0.53.

Убунту 20.04.3 ЛТС

Вывод systemd-resolve --status

Глобальный
       Настройка LLMNR: нет                  
Настройка MulticastDNS: нет                  
  Настройка DNSOverTLS: нет                  
      Настройка DNSSEC: нет                  
    Поддерживается DNSSEC: нет                  
          DNSSEC NTA: 10.in-addr.arpa     
                      16.172.in-addr.arpa 
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa 
                      18.172.in-addr.arpa 
                      19.172.in-addr.arpa 
                      20.172.in-addr.arpa 
                      21.172.in-addr.arpa 
                      22.172.in-addr.arpa 
                      23.172.in-addr.arpa 
                      24.172.in-addr.arpa 
                      25.172.in-addr.arpa 
                      26.172.in-addr.arpa 
                      27.172.in-addr.arpa 
                      28.172.in-addr.arpa 
                      29.172.in-addr.arpa 
                      30.172.in-addr.arpa 
                      31.172.in-addr.arpa 
                      корпорация                
                      д.ф.ip6.arpa        
                      дом                
                      внутренний            
                      интранет            
                      лан                 
                      местный               
                      частный             
                      тестовое задание                

Ссылка 3 (ipv6leakintrf0)
      Текущие области: DNS
Настройка DefaultRoute: да
       Настройка LLMNR: да
Настройка MulticastDNS: нет 
  Настройка DNSOverTLS: нет 
      Настройка DNSSEC: нет 
    Поддерживается DNSSEC: нет 
  Текущий DNS-сервер: ::1
         DNS-серверы: ::1
          DNS-домен: ~. 

Ссылка 2 (wlo1)
      Текущие области применения: нет
Настройка DefaultRoute: нет  
       Настройка LLMNR: да 
Настройка MulticastDNS: нет  
  Настройка DNSOverTLS: нет  
      Настройка DNSSEC: нет  
    Поддерживается DNSSEC: нет  
# /etc/systemd/resolved.conf 
[Решать]
#DNS=
#ЗапаснойDNS=
#домены=
#LLMNR=нет
#MulticastDNS=нет
#DNSSEC=нет
#DNSOverTLS=нет
#Кэш=без отрицательных значений
#DNSStubListener=да
#ReadEtcHosts=да
# Конфигурация NetworkManager: /etc/NetworkManager/NetworkManager.conf (lib: 10-dns-resolved.conf, 20-connectivity-ubuntu.conf, no-mac-addr-change.conf) (запустить: 10-globally-managed- devices.conf) (и т. д.: default-wifi-powersave-on.conf)

[главный]
# rc-manager=символическая ссылка
# авторизация-полкит = истина
# DHCP=внутренний
dns = systemd-разрешено
плагины = ifupdown, ключевой файл

[подключение]
uri=http://connectivity-check.ubuntu.com/

[ifupdown]
управляемый = ложь

[Ведение журнала]
# бэкенд=журнал
# аудит=истина

[устройство]
wifi.scan-rand-mac-address=нет

[устройство-mac-addr-change-wifi]
match-device = драйвер: rtl8723bs, драйвер: rtl8189es, драйвер: r8188eu, драйвер: 8188eu, драйвер: eagle_sdio, драйвер: wl
wifi.scan-rand-mac-address=нет

[связь]
wifi.powersave=3

# файл no-auto-default "/var/lib/NetworkManager/no-auto-default.state"

Системный журнал при запуске

 Запуск разрешения сетевых имен...
sisyphus systemd-resolved[6024]: Положительные якоря доверия:
sisyphus systemd-resolved[6024]: . В ДС 20326 8 2 e17f45b80b8f1d39a95f0b0d7c45a08458e880409bbc683457104237c7f8ec8d
sisyphus systemd-resolved[6024]: отрицательные якоря доверия: -addr.arpa 21.172.in-addr.arpa 22.172.in-addr.arpa 23.172.in-addr.arpa 24.172.in-addr.arpa 25.172.in-addr.arpa 26.172.in-addr.arpa 27.172.in- addr.arpa 28.172.in-addr.arpa 29.172.in-addr.arpa 30.172.in-addr.arpa 31.172.in-addr.arpa 168.192.in-addr.arpa d.f.ip6.arpa corp home внутренняя интрасеть lan локальный частный тест
sisyphus systemd-resolved[6024]: используется системное имя хоста «sisyphus».

Системный журнал в режиме отладки выводит следующее, переключаясь между протоколами UDP и TCP.

Транзакция 33247 для домена области <ntp.ubuntu.com IN A> на ipv6leakintrf0/*.
systemd-resolved[4805]: использование TCP уровня функций для транзакции 33247.
systemd-resolved[4805]: Отправка запроса через TCP, так как UDP не поддерживается.
systemd-resolved[4805]: использование TCP уровня функций для транзакции 33247.
systemd-resolved [4805]: сбой подключения для потока DNS TCP: подключение отклонено
systemd-resolved[4805]: повторная попытка транзакции 33247.
флаг cc
Попробуйте отключить IPV6 и дайте вашему IPV4 свой маршрутизатор вместо круговой ссылки systemd-resolv. Статус systemd-router должен иметь IP-адрес маршрутизатора в качестве записи DNS в ссылке ipv4.
Jared Young avatar
флаг cn
Как отключить IPV6? Я попытался отключить IPV6 в графическом интерфейсе сетевого менеджера и не увидел никакой разницы в выводе systemd-resolve --status. Тот же самый DNS-сервер IPV6 все еще был указан.
флаг cc
Я отключаю IPV6 на маршрутизаторе, а также в графическом интерфейсе NetworkManager. Ничто другое не кажется странным, за исключением того, что «UDP не поддерживается» из вашего журнала - я иногда получаю откат к UDP из TCP при возникновении определенных условий ошибки. У меня даже нет строки DNS в моем файле NetworkManager.conf.
Рейтинг:1
флаг ky

Это происходит постоянно, и теперь я обычно возвращаю свой файл /etc/resolv.conf, отключив systemd-resolved.

 sudo systemctl остановить systemd-resolved
 sudo systemctl отключить systemd-resolved

Затем в вашем файле /etc/resov.conf я добавляю сервер имен (IP-адрес DNS-сервера, который вы хотите использовать)

 сервер имен 8.8.4.4
Josh avatar
флаг cn
Хотя я ценю обходной путь, нет ли решения этой проблемы?
Jared Young avatar
флаг cn
Это действительно решает мою проблему! Согласен, спасибо за обход, но решения нет?
ognjen avatar
флаг ky
Не уверен, что это случается со мной часто, поэтому я просто отказался исправлять это, извините, это единственная вещь, в которой мой опыт работы с systemd не был таким уж хорошим.
Jared Young avatar
флаг cn
Обновился до 21.10 и теперь работает. Не знаю, что изменилось, но теперь systemd-resolved работает нормально.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.