O que é nslookup e como usar o comando

A ferramenta de linha de comando nslookup (name server lookup) serve para descobrir o endereço de IP ou o registro DNS de um hostname específico. Esse comando também suporta consultas reversas de DNS (reverse DNS lookups), basta inserir o endereço de IP do domínio que deseja buscar. 

O nslookup pode ser usado para tarefas relacionadas ao sistema de nomes de domínio (DNS), como para testes de servidor e resolução de problemas (troubleshooting). Para usar essa ferramenta, digite “nslookup” em uma interface de linha de comando (CLI) – como o Prompt de Comandos no Windows ou o Terminal no Linux e macOS.

Esse artigo vai explicar o que é o nslookup, o que ele faz, quais comandos possui e como utilizá-los. Por fim, vamos responder algumas das perguntas mais frequentes sobre a ferramenta. 

nslookup é uma ferramenta de linha de comando para descobrir endereços IP ou registros DNS de um nome de domínio específico. A ferramenta também suporta consultas reversas, permitindo que você encontre o domínio ligado a um endereço IP específico. Para utilizar o recurso, basta inserir “nslookup” no Prompt de Comandos ou Terminal do seu sistema operacional. 

Qual é o propósito do nslookup?

A principal utilidade do nslookup é encontrar informações detalhadas sobre um domínio específico. Essas informações tendem a ser essenciais para resolver problemas relacionados ao sistema DNS. 

Por exemplo, o nslookup é útil quando seu site não está funcionando e você quer descobrir, através de um ping, se o servidor de hospedagem está respondendo. Nesse caso, basta utilizar o seguinte comando para enviar uma solicitação de lookup para o endereço de IP:

nslookup seudominio.tld

Verifique se o servidor DNS está ativo utilizando a seguinte sintaxe:

nslookup seudominio.tld endereco.ip.do.servidor.dns

Se o servidor DNS estiver funcionando normalmente, você verá um resultado semelhante a este:

Caso contrário, se o DNS não responder à query, uma mensagem de erro será exibida. Isso pode indicar uma falha no servidor. 

Se você omitir o IP do servidor DNS, o nslookup envia uma solicitação ao servidor DNS padrão. 

Você pode alterar os servidores DNS utilizando:

nslookup
server endereco.ip.do.servidor.dns

Outro problema relacionado ao DNS pode ocorrer quando seu domínio está apontando para os nomes de servidor (nameservers) errados. Para verificar os nameservers de um domínio, rode:

nslookup -type=ns seudominio.tld

Além dos nameservers, você pode utilizar outro tipo de query para encontrar outros registros de recursos, como os registros AAAA, CNAME, LOC, PTR e MX.

Os registros DNS são informações sobre um nome de domínio que ficam armazenadas nos nameservers do sistema. O número máximo de entradas de DNS pode variar, chegando a até milhares de registros para um domínio com hospedagem DNS premium. Cada registro serve para um propósito diferente:

  • – responsável por conectar um nome de domínio a um endereço de IP. 
  • AAA – mesmo propósito do registro A, mas utilizando IPv6 ao invés de IPv4.
  • CNAME – informação sobre o nome alternativo de um domínio. 
  • LOC – especifica a localização geográfica de um nome de domínio. 
  • PTR – conecta um endereço de IP a um hostname e também é responsável pela troca de emails. Registros PTR exigem que o domínio tenha um endereço de IP dedicado.
  • MX – responsável pelos emails. Registros MX conectam o domínio ao servidor de email. 

Um registro PTR é essencial para uma consulta reversa de DNS, técnica que utiliza um endereço de IP para descobrir um nome de domínio. Um reverse DNS lookup ajuda o servidor de email a confirmar se as mensagens chegando na caixa de entrada estão vindo de fontes válidas. 

A consulta reversa de DNS consiste na sintaxe nslookup seguido do endereço de IP do hostname.

Por exemplo, se você deseja consultar o PTR do domínio google.com – considerando que o endereço de IP desse site é 142.250.4.113 – digite:

