Parece que você pode ter dnsmasq process em 127.0.0.1 e systemd-resolved process em 127.0.0.53 passando consultas entre si, causando um loop. Mesmo dnsmasq sozinho pode ser capaz de fazer um loop, pois, por padrão, ele procura em /etc/resolv.conf para encontrar os servidores DNS reais a serem usados para os nomes para os quais não tem informações.
Sua configuração de DNS provavelmente tem muitas camadas:
- Primeiro, há as informações do servidor DNS obtidas do seu provedor por DHCP ou similar.
- então, há
NetworkManager, que pode ser configurado para substituir as informações e usardnsmasq, mas não está configurado dessa maneira. - , em vez disso,
NetworkManagerestá configurado para usar a ferramentaresolvconfpara atualizar o% real/etc/resolv.conf. Ednsmasqpode incluir uma configuração de entrada pararesolvconfpara substituir quaisquer serviços DNS recebidos pelo DHCP e usar 127.0.0.1, enquantodnsmasqestiver sendo executado. - systemd-resolved também pode incluir uma configuração de entrada para
resolvconf, mas aparentemente está sendo substituída pordnsmasq.
O que eu ainda não entendo é de onde vêm os 127.0.1.1 e 127.0.0.53. Eles são talvez mencionados na configuração padrão dnsmasq no Ubuntu?
Como está escrito no comentário de /etc/resolv.conf , execute este comando para ver mais informações sobre systemd-resolved configuration:
systemd-resolve --status
Verifique também o conteúdo do diretório /run/resolvconf/interface/ : é onde a ferramenta resolvconf coleta todas as informações do servidor DNS obtidas de várias origens. O /etc/resolvconf/interface-order determinará a ordem na qual cada fonte é verificada, até que um endereço de loopback seja encontrado ou 3 servidores DNS tenham sido listados para real /etc/resolv.conf .
Como você está usando dnsmasq para configurar um domínio curinga, convém manter 127.0.0.1 em seu /etc/resolv.conf , mas convém configurar dnsmasq para não usar esse arquivo, mas obtenha os servidores DNS que deve usar em algum outro lugar.
Se /run/NetworkManager/resolv.conf contiver os servidores DNS que você recebe do seu provedor pelo DHCP, você pode facilmente usá-lo para dnsmasq adicionando esta linha à sua configuração:
resolv-file=/run/NetworkManager/resolv.conf
Isso diz a dnsmasq onde obter informações de DNS para as coisas que ainda não conhecem. Então, se você quiser usar o DNS do Google, pode configurar dnsmasq com
resolv-file=/etc/google-dns-resolv.conf
e insira as linhas de configuração do DNS do DNS do Google no formato normal para /etc/google-dns-resolv.conf .