NSLOOKUP falha consistentemente para servidores de nomes específicos quando usado em seu prompt

0

Meu objetivo é verificar se todos os servidores de nome do meu domínio estão trabalhando com a seguinte sequência de comandos no nslookup (respostas omitidas aqui):

set type=soa
example.com
set type=a+aaaa
example.com ns1.name_server.com
example.com ns2.name_server.com
example.com ns3.name_server.com
example.com ns4.name_server.com

Onde os servidores de nomes ns1, ns2, ns3 e ns4 são todos tirados da lista fornecida na SOA.

O problema é que apenas no Windows, alguns, mas não todos os comandos específicos do servidor de nomes retornam consistentemente %código% no caso de uma máquina com o Windows 10 Pro, e para o Server 2008R2, isso dá:

DNS request timed out.
    timeout was 2 seconds.  [it times out 4 times like this]
** Request to ns2.name_server.com timed-out

Quando testado com ferramentas on-line, um Mac e uma VM Linux (com o comando ** ns2.name_server.com can't find example.com: No response from server ), todos os servidores de nome (ns1, ns2, ns3, ns4) fornecem instantaneamente o registro A correto. Portanto, acredito que todas as entradas de DNS estão corretas e é um problema do Windows nslookup.

A solução alternativa que encontrei é emitir todos os comandos nslookup diretamente do prompt de comando - não dentro do prompt do nslookup. Todos estes dão a resposta correta:

c:>nslookup example.com ns1.name_server.com
c:>nslookup example.com ns2.name_server.com
c:>nslookup example.com ns3.name_server.com
c:>nslookup example.com ns4.name_server.com

O mais estranho é que os servidores de nomes que falham (no prompt do nslookup) são específicos e repetíveis por máquina, então, por exemplo, meu Win10 é bem-sucedido para ns1, mas falha para ns2, ns3 e ns4. Na máquina 2008R2, apenas ns2 falha e ns1, ns3 e ns4 funcionam.

O problema ainda ocorre dentro do prompt, mesmo sem fazer a mudança inicial para o tipo SOA e vice-versa, ou seja, emitindo o host como o primeiro comando.

Eu suspeitava que o servidor padrão inicial pudesse ser o problema, porque o nslookup o atinge quando você entra em seu prompt de comando. Mas vejo o mesmo comportamento com o padrão de 8.8.8.8 ou com um roteador doméstico de baixo custo.

A única outra pista que vejo é alguma inconsistência em como o servidor de nomes especificado é relatado em termos de endereço IPv4 e endereço IPv6. Às vezes é v4, às vezes ambos. Mas eu não fui capaz de discernir um padrão consistente.

Pergunta: Estou usando o nslookup corretamente? Isso é um inseto? Existe um problema de IPv6 à espreita aqui?

Exemplo para tentar: Digite estes comandos em um prompt do nslookup em sua máquina Windows:

set type=soa
superuser.com   [check the current name servers and revise below accordingly if needed] 
set type=a+aaaa
superuser.com ns-1699.awsdns-20.co.uk
superuser.com ns-245.awsdns-30.com
superuser.com ns-cloud-d1.googledomains.com
superuser.com ns-cloud-d2.googledomains.com
    
por Ian W 29.06.2018 / 18:08

1 resposta

1

Eu encontrei a resposta aqui de quase 3 anos atrás, que afirma em parte:

... nslookup is broken on Windows..

...The DNS server is dual stacked, meaning that it has both IPv4 and IPv6 addresses. When performing the lookup by specifying the default DNS server as a command line option, nslookup properly loops through the IP addresses starting with IPv6 and ending on IPv4. However when using nslookup interactively, nslookup only tries the first address which is returned by the resolver, which will always be the IPv6 address.

The fix for this is to specify the DNS servers by IP address when using nslookup interactively or use nslookup non-interactively by specifying the default DNS server on the command line.

Note this only affects nslookup on Windows, modern versions of Linux and OS X use a fixed version of nslookup.

Assim, o nslookup está corrompido e é um problema do IPv6.

    
por 29.06.2018 / 19:22