Linux getaddrinfo não funciona com domínios .local

1

Estou conectado por PPTP VPN a outra rede, principalmente uma rede Windows. Rodando o Ubuntu 16.04.1, recém instalado.

A maioria das coisas às quais gostaria de me conectar estão em um domínio .local. Eu acho que qualquer aplicativo que faz um getaddrinfo durante a fase de conexão para o domínio .local falhará:

Remmina, por exemplo, apresenta este erro:

tcp_connect: getaddrinfo (nome ou serviço desconhecido) Erro: negociação de segurança de protocolo ou falha de conexão

Eu configurei uma estação de trabalho no DNS em um domínio .local e .com, e ambos resolvem bem:

rduz@henry:~$ nslookup bidsk0127.redacted.local
Server:     127.0.1.1
Address:    127.0.1.1#53

Name:   bidsk0127.redacted.local
Address: 172.16.5.155

rduz@henry:~$ nslookup bidsk0127.redacted.com
Server:     127.0.1.1
Address:    127.0.1.1#53

Name:   bidsk0127.redacted.com
Address: 172.16.5.155

Eu posso me conectar bem ao nome .com, sem erro getaddrinfo. Não consigo me conectar ao .local, ele mostra o erro getaddrinfo.

Antigamente, no SLES, como eu me lembro, nós atualizávamos o /etc/host.conf para ter uma linha que dizia 'mdns off' para que a resolução local funcionasse. O homem host.conf não mostra mais como uma opção válida.

Existe alguma maneira de consertar as coisas para que a chamada getaddrinfo possa resolver corretamente um nome local.

Obrigado.

Atenciosamente, Rico

    
por Rich Duzenbury 15.12.2016 / 18:51

1 resposta

1

Mais googling e encontrei a resposta. No meu caso, eu não quero mdns, então atualizei o /etc/nsswitch.conf da seguinte forma:

root@henry:/etc# diff nsswitch.conf.orig nsswitch.conf
12c12
< hosts:          files mdns4_minimal [NOTFOUND=return] dns
---
> hosts:          files dns
    
por 15.12.2016 / 19:44