Eu tenho um nome de domínio mapeado para um endereço de sub-rede local para que eu possa testar facilmente em vários dispositivos (os mapas de test.internetdancefloor.com para 192.168.1.88 ou algo parecido). Este endereço funciona em minhas máquinas Windows, no entanto, ele não funciona nos meus dispositivos Android ou Mac. Quando executo o nslookup no meu mac, o DNS falha:
users-mbp:~ user$ nslookup internetdancefloor.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: internetdancefloor.com
Address: 174.127.248.98
users-mbp:~ user$ nslookup test.internetdancefloor.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
*** Can't find test.internetdancefloor.com: No answer
Alguma idéia do motivo pelo qual o nslookup para o test.internetdancefloor.com é bem-sucedido em algumas máquinas, mas não em outras?
Minha hipótese é que o cliente DNS em dispositivos mac e android rejeita endereços IP de sub-rede locais, porque adicionei uma entrada DNS tradicional (version.internetdancefloor.com) posteriormente e ela funciona bem em todos os dispositivos. Eu não fui capaz de muito esta hipótese de outra forma.
@Alex:
users-MacBook-Pro:videoplayer user$ cat /etc/resolv.conf
#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#
nameserver 192.168.1.1
Atualização:
Observamos que o Mac está usando o roteador diretamente como um servidor DNS, em vez dos servidores DNS que o roteador está configurado para usar. Minha máquina Windows não usa o roteador (192.168.1.1) como o servidor DNS, mas pega os IPs estáticos que o roteador está configurado para usar (via DHCP eu acho).
Quando uso o nslookup do meu PC, mas seleciono o servidor DNS, vejo que o roteador é o único que está reprovando as solicitações DNS e não os servidores DNS upstream. Quando não especifico um servidor DNS, ele não é padronizado para 192.168.1.1, mas usa diretamente o servidor DNS upstream (208.76.152.1)
C:\src> nslookup test.internetdancefloor.com
Server: DNSresolver-A.spectrumnet.us
Address: 208.76.152.1
Non-authoritative answer:
Name: test.internetdancefloor.com
Address: 192.168.1.88
C:\src> nslookup test.internetdancefloor.com 208.76.152.1
Server: DNSresolver-A.spectrumnet.us
Address: 208.76.152.1
Non-authoritative answer:
Name: test.internetdancefloor.com
Address: 192.168.1.88
C:\src> nslookup test.internetdancefloor.com 192.168.1.1
Server: unknown
Address: 192.168.1.1
*** No internal type for both IPv4 and IPv6 Addresses (A+AAAA) records available for test.internetdancefloor.com
Parece antinatural configurar meus dispositivos Android e Mac para usar um servidor DNS específico, embora eu suponha que isso funcione. Talvez o meu roteador esteja filtrando determinados resultados de DNS que apontam para a mesma sub-rede, e isso pode ser desfeito. Gostaria de saber por que meus dispositivos Mac / Android escolhem 192.168.1.1 para seu servidor DNS? Esses dispositivos estão em uma conexão sem fio enquanto meus PCs estão conectados, então talvez seja uma diferença sem fio / com fio.