Comando dig do Linux
Em sistemas operacionais do tipo Unix, o comando dig realiza pesquisas de DNS da rede.
Descrição
O dig (que significa groper de informações de domínio ) é uma ferramenta flexível para interrogar servidores de nomes DNS. Ele realiza pesquisas de DNS e exibe as respostas retornadas dos servidores de nome consultados . A maioria dos administradores de DNS usa dig para solucionar problemas de DNS devido à sua flexibilidade, facilidade de uso e clareza de saída. Outras ferramentas de pesquisa tendem a ter menos funcionalidade do que cavar.
Embora dig seja normalmente usado com argumentos de linha de comando , ele também possui um modo de operação em lote para ler solicitações de pesquisa de um arquivo . Um resumo de seus argumentos e opções de linha de comando é impresso quando a opção -h é fornecida. Diferentemente das versões anteriores, a implementação do dig do BIND 9 permite que várias pesquisas sejam emitidas a partir da linha de comando.
A menos que seja solicitado a consultar um servidor de nomes específico, o dig tentará cada um dos servidores listados em /etc/resolv.conf .
Quando não são fornecidos argumentos ou opções de linha de comando, o dig executa uma consulta NS para ” . ” (A raiz).
É possível definir padrões por usuário para dig através de $ {HOME} /. Digrc . Este arquivo é lido e qualquer opção nele é aplicada antes dos argumentos da linha de comandos.
Os nomes das classes IN e CH se sobrepõem aos nomes dos domínios de nível superior IN e CH. Use as opções -t e -c para especificar o tipo e a classe, use -q para especificar o nome do domínio ou use “IN”. e “CH”. ao procurar esses domínios de nível superior .
Sintaxe
dig [@ server ] [-b address ] [-c class ] [-f filename ] [-k filename ] [-m] [-p port #] [-q name ] [-t type ] [-x addr ] [-y [ hmac :] name : key ] [-4] [-6] [ nome ] [ tipo ] [ classe ] [ consultaopt ...]
cavar [-h]
dig [ consulta-globalopt ...] [ consulta ...]
Opções
-b address | A opção -b define o endereço IP de origem da consulta para o endereço . Este deve ser um endereço válido em uma das interfaces de rede do host ou “0.0.0.0” ou “::”. Uma porta opcional pode ser especificada anexando “# <port> “ |
-c class | A classe de consulta padrão ( IN para Internet ) é substituída pela opção -c . classe é qualquer classe válida, como HS para registros Hesiod ou CH para registros CHAOSNET. |
-f filename | A opção -f faz com que o dig opere no modo em lote lendo uma lista de solicitações de pesquisa a serem processadas no nome do arquivo. O arquivo contém muitas consultas, uma por linha. Cada entrada no arquivo deve ser organizada da mesma maneira que seria apresentada como consultas a serem escavadas usando a interface da linha de comandos. |
-p port # | Se um número de porta não padrão precisar ser consultado, a opção -p será usada. port # é o número da porta que o escav enviará suas consultas em vez do número da porta DNS padrão 53. Essa opção seria usada para testar um servidor de nomes configurado para escutar consultas em um número de porta não padrão. |
-4 | A opção -4 força o dig a usar apenas o transporte de consulta IPv4 . |
-6 | A opção -6 força o dig a usar apenas o transporte de consulta IPv6 . |
-t type | A opção -t define o tipo de consulta para o tipo . Pode ser qualquer tipo de consulta válido suportado no BIND9. O tipo de consulta padrão ” A “, a menos que a opção -x seja fornecida para indicar uma pesquisa inversa . Uma transferência de zona pode ser solicitada especificando um AXFR . Quando uma transferência de zona incremental ( IXFR ) é necessária, o tipo é definido como ixfr = N. A transferência incremental da zona conterá as alterações feitas na zona, pois o número de série no registro SOA da zona era N. |
-x addr | As pesquisas reversas (mapeamento de endereços para nomes) são simplificadas pela opção -x . addr é um endereço IPv4 em notação decimal pontilhada ou um endereço IPv6 delimitado por dois pontos. Quando essa opção é usada, não há necessidade de fornecer os argumentos de nome, classe e tipo. A escavação executa automaticamente uma pesquisa por um nome como 11.12.13.10.in-addr.arpa e define o tipo e a classe de consulta como PTR e IN, respectivamente. Por padrão, os endereços IPv6 são pesquisados usando o formato nibble no domínio IP6.ARPA. Para usar o método RFC1886 mais antigo usando o domínio IP6.INT, especifique a opção -i . Os rótulos de cadeia de bits (RFC2874) agora são experimentais e não são tentados. |
-k filename | Para assinar as consultas DNS enviadas por dig e suas respostas usando TSIG (assinaturas de transação), especifique um arquivo de chave TSIG usando a opção -k . |
-y [ hmac : ] nome : chave | Você também pode especificar a própria chave TSIG na linha de comandos usando a opção -y ; name é o nome da chave TSIG e key é a chave real. A chave é uma cadeia codificada em base 64, gerada pelo dnssec-keygen . Deve-se tomar cuidado ao usar a opção -y em sistemas multiusuário, pois a chave pode ser visível na saída do ps ou no arquivo de histórico do shell . Ao usar a autenticação TSIG com dig, o servidor de nomes consultado precisa conhecer a chave e o algoritmo que está sendo usado. No BIND, isso é feito fornecendo instruções apropriadas de chave e servidor em named.conf . |
Uso simples
Uma invocação típica de dig se parece com:
dig @server name type
Onde:
- server é o nome ou endereço IP do servidor de nomes a ser consultado. Pode ser um endereço IPv4 em notação decimal pontilhada ou um endereço IPv6 em notação delimitada por dois pontos. Quando o argumento do servidor fornecido é um nome de host , o dig resolve esse nome antes de consultar o servidor de nomes. Se nenhum argumento do servidor for fornecido, digite consulta /etc/resolv.conf e consulta os servidores de nomes listados lá. A resposta do servidor de nomes que responde é exibida.
- name é o nome do registro de recurso que deve ser procurado.
- tipo indica que tipo de consulta é necessária – QUALQUER tipo , A , MX , SIG etc. pode ser qualquer tipo de consulta válido. Se nenhum argumento de tipo for fornecido, o dig executará uma pesquisa para um registro A.
Opções de consulta
O dig fornece muitas opções de consulta que afetam a maneira como as pesquisas são feitas e os resultados exibidos. Alguns desses bits de sinalizador configurados ou redefinidos no cabeçalho da consulta, alguns determinam quais seções da resposta são impressas e outros determinam as estratégias de tempo limite e de nova tentativa.
Cada opção de consulta é identificada por uma palavra-chave precedida por um sinal de mais ( + ). Algumas palavras-chave definem ou redefinem uma opção. Eles podem ser precedidos pela sequência no para negar o significado dessa palavra-chave. Outras palavras-chave atribuem valores a opções como o intervalo de tempo limite . Eles têm o formato + palavra-chave = valor . As opções de consulta são:
+ [no] tcp | Use [não use] TCP ao consultar servidores de nomes. O comportamento padrão é usar UDP, a menos que uma consulta AXFR ou IXFR seja solicitada; nesse caso, uma conexão TCP é usada. |
+ [no] vc | Use [não use] TCP ao consultar servidores de nomes. Essa sintaxe alternativa para + [no] tcp é fornecida para compatibilidade com versões anterioresS . O “vc” significa “circuito virtual”. |
+[no]ignore | Ignore o truncamento nas respostas UDP em vez de tentar novamente com o TCP. Por padrão, as novas tentativas de TCP são executadas. |
+domain=somename | Defina a lista de pesquisa para conter o único nome de um nome de domínio, como se especificado em uma diretiva de domínio em /etc/resolv.conf , e ative o processamento da lista de pesquisa como se a opção + pesquisa fosse fornecida. |
+[no]search | Use [não use] a lista de pesquisa definida pela lista de pesquisa ou diretiva de domínio em resolv.conf (se houver). A lista de pesquisa não é usada por padrão. |
+[no]showsearch | Realize [não realize] uma pesquisa mostrando resultados intermediários. |
+ [no] defname | Descontinuado, tratado como sinônimo da pesquisa + [no] |
+ [no] aaonly | Define o sinalizador ” aa ” na consulta. |
+ [no] aaflag | Um sinônimo para + [no] aaonly. |
+ [no] adflag | Defina [não defina] o bit AD (dados autênticos) na consulta. Isso solicita que o servidor retorne se todas as seções de resposta e autoridade foram todas validadas como seguras de acordo com a política de segurança do servidor. AD = 1 indica que todos os registros foram validados como seguros e a resposta não é de um intervalo OPT-OUT. AD = 0 indica que parte da resposta foi insegura ou não foi validada. |
+ [no] cdflag | Defina [não defina] o bit do CD (verificação desativada) na consulta. Isso solicita que o servidor não execute a validação de respostas DNSSEC. |
+ [no] cl | Exiba [não exiba] a CLASS ao imprimir o registro. |
+ [no] ttlid | Exiba [não exiba] o TTL ao imprimir o registro. |
+[no]recurse | Alterne a configuração do bit RD (recursão desejada) na consulta. Esse bit é definido por padrão, o que significa que o dig envia normalmente consultas recursivas. A recursão é desativada automaticamente quando as opções de consulta + nssearch ou + trace são usadas. |
+ [no] nssearch | Quando essa opção é configurada, o dig tenta encontrar os servidores de nomes com autoridade para a zona que contém o nome que está sendo procurado e exibe o registro SOA que cada servidor de nomes possui para a zona. |
+[no]trace | Alterne o rastreamento do caminho da delegação nos servidores de nomes raiz para o nome que está sendo pesquisado. O rastreamento está desativado por padrão. Quando o rastreamento está ativado, o dig faz consultas interativas para resolver o nome que está sendo pesquisado. Ele seguirá as referências dos servidores raiz, mostrando a resposta de cada servidor usado para resolver a pesquisa. |
+ [no] cmd | Alterna a impressão do comentário inicial na saída, identificando a versão do dig e as opções de consulta que foram aplicadas. Este comentário é impresso por padrão. |
+[no]short | Forneça uma resposta concisa. O padrão é imprimir a resposta de forma detalhada. |
+[no]identify | Mostre [ou não mostre] o endereço IP e o número da porta que forneceram a resposta quando a opção + curta está ativada. Se respostas curtas forem solicitadas, o padrão é não mostrar o endereço de origem e o número da porta do servidor que forneceu a resposta. |
+[no]comments | Alterna a exibição das linhas de comentário na saída. O padrão é imprimir comentários. |
+[no]stats | Esta opção de consulta alterna a impressão de estatísticas: quando a consulta foi feita, o tamanho da resposta, etc. O comportamento padrão é imprimir as estatísticas da consulta. |
+ [no]qr | Imprimir [não imprimir] a consulta conforme ela é enviada. Por padrão, a consulta não é impressa. |
+[no]question | Imprimir [não imprimir] a seção de perguntas de uma consulta quando uma resposta for retornada. O padrão é imprimir a seção de perguntas como um comentário. |
+[no]answer | Exibir [não exibir] a seção de resposta de uma resposta. O padrão é exibi-lo. |
+[no]authority | Exibir [não exibir] a seção de autoridade de uma resposta. O padrão é exibi-lo. |
+[no]additional | Exibir [não exibir] a seção adicional de uma resposta. O padrão é exibi-lo. |
+[no]all | Defina ou limpe todos os sinalizadores da tela. |
+time=T | Define o tempo limite da consulta para T segundos. O tempo limite padrão é de 5 segundos. Uma tentativa de definir T como menor que 1 resultará em um tempo limite de consulta de 1 segundo sendo aplicado. |
+tries=T | Define o número de vezes para tentar consultas UDP no servidor como T em vez do padrão, 3. Se T for menor ou igual a zero, o número de tentativas é silenciosamente arredondado para 1. |
+retry=T | Define o número de vezes para tentar novamente as consultas UDP no servidor como T, em vez do padrão, 2. Ao contrário de + tentativas, isso não inclui a consulta inicial. |
+ndots=D | Defina o número de pontos que devem aparecer no nome como D para que seja considerado absoluto. O valor padrão é aquele definido usando a instrução ndots em /etc/resolv.conf , ou 1 se nenhuma instrução ndots estiver presente. Nomes com menos pontos são interpretados como nomes relativos e serão pesquisados nos domínios listados na diretiva de pesquisa ou domínio em /etc/resolv.conf . |
+bufsize=B | Defina o tamanho do buffer da mensagem UDP anunciado usando EDNS0 para B bytesS . Os tamanhos máximo e mínimo desse buffer são 65535 e 0, respectivamente. Os valores fora desse intervalo são arredondados para cima ou para baixo adequadamente. Valores diferentes de zero farão com que uma consulta EDNS seja enviada. |
+edns=# | Especifique a versão do EDNS a ser usada em uma consulta. Os valores válidos são de 0 a 255. A configuração da versão EDNS fará com que uma consulta EDNS seja enviada. + noedns limpa a versão lembrada do EDNS. |
+[no]multiline | Imprima registros como os registros SOA em um formato detalhado de várias linhas com comentários legíveis por humanos. O padrão é imprimir cada registro em uma única linha, para facilitar a análise da máquina da saída de escavação. |
+ [no]onesoa | Imprima apenas um registro SOA (inicial) ao executar um AXFR. O padrão é imprimir os registros SOA inicial e final. |
+ [no]fail | Não tente o próximo servidor se você receber um SERVFAIL. O padrão é não tentar o próximo servidor que é o inverso do comportamento normal do resolvedor de stub. |
+[no]besteffort | Tente exibir o conteúdo de mensagens malformadas. O padrão é não exibir respostas malformadas. |
+ [no]dnssec | Solicita que os registros DNSSEC sejam enviados, definindo o bit DO (DNSSEC OK) no registro OPT na seção adicional da consulta. |
+ [no]sigchase | Perseguir cadeias de assinatura DNSSEC. Requer que o dig seja compilado com -DDIG_SIGCHASE. |
+trusted-key=#### | Especifica um arquivo que contém chaves confiáveis a serem usadas com + sigchase . Cada registro DNSKEY deve estar em sua própria linha. Se não especificado, o dig procurará /etc/trusted-key.key e, em seguida, confiável-key.key no diretório atual. Requer que o dig seja compilado com -DDIG_SIGCHASE. |
+[no]topdown | Ao perseguir cadeias de assinatura DNSSEC, execute uma validação de cima para baixo. Requer que o dig seja compilado com -DDIG_SIGCHASE. |
+[no]nsid | Inclua uma solicitação de ID do servidor de nome EDNS ao enviar uma consulta. |
Várias consultas
A implementação do dig do BIND 9 suporta a especificação de várias consultas na linha de comando (além de oferecer suporte à opção de arquivo em lote -f ). Cada uma dessas consultas pode ser fornecida com seu próprio conjunto de sinalizadores, opções e opções de consulta.
Nesse caso, cada argumento de consulta representa uma consulta individual na sintaxe da linha de comando descrita acima. Cada um consiste em qualquer uma das opções e sinalizadores padrão, o nome a ser pesquisado, um tipo e classe de consulta opcional e todas as opções de consulta que devem ser aplicadas a essa consulta.
Um conjunto global de opções de consulta, que deve ser aplicado a todas as consultas, também pode ser fornecido. Essas opções globais de consulta devem preceder a primeira tupla de nome, classe, tipo, opções, sinalizadores e opções de consulta fornecidas na linha de comando. Quaisquer opções globais de consulta (exceto a opção + [ no ] cmd ) podem ser substituídas por um conjunto específico de consultas. Por exemplo:
dig + qr www.isc.org qualquer -x 127.0.0.1 isc.org ns + noqr
mostra como o dig pode ser usado na linha de comando para fazer três pesquisas: QUALQUER consulta para www.isc.org, uma consulta reversa de 127.0.0.1 e uma consulta para os registros NS do isc.org. Uma opção de consulta global de + qr é aplicada, para que dig mostre a consulta inicial feita para cada pesquisa. A consulta final possui uma opção de consulta local + noqr, o que significa que o dig não imprimirá a consulta inicial quando pesquisar os registros NS para isc.org.
Suporte para IDN
Se o dig foi criado com suporte a IDN (nome de domínio internacionalizado), ele pode aceitar e exibir nomes de domínio não ASCII . dig converte adequadamente a codificação de caracteres do nome de domínio antes de enviar uma solicitação ao servidor DNS ou exibir uma resposta do servidor. Se você deseja desativar o suporte a IDN por algum motivo, define a variável de ambiente IDN_DISABLE. O suporte para IDN será desativado se a variável for definida quando o dig for executado.
Exemplos
dig computerhope.com
Digitar o comando acima exibirá informações semelhantes às seguintes:
; << >> DiG 9.8.3-P1 << >> computerhope.com ;; opções globais: + cmd ;; Tenho resposta: ;; - >> HEADER << - opcode: QUERY, status: NOERROR, id: 23826 ;; sinalizadores: qr rd ra; CONSULTA: 1, RESPOSTA: 1, AUTORIDADE: 0, ADICIONAL: 0 ;; SEÇÃO PERGUNTA: ; computerhope.com. EM UM ;; SEÇÃO DE RESPOSTA: computerhope.com. 86400 EM A 104.20.56.118 ;; Tempo de consulta: 51 ms ;; SERVIDOR: 192.168.1.1 # 53 (192.168.1.1) ;; QUANDO: Dom 23 de março 11:16:37 2014 ;; TAMANHO MSG rcvd: 50
Comandos relacionados
host – Converta um nome de host em um endereço IP e vice-versa.
nslookup – consulta um servidor de nomes para obter informações sobre um host remoto.