nslookup 142.250.4.113

Nesse exemplo, como indicado na imagem abaixo, podemos observar que o registro PTR do endereço de IP é sm-in-f113.1e100.net.

Configurar o registro PTR é essencial para utilizar serviços de email. Ele evita que emails retornem ao garantir que o endereço de IP do servidor de email é igual ao DNS de encaminhamento (forward DNS). 

De todo modo, já que esse registro exige um IP dedicado, você só pode configurar registros PTR em domínios hospedados em servidores virtuais privados

Lista de comandos nslookup 

Há vários tipos de comandos nslookup para consultar diferentes informações sobre um domínio. Os comandos mais utilizados incluem:

  • name – exibe informações sobre o nome do domínio ou hostname usando o servidor padrão.
  • server name – configura um servidor DNS padrão diferente utilizando as informações do servidor atual. 
  • root – configura o servidor raiz (root server) como o padrão.
  • set type=<record type> – query para consultar um tipo de registro DNS específico, como A, MX, PTR ou SOA. Use ANY para exibir todos os registros.
  • set debug  exibe informações de debugging sobre cada query – e suas respectivas respostas. 
  • set recurse – pede que o nameserver DNS solicite a outros servidores caso não consiga encontrar a informação. 
  • help – exibe uma lista de comandos nslookup e suas funções.
  • exit – fecha a ferramenta nslookup e retorna à interface de linha de comando. 

Como usar o nslookup 

Você pode utilizar o nslookup em basicamente qualquer aplicação de linha de comando de todos os sistemas operacionais – como o Command Prompt do Windows ou o Terminal do Linux e macOS.

Em outros sistemas operacionais, o nslookup funciona de forma similar – apesar de parecer um pouco diferente. Por exemplo, abaixo indicamos um exemplo de como ele funciona no Linux:

Há dois modos em que o nslookup pode ser usado – interativo e não-interativo. Apesar de ambos terem propósitos similares, foram desenvolvidos para casos diferentes.

O modo interativo (interactive) permite que os usuários utilizem parâmetros adicionais, assim podem fazer uma query para consultar múltiplas informações sobre domínios ou servidores.

Já o modo não interativo (non-interactive) oferece apenas uma única informação sobre um domínio ou host a cada query. 

Para entrar no modo interativo, digite nslookup sem argumentos na sua interface de linha de comando. Serão exibidas informações como o nome do servidor padrão, endereços e a linha na qual você pode inserir um nome de domínio ou comandos diferentes

Para acessar o modo não-interativo, digite nslookup seguido de um nome de domínio como primeiro argumento. Precedendo o nome de domínio, você pode usar vários comandos para consultar diferentes informações. Ou, depois do domínio, pode inserir um endereço de nameserver. 

No modo não-interativo, você deverá digitar o domínio e o comando na mesma linha. Por outro lado, o modo interativo usa uma linha para cada domínio e argumento. 

Às vezes, a consulta nslookup retorna com uma resposta não autoritativa (non-authoritative answer). Isso acontece quando as informações são encontradas a partir do cache do servidor DNS e não do servidor autoritativo do domínio (authoritative server). 

Quando você está acessando um site pela primeira vez, seu navegador consulta o recursor DNS (DNS resolver) em busca do endereço de IP do domínio. Por sua vez, esse resolvedor recursivo consulta o servidor raiz (root) e é direcionado ao servidor top-level domain (TLD) do domínio em questão.

Depois, o servidor TLD envia uma resposta direcionando o  recursor DNS ao servidor autoritativo. Nesse momento, o DNS resolver consulta o authoritative server em busca de informações, incluindo o endereço de IP e os registros DNS. 

O servidor autoritativo responde a query com o endereço do domínio e os registros DNS, entregando essas informações ao recursor DNS que, por sua vez, encaminha essas informações ao usuário. Agora o navegador pode se conectar ao domínio por ter recebido a informação do endereço de IP.

