Por que o DNS do roteador D-Link não retorna nomes de host locais?

3

Eu possuo um D-Link DIR-600. Você pode ver parte de sua configuração aqui:

Comovocêpodever,euconfigureidoisnomesdehostfixos,"wilson" e "sheldon". No entanto, se eu tentar acessá-los pelo nome, não importa de qual dos meus computadores na minha LAN, não importa se o Ubuntu / Windows, isso não funciona:

$ nslookup wilson
Server:     192.168.178.1
Address:    192.168.178.1#53

** server can't find wilson: NXDOMAIN

$ nslookup wilson.local
Server:     192.168.178.1
Address:    192.168.178.1#53

** server can't find wilson.local: NXDOMAIN

$ nslookup stackexchange.com
Server:     192.168.178.1
Address:    192.168.178.1#53

Non-authoritative answer:
Name:   stackexchange.com
Address: 69.59.197.21

Existe uma maneira de obter esses nomes de host, além de adicioná-los a / etc / hosts?

    
por Torsten Bronger 20.01.2013 / 15:27

1 resposta

4

Usando o Linux em ambas as correspondências, tente getent hosts wilson.local ou simplesmente ping wilson.local . Isso pressupõe que você já tenha o avahi-daemon e o nss-mdns instalados, o que geralmente é o caso.

Ferramentas DNS específicas, como nslookup e dig, não suportam automaticamente .local sobre MDNS (DNS multicast). Eles ignoram a biblioteca C padrão para resolução de nomes e não se integram ao avahi-daemon.

Eu também tentei definir "search local" em /etc/resolv.conf / pedindo ao NetworkManager para usar "local" como um domínio local. Ou seja permitindo ping wilson sem o .local. Mas parece que o nss-mdns não o implementa.

Eu não tenho instruções para o Windows. A maneira mais simples pode ser usar o Bonjour da Apple.

Esse é o sistema derivado da Apple que o Linux adotou. Há também uma alternativa baseada no Windows. O Linux pode se integrar a ele usando o daemon "winbind" do samba. Eu não tenho instruções para isso também:).

Eu não acho que o meu Netgear DG834 retorne nomes DNS locais também. Curiosamente, acho que eles poderiam se quisessem. Meu roteador e outros usam dnsmasq, e a configuração do default dnsmasq já retorna nomes DNS locais. Eu testei isso sozinho - eu corro o dnsmasq em um servidor Linux e desabilito / ignoro os serviços DHCP / DNS do meu roteador.

    
por 21.01.2013 / 10:25