Разрешение домена (systemd-resolved) испорчено, как это можно исправить?
Извините, это длинный, TL;DR - это то, что разрешение домена (и, возможно, другие вещи) работает только периодически, и, следовательно, Интернет работает только периодически. Я бы хотел это исправить: Kubuntu 17.04.
Есть несколько симптомов: на 20170605 я включил компьютер, чтобы подключить удаленное устройство для использования плекса, но подключение с удаленного устройства в той же подсети к локальному компьютеру с помощью Wi-Fi через USB-адаптер TP-LINK ath9k_htc было прерывистым. Я запустил последние обновления (pastebin), но они не связаны с разрешением DNS.
Пинг, используя mtr с интервалом 2 с, DNS от Google на 8.8.8.8 я получаю:
1. 192.168.1.1 ...............................????????????????...............????????????????...........................................................................??????????.....................???????.........
2. 81.1.112.44 ...............................????????????????...............????????????????.........>.................................................................?????????......................???????.........
Вопросы показывают, когда соединение обрывается, интервалы составляют 32 с, 32 с, 22 с, 14 с, то есть нерегулярно.
Первоначально я думал, что виноват systemd-resolved, sudo systemctl status wpa_supplicant.service NetworkManager.service systemd-resolved
возвращает следующее:
thisuser@host-k1210:~$ sudo systemctl status wpa_supplicant.service NetworkManager.service systemd-resolved.service
● wpa_supplicant.service - WPA supplicant
Loaded: loaded (/lib/systemd/system/wpa_supplicant.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2017-06-06 09:26:04 BST; 3h 52min ago
Main PID: 1252 (wpa_supplicant)
Tasks: 1 (limit: 4915)
CGroup: /system.slice/wpa_supplicant.service
└─1252 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
Jun 06 11:35:52 host-k1210 wpa_supplicant[1252]: wlan15: WPA: Group rekeying completed with 00:1c:df:9b:8d:ff [GTK=TKIP]
Jun 06 11:57:25 host-k1210 wpa_supplicant[1252]: wlan15: CTRL-EVENT-DISCONNECTED bssid=00:1c:df:9b:8d:ff reason=3 locally_generated=1
Jun 06 11:57:25 host-k1210 wpa_supplicant[1252]: wlan15: CTRL-EVENT-REGDOM-CHANGE init=CORE type=WORLD
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: SME: Trying to authenticate with 00:1c:df:9b:8d:ff (SSID='TALKTALK-17A908' fr
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: Trying to associate with 00:1c:df:9b:8d:ff (SSID='TALKTALK-17A908' freq=2412
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: Associated with 00:1c:df:9b:8d:ff
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: CTRL-EVENT-REGDOM-CHANGE init=COUNTRY_IE type=COUNTRY alpha2=US
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: WPA: Key negotiation completed with 00:1c:df:9b:8d:ff [PTK=CCMP GTK=TKIP]
Jun 06 11:57:28 host-k1210 wpa_supplicant[1252]: wlan15: CTRL-EVENT-CONNECTED - Connection to 00:1c:df:9b:8d:ff completed [id=0 id_str
Jun 06 12:36:45 host-k1210 wpa_supplicant[1252]: wlan15: WPA: Group rekeying completed with 00:1c:df:9b:8d:ff [GTK=TKIP]
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2017-06-06 11:05:45 BST; 2h 13min ago
Docs: man:NetworkManager(8)
Main PID: 3815 (NetworkManager)
Tasks: 3 (limit: 4915)
CGroup: /system.slice/NetworkManager.service
└─3815 /usr/sbin/NetworkManager --no-daemon
Jun 06 11:05:45 host-k1210 systemd[1]: Starting Network Manager...
Jun 06 11:05:45 host-k1210 systemd[1]: Started Network Manager.
Jun 06 11:05:45 host-k1210 NetworkManager[3815]: <warn> [1496743545.4801] keyfile: 'hostname' option is deprecated and has no effect
Jun 06 11:05:45 host-k1210 NetworkManager[3815]: ((devices/nm-device.c:970)): assertion '<dropped>' failed
Jun 06 11:57:25 host-k1210 NetworkManager[3815]: <warn> [1496746645.8678] sup-iface[0x556a4c929950,wlan15]: connection disconnected (
● systemd-resolved.service - Network Name Resolution
Loaded: loaded (/lib/systemd/system/systemd-resolved.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/systemd-resolved.service.d
└─resolvconf.conf
Active: active (running) since Tue 2017-06-06 09:26:00 BST; 3h 52min ago
Docs: man:systemd-resolved.service(8)
http://www.freedesktop.org/wiki/Software/systemd/resolved
http://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
http://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
Main PID: 1192 (systemd-resolve)
Status: "Processing requests..."
Tasks: 1 (limit: 4915)
CGroup: /system.slice/systemd-resolved.service
└─1192 /lib/systemd/systemd-resolved
Jun 06 13:14:01 host-k1210 systemd-resolved[1192]: Switching to DNS server 8.8.8.8 for interface wlan15.
Jun 06 13:14:01 host-k1210 systemd-resolved[1192]: Using degraded feature set (UDP+EDNS0+DO) for DNS server 8.8.8.8.
Jun 06 13:14:05 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 06 13:14:05 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.220.220 for interface wlan15.
Jun 06 13:14:06 host-k1210 systemd-resolved[1192]: Switching to DNS server 8.8.8.8 for interface wlan15.
Jun 06 13:17:44 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 06 13:17:49 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.220.220 for interface wlan15.
Jun 06 13:17:55 host-k1210 systemd-resolved[1192]: Switching to DNS server 8.8.8.8 for interface wlan15.
Jun 06 13:18:00 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 06 13:18:05 host-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.220.220 for interface wlan15.
Другими словами, как минимум 3 системы находятся в состоянии ошибки:
1) Это показывает ошибку в этом посте о wpa_supplicant / NetworkManager; Решение об удалении рандомизации MAC-адреса путем изменения NetworkManager.conf для меня неэффективно.
2a) ошибка в этом посте о повторном вводе в wpa_supplicant; опять же исправление мне не помогает, так как у меня нет маршрутизатора, на котором я могу установить "Период обновления ключа группы WPA/WPA2".
2b) та же самая ошибка сообщается здесь с инструкцией по изменению PMF (Защищенные кадры управления), опять же, мой маршрутизатор Wi-Fi не предлагает доступ к этому.
3) третью ошибку также можно увидеть tail
-ную /var/log/syslog
:
Jun 6 13:18:00 bridgeflap-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 6 13:18:05 bridgeflap-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.220.220 for interface wlan15.
Jun 6 13:24:07 bridgeflap-k1210 systemd-resolved[1192]: Switching to DNS server 8.8.8.8 for interface wlan15.
Jun 6 13:24:12 bridgeflap-k1210 systemd-resolved[1192]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 6 13:24:12 bridgeflap-k1210 systemd-resolved[1192]: Grace period over, resuming full feature set (UDP+EDNS0+DO+LARGE) for DNS server 208.67.222.222.
Эти ошибки часто повторяются. Когда система подключена к сети, они останавливаются, а когда mtr 8.8.8.8
показывает, что пинги не работают, эти ошибки запускаются снова, почти так - почти как в состоянии гонки.
3а) ошибки в systemd-resolved
похоже на эту проблему, но исправление отключения DNSSEC у меня не работает, действительно, это было по умолчанию, хотя я выбрал его в качестве выключенного в systemd-resolved.conf
,
3b) это очень похоже на эту предварительную проблему Valet Linux, где dnsmasq
казалось, вмешивался в решатель systemd. У меня был dnsmasq в прошлом, но в настоящее время его нет.
3c) в ветке форума от 16.10 предлагается удалить dnsmasq в качестве решения, если вспомнить, что он у меня не установлен (но в качестве остатка была dnsmasq-base, удаление было неэффективным).
FWIW Я использую статический IP, соединяющий через wifi с маршрутизатором-модемом ADSL с OpenDNS (с Google в качестве запасного варианта), установленным через интерфейс KDE NetworkManager.
Довольно много перезапускает любой элемент сети, например sudo systemctl restart networking.service
кажется, очень кратко исправляет ситуацию, но кратковременность ошибки затрудняет определение - соединение буквально все время идет вверх и вниз, самое короткое падение - ~2 с, самое длинное - ~60 с.
дела journalctl -x --utc --system | grep -C3 -i error
Я получаю строки вроде:
-- Unit NetworkManager-wait-online.service has begun starting up.
Jun 06 09:57:29 bridgeflap-k1210 NetworkManager[3236]: <warn> [1496743049.2492] keyfile: 'hostname' option is deprecated and has no effect
Jun 06 09:57:29 bridgeflap-k1210 NetworkManager[3236]: <warn> [1496743049.2950] keyfile: error loading connection from file /etc/NetworkManager/system-connections/TALKTALK-E8D140-50a6bcfd-4d2e-4ec2-9a43-38d3d1cd21b2: invalid connection: connection.type: property is missing
Удаление соединения через апплет KDE NetworkManager, по-видимому, исправило эту ошибку "свойство отсутствует", и временно я восстановил сетевое соединение, но после перезагрузки я снова обнаружил те же [очевидно] проблемы с распознавателем DNS, и эта ошибка больше не появляется в журнале.
Кажется, мне осталось попробовать sudo systemctl disable systemd-resolved
и возвращаясь к dnsmasq
или я собираюсь, используя unbound
(это решение предлагает использовать resolvconf) или, может быть, настройку статических серверов имен?
Итак, что попробовать дальше?
Чтобы предвидеть предложение, мой /etc/resolv.conf уже является символической ссылкой на / run / systemd /... на самом деле держится... нет, это не так...
sudo apt remove resolvconf
sudo mv /etc/resolv.conf{,.20170606a}
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
sudo dpkg-reconfigure systemd
sudo systemctl disable resolvconf.service
sudo systemctl restart systemd-resolved.service networking.service
Похоже, это сработало, теперь я получаю более длинные отрезки ~200, где mtr
успешно пингует, но все равно падает и все еще с ошибками syslog
лайк:
Jun 6 14:50:41 bridgeflap-k1210 systemd-resolved[25306]: Switching to DNS server 208.67.222.222 for interface wlan15.
Jun 6 14:50:43 bridgeflap-k1210 systemd-resolved[25306]: Switching to DNS server 208.67.220.220 for interface wlan15.
Jun 6 14:50:43 bridgeflap-k1210 systemd-resolved[25306]: Using degraded feature set (UDP+EDNS0) for DNS server 208.67.220.220.
Jun 6 14:50:44 bridgeflap-k1210 systemd-resolved[25306]: Switching to DNS server 8.8.8.8 for interface wlan15.
Помогите!?
1 ответ
Я использовал Wireshark для мониторинга соединения и отфильтровал "DNS" - я мог видеть поиск доменов, которые я не просматривал. К счастью, я узнал один домен в качестве приложения для моего ключа FireTV (версия 2017 года). Вся проблема заключалась в том, что FireTV "украл" аренду через DHCP на моем маршрутизаторе для настольного компьютера, у которого были проблемы; предположительно он получал половину пакетов, или маршрутизатор запутался из-за наличия двух устройств в одной локальной подсети с одинаковым IP-адресом.
Исправление было в том, чтобы "забыть" сетевое соединение на FireTV. При настройке соединения выбирайте "вручную", а между кнопками "ОК" и "Отмена" есть небольшая "расширенная кнопка" (которую я пропустил в первый раз). Я выбрал другой IP, теперь все работает.
Следует отметить, что у маршрутизатора есть раздел для просмотра всех подключенных устройств по IP и MAC, когда два устройства подключались с одинаковым IP, маршрутизатор не показывал ни одно устройство (но продолжал показывать другие устройства в сети).
[Не уверен, стоит ли хранить это здесь или удалить и опубликовать где-то еще?]