Tanto o servidor resolver quanto o servidor do usuário vão armazenar as informações do domínio localmente – através do cache de DNS. Assim, quando o usuário volta a acessar o mesmo site, não há necessidade de repetir todo esse processo de consulta entre servidores e recursor. O navegador poderá simplesmente encontrar o endereço de IP do domínio no cache DNS. 

Respostas não-autoritativas, portanto, estão possivelmente  desatualizadas porque as informações foram localizadas no armazenamento em cache. Por esse motivo, não são adequadas para propósitos de troubleshooting. Para encontrar uma resposta autoritativa, utilize:

nslookup -type=soa seudominio.tld

Será gerada uma query consultando o registro SOA (standard of authority), que contém informações importantes sobre o domínio especificado. Por exemplo, se você quer uma resposta autoritativa para o domínio google.com:

Como você só precisa do nameserver primário, não há mais necessidade de se preocupar com a resposta não-autoritativa. 

Utilize o nameserver primário para realizar sua consulta. A mensagem de resposta não-autoritativa deverá desaparecer:

Use o nslookup para consultar servidores DNS a partir do navegador

Você pode encontrar informações sobre servidores DNS a partir do seu navegador, utilizando ferramentas online, como ping.eu ou centralops.net. Ambas aplicações web oferecem funções básicas de nslookup. De todo modo, a última opção conta com mais recursos avançados, como o recursor DNS.

Conclusão

nslookup é uma ferramenta de linha de comando para encontrar informações sobre um domínio, incluindo o endereço de IP e os registros DNS. Para utilizar esse recurso, digite “nslookup” no Prompt de Comando ou no Terminal do seu computador. 

Utilizando vários comandos nslookup, você poderá encontrar diferentes informações sobre o domínio. Essa ferramenta pode ajudar a resolver problemas relacionados ao DNS de um site. Mas lembre-se de que ao usar esse comando, a resposta do servidor deve ser autoritativa. Isso pode ser garantido através da solicitação dos registros SOA do domínio. 

Para aprofundar ainda mais seu conhecimento sobre nslookup, na seção abaixo trazemos as respostas das perguntas mais frequentes sobre esse comando.

O que é nslookup: perguntas frequentes

Qual a diferença entre nslookup e Ping?

Ambos são recursos úteis para resolver problemas de rede, mas o ping conta com passos adicionais para conferir a conexão de um nome de domínio a um endereço de IP. Já o nslookup lida apenas com o servidor DNS. 

Usar o comando ping permite verificar se um endereço de IP existe, além de conseguir fazer solicitações. O nslookup, por outro lado, oferece informações sobre endereços de IP e registros DNS de nomes de domínio. 

Quais são os diferentes modos do comando nslookup?

Há dois modos de consulta: interativo e não interativo. Ambos trazem as mesmas informações sobre o servidor. Entretanto, são utilizados em casos diferentes. 

Recomendamos o nslookup no modo interativo para consultar múltiplas informações. Para isso, basta digitar nslookup sem argumentos e inserir diferentes comandos, endereços de IP ou nomes de domínio nas linhas seguintes. 

Utilize o modo não-interativo quando estiver em busca de uma única informação. Para isso, digite nslookup seguido do nome do domínio como primeiro argumento e o endereço de IP do servidor DNS como segundo argumento. 

O nslookup é um DNS?

São coisas diferentes, mas a ferramenta nslookup exige um DNS para funcionar. O DNS é o sistema que conecta um nome de domínio ao endereço de IP. Enquanto isso, o nslookup é um recurso que permite que os usuários façam solicitações aos servidores DNS buscando informações sobre um domínio. 

Author
O autor

Bruno Santana

Jornalista formado pela Universidade Federal da Bahia e Especialista em Marketing de Conteúdo na Hostinger, onde atuo na criação e otimização de artigos úteis, envolventes e criativos em áreas como desenvolvimento web e, marketing. Além disso, sou colaborador eventual do site MacMagazine e da editoria de cultura do Jornal A Tarde, fascinado por arte, culinária e tecnologia.