A maioria das pessoas usa o nslookup como um comando único: nslookup example.com e pronto. Mas execute-o sem argumentos e ele vira uma sessão interativa, o que é útil quando uma consulta não basta.
O prompt
Digite nslookup sozinho e você obtém um prompt >. A partir daqui você digita nomes para consultá-los, e um pequeno conjunto de comandos para mudar como as consultas se comportam. Digite exit (ou Ctrl-D) para sair.
Os comandos que valem a pena
server 8.8.8.8troca o resolvedor usado em cada consulta seguinte da sessão. Esta é a forma mais limpa de comparar como dois resolvedores respondem ao mesmo nome: defina um servidor, consulte o nome, defina o outro, consulte de novo.set type=MX(ou a forma curtaset q=MX) muda o tipo de registro. Depois disso, você apenas digita nomes e recebe registros de volta. Defina comoNS,TXT,SOA,AAAAouANYconforme a necessidade. Isso substitui a flag-type=que você passaria na linha de comando.set debug(ouset d2para ainda mais) liga uma saída detalhada que mostra o pacote DNS completo, incluindo as flags do cabeçalho e a estrutura de seções que o nslookup normalmente esconde. É o mais perto que o nslookup chega do que o dig mostra por padrão.
Quando o interativo é a escolha certa
O modo interativo compensa quando você está explorando: verificando vários nomes em sequência, comparando o mesmo nome entre resolvedores, ou iterando sobre o tipo de registro sem redigitar o comando inteiro. Para uma verificação única, ou qualquer coisa que você queira colocar em um script, a forma de comando único (nslookup -type=MX example.com 8.8.8.8) é mais simples.
Uma ressalva para automação: o código de saída do nslookup não reflete de forma confiável se a consulta teve sucesso, então para scripting o dig ou o host são as ferramentas melhores. O nslookup interativo é para um humano no teclado, trabalhando um problema.
A armadilha: o nslookup não usa o resolvedor do sistema
O nslookup fala diretamente com um servidor DNS. Ele não consulta o /etc/hosts e, na maioria dos sistemas, ignora a biblioteca de resolução que as aplicações comuns usam.
Então um nome pode resolver perfeitamente no ping e falhar no nslookup, ou o contrário — e nenhum dos dois resultados está errado. Eles respondem perguntas diferentes: o nslookup responde "o que o DNS diz", e a aplicação responde "para o que este host resolve, por todos os mecanismos disponíveis a ele".
Quando um serviço funciona e o nslookup discorda, verifique o arquivo de hosts antes de verificar a zona. É a razão mais comum de duas ferramentas dizerem coisas opostas sobre o mesmo nome.