A resolução do domínio (systemd-resolved) está desarrumada, como ela pode ser corrigida?

1

Desculpe este é um longo, o TL; DR é que a resolução de domínio (e talvez outras coisas) funciona apenas de forma intermitente e, portanto, a internet só funciona de forma intermitente. Eu gostaria de consertar isso: Kubuntu 17.04.

Existem vários sintomas: em 20170605 eu coloquei o computador para conectar um dispositivo remoto ao uso do plex mas a conexão do dispositivo remoto na mesma sub-rede para o computador local usando wifi através de um dongle ath9k_htc TP-LINK era intermitente. Eu tinha executado atualizações recentes (pastebin) , mas elas pareciam não estar relacionadas à resolução do DNS.

Ping usando mtr com intervalo de 2s, o DNS do Google em 8.8.8.8 eu recebo:

 1. 192.168.1.1              ...............................????????????????...............????????????????...........................................................................??????????.....................???????.........
 2. 81.1.112.44              ...............................????????????????...............????????????????.........>.................................................................?????????......................???????.........

As perguntas mostram quando a conexão falha, os intervalos são 32s, 32s, 22s, 14s, ou seja, irregulares.

Inicialmente, pensei que o systemd-resolved era o responsável, sudo systemctl status wpa_supplicant.service NetworkManager.service systemd-resolved retorna o seguinte:

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.

Em outras palavras, pelo menos 3 sistemas estão em estados de erro:

1) Isso está mostrando o erro em este post sobre o wpa_supplicant / NetworkManager ; a solução de removendo randomização do endereço MAC modificando NetworkManager.conf é ineficaz para mim.

2a) o erro em este post sobre recodificação em wpa_supplicant ; novamente a correção não me ajuda, pois não tenho um roteador no qual eu possa "Definir o período de atualização da chave de grupo WPA / WPA2".

2b) o mesmo erro é reportar aqui com instruções para alterar o PMF (Protected Management Frames), novamente meu roteador wifi não oferece acesso a isso.

3) o terceiro erro também pode ser visto por tail -ing /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.

Esses erros se repetem muito. Quando o sistema está conectado à rede, eles param, e quando mtr 8.8.8.8 mostra que os pings estão falhando, os erros acima são iniciados novamente, quase como se fosse uma condição de corrida.

3a) os erros em systemd-resolved se parecem muito com esta questão mas a correção de desligar o DNSSEC não funciona para mim , na verdade esse foi o padrão, embora eu tenha ido em frente e especificado como off em systemd-resolved.conf .

3b) ele se parece muito com esse problema do Valet Linux de pré-lançamento , em que dnsmasq foi aparentemente interferindo com o resolvedor do systemd. Eu tenho tinha dnsmasq no passado, mas não tenho atualmente .

3c) um tópico do fórum de 16.10 sugere remover o dnsmasq como solução, para recapitular I não tê-lo instalado (mas tinha dnsmasq-base como residual, removendo-o era ineficaz).

FWIW Eu uso um IP estático conectando via wifi a um modem-roteador ADSL com OpenDNS (com o Google como fallback) definido através da interface do KDE NetworkManager.

Praticamente reiniciar qualquer item da rede, por exemplo, sudo systemctl restart networking.service parece consertar as coisas muito rapidamente, mas a transitoriedade do erro torna difícil dizer - a conexão está literalmente subindo e descendo o tempo todo, o menor é ~ 2s, maior tempo é ~ 60s.

Fazendo journalctl -x --utc --system | grep -C3 -i error recebo linhas como:

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

A remoção da conexão via applet do NetworkManager do KDE parece ter corrigido este erro de "propriedade está faltando" e temporariamente eu obtive a conexão de rede de volta, mas na reinicialização estou de volta aos mesmos problemas de resolvedor de DNS [aparentemente] e esse erro é não aparece mais no diário.

Parece que tenho que tentar sudo systemctl disable systemd-resolved e voltar para dnsmasq ou, eu sei, usando unbound (this solução sugere o uso de resolvconf ), ou talvez a configuração de servidores de nomes estáticos?

Então, o que tentar em seguida?

Para antecipar a sugestão, meu /etc/resolv.conf já é um link simbólico para / run / systemd / ... e realmente aguenta ... não, não ...

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

Parece que funcionou, agora estou obtendo trechos mais longos ~ 200s, onde mtr pings com sucesso, mas ainda caindo e ainda com erros, é syslog como:

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.

Ajuda!?

    
por pbhj 06.06.2017 / 15:56

1 resposta

0

Eu usei o Wireshark para monitorar a conexão e filtrar em "DNS" - eu podia ver pesquisas de domínios que eu não estava olhando. Felizmente eu reconheci um como um domínio para um aplicativo no meu dongle FireTV (versão 2017). A questão toda era que a FireTV tinha "roubado" a concessão via DHCP no meu roteador para a área de trabalho que estava tendo problemas; presumivelmente, ele estava recebendo metade dos pacotes, ou o roteador estava ficando confuso com dois dispositivos na mesma sub-rede local com o mesmo endereço IP.

A correção foi "esquecer" a conexão de rede na FireTV. Ao configurar a conexão, escolha "manual" e entre os botões OK e Cancelar há um pequeno "botão avançado" (que eu perdi na primeira vez). Eu escolhi um IP diferente, agora tudo funciona.

Note que o roteador tem uma seção para visualizar todos os dispositivos conectados por IP & amp; MAC, quando os dois dispositivos estavam se conectando com o mesmo IP, o roteador não mostrava nenhum dispositivo (mas continuava mostrando outros dispositivos na rede).

[Não tem certeza se deseja manter isso aqui ou excluir e postar em outro lugar?]

    
por pbhj 10.06.2017 / 15:29