systemd-resolved não consulta servidor dns para domínio local

5

Desde a atualização para o 17.04, não consigo mais resolver endereços na minha rede local (silvesternet.local). Eu recebo a seguinte resposta:

$ systemd-resolve edgerouter
edgerouter: resolve call failed: No appropriate name servers or networks for name found

No diário, há apenas relatórios de tempos limite para transações relacionadas a essa pesquisa.

Eu usei o Wireshark para farejar o tráfego de rede, e parece que ele nem sequer tenta procurar o nome. Não há tráfego de DNS. Procurar outro domínio externo funciona bem.

Muitos problemas em torno do mesmo tópico mencionam a alteração do nsswitch.conf, mas isso não parece resolver nada. Minhas configurações atuais são:

hosts:          files mdns4_minimal dns [NOTFOUND=return] resolve [!UNAVAIL=return] mdns4
    
por Rob van der Most 22.05.2017 / 17:00

3 respostas

5

Acredito que isso seja por design.

O Ubuntu 17.04 mudou para systemd-resolved para resolução de nomes e usa apenas LLMNR (pesquisa de nome multicast) para resolução de nomes de rótulo único. Consulte este link para obter detalhes: link

Para o raciocínio por trás desta decisão, confira a resposta do poettering neste relatório de bug: link

UPD: Esse problema pode ser resolvido usando um domínio para rede local. Se a interface de rede estiver configurada (manualmente ou por DHCP) para usar um domínio de pesquisa, o systemd-resolved adicionará esse domínio a nomes de rótulo único e, em seguida, os procurará por meio do DNS unicast.

Obviamente, o servidor DNS local deve ser reconfigurado para reconhecer esses domínios. No caso do dnsmasq que lê pares locais de host para IP a partir de / etc / hosts, pode ser feito incluindo as seguintes instruções no dnsmasq.conf:

domain=mydomain.net
local=/mydomain.net/
expand-hosts

UPD2: Ou você pode reverter para dnsmasq conforme descrito aqui link

    
por ish-west 23.05.2017 / 17:46
2

O que funcionou para mim depois de atualizar para o 18.04 foi configurar o arquivo /etc/systemd/resolved.conf alterando o parâmetro Domains para o domínio (local ou como no meu caso mydomain.local). Eu também mudei o parâmetro DNS, mas parecia que não é relevante, mas eu mencionei apenas no caso de não ser verdade. Para mais informações, acesse o link .

Além disso, alterei a configuração do avahi (/etc/avahi/avahi-daemon.conf) para alterar o parâmetro de domínio dentro da seção do servidor de local (o padrão) para outra coisa, como algumas pessoas apontaram neste fórum.

Com as alterações mencionadas, posso acessar as máquinas usando nomes sem ponto, por exemplo, fazendo ping para o meu computador. A máquina é contatada com sucesso. No entanto, se eu fizer ping para mycomputer.mydomain.local, isso não funcionará, o FQDN não será resolvido como esperado.

Esperando que isso ajude em alguns casos ou leve a uma solução mais geral.

    
por Skyeagle 02.05.2018 / 23:19
0

enfrentei esse problema por causa do nsswitch.conf configurado incorretamente. Como 12.04 , a sequência seguiu o esperado. Nomes de host sem domínio são resolvidos com sucesso.

Mas a nova versão 17.04 (assim como a versão 16.10) do Ubuntu com o modelo antigo para configurar o sistema nss não funciona como antes.

Versão mal configurada de hosts , das versões antigas do ubuntu: hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

Versão de trabalho bem-sucedida de hosts , por exemplo, de 17.04: hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns

    
por vskubriev 30.08.2017 / 09:54