Nesta página, você verá informações sobre as métricas de geração de registros e monitoramento do Cloud DNS, incluindo zonas particulares e zonas de encaminhamento. Há também instruções sobre o monitoramento da propagação de suas alterações de DNS público.
Como usar a geração de registros do Cloud DNS
O registro do Cloud DNS rastreia consultas que os servidores de nomes resolvem para suas redes de nuvem privada virtual (VPC). As consultas de uma entidade externa diretamente a uma zona pública não são registradas porque um servidor de nomes público as processa.
As consultas registradas podem vir de instâncias de máquina virtual (VM) do Compute Engine, contêineres do Google Kubernetes Engine na mesma rede VPC, zonas de peering ou clientes locais que usam o encaminhamento de DNS de entrada. As zonas de DNS privado, os encaminhamentos de zonas de DNS, os servidores de nomes alternativos, as zonas internas do Google Cloud DNS ou as zonas de DNS externo podem resolver as consultas.
Os registros pertencem ao projeto que é proprietário da rede que transmitiu a solicitação. No caso da VPC compartilhada, os registros pertencem ao projeto host porque ele é proprietário da rede.
Ativar e desativar a geração de registros
Use as políticas de DNS para ativar e desativar a geração de registros para suas redes.
Para ativar a geração de registros em uma rede que não tem uma política de DNS, execute o
comando dns policies create
.
gcloud
gcloud dns policies create POLICY_NAME \ --networks=NETWORK \ --enable-logging \ --description=DESCRIPTION
Substitua:
POLICY_NAME
: o nome da política de DNS.NETWORK
: uma ou mais redes em uma lista separada por vírgulas.DESCRIPTION
: uma descrição da política.
Para ativar a geração de registros em uma rede que já tenha uma política de DNS, execute o
comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --enable-logging
Substitua:
POLICY_NAME
: o nome da política de DNS.NETWORK
: uma ou mais redes em uma lista separada por vírgulas.
Para desativar a geração de registros enquanto deixa a política em vigor,
execute o comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --no-enable-logging
Substitua:
POLICY_NAME
: o nome da política de DNS.NETWORK
: uma ou mais redes em uma lista separada por vírgulas.
Para excluir a política por completo, execute o comando
dns policies delete
.
gcloud
gcloud dns policies delete POLICY_NAME \
Substitua POLICY_NAME
pelo nome da política de DNS que
você quer excluir.
Como ver registros
Console
No Console do Google Cloud, acesse a página do Explorador de registros.
Como visualizar campos do formato de registro
Cada entrada de registro tem os seguintes campos, se aplicável. Alguns dos campos também são compartilhados com métricas de monitoramento.
Campo | Tipo de campo | Descrição | Usado em métricas |
---|---|---|---|
source_type |
String | Origem da consulta: inbound-forwarding , gce-vm |
Sim |
location |
String | Região do Google Cloud, por exemplo, us-east1 , de onde a resposta foi veiculada |
Sim |
project_id |
String | ID do projeto do Google Cloud da rede de onde a consulta foi recebida | Sim |
target_type |
String | Tipo de destino que resolve a consulta DNS: private-zone , forwarding-zone ,
forwarding-policy , peering-zone , internal , external |
Sim |
target_name |
String | O nome do destino, por exemplo, nome da zona, nome da política, nome da zona interna, nome de domínio externo. | Sim |
queryName |
String / DNS | Nome da consulta DNS, RFC 1035 4.1.2. | Não |
queryType |
String / DNS | Tipo de consulta de DNS, RFC 1035 4.1.2. | Não |
responseCode |
Número / DNS | Código de resposta, RFC 1035 4.1.1. | Não |
rdata |
String / DNS | Resposta de DNS no formato de apresentação, RFC 1035 5.1, truncado para 260 bytes | Não |
authAnswer |
Booleano / DNS | Resposta autoritativa, RFC 1035 | Não |
sourceNetwork |
String / Origem | Rede usada pela consulta para alcançar nosso sistema. | Não |
vmInstanceId |
Número / Origem | ID da instância da VM do Compute Engine, aplicável apenas a consultas iniciadas pelas VMs do Compute Engine. | Não |
vmInstanceName |
String / Origem | Nome da instância da VM do Compute Engine, aplicável apenas a consultas iniciadas pelas VMs do Compute Engine. | Não |
vmProjectId |
String / Origem | ID do projeto do Google Cloud da rede de onde a consulta foi enviada, aplicável somente a consultas iniciadas por VMs do Compute Engine | Não |
vmZoneName |
String / Origem | Nome da zona de VMs de onde a consulta foi enviada, aplicável apenas a consultas iniciadas por VMs do Compute Engine. | Não |
sourceIP |
String / Origem | IP que gerou a consulta | Não |
destinationIP |
String / Destino | Endereço IP de origem, aplicável somente a casos de encaminhamento. | Não |
protocol |
String / DNS | TCP | UDP |
Não |
egressError |
String | Erro de proxy de saída, o erro real informado pelo proxy de saída como recebido do servidor DNS local. Esse campo pode ser usado para diferenciar um SERVFAIL real retornado pelo DNS local versus um erro de rede encontrado pelo proxy de saída. |
Não |
Como solucionar problemas de encaminhamento de saída
Se você receber registros contendo SERVFAIL
sem determinados campos,
como destinationIP
, egressIP
e egressError
, consulte a
seção relacionada na documentação de solução de problemas.
Como monitorar métricas
O Cloud DNS exporta métricas de monitoramento para o Cloud Monitoring.
É possível monitorar a taxa de consultas e respostas de DNS que apontam para zonas particulares, zonas de encaminhamento, encaminhamento de política, zonas internas do Google Cloud e a Internet. O Monitoring está disponível na página Monitoring do Console do Google Cloud e na API Cloud Monitoring.
O DNS particular exporta a métrica
delta dns.googleapis.com/query/response_count
que contém o rótulo response_code
para contar o número de consultas por
código de resposta.
O rótulo response_code
é do tipo string
com os valores possíveis de
NOERROR
, FORMERR
, SERVFAIL
, NXDOMAIN
, NOTIMP
e UNKNOWN
.
Para definições desses códigos, consulte os
RCODEs de DNS IANA (em inglês).
A métrica é exportada com o tipo de recurso dns_query
, usando os
campos aplicáveis do formato de
registro.
Como monitorar a propagação de DNS
Quando você usa a ferramenta de linha de comando gcloud
ou a API REST para fazer alterações, as mudanças são
inicialmente marcadas como pendentes até que a operação seja concluída. Use a ferramenta
gcloud
ou a API REST para verificar o status das alterações
ou receber um histórico de alterações.
Uma operação é concluída (status: done
) quando o Cloud DNS atualizou com êxito o sistema que controla os servidores. Ainda pode levar um tempo antes que
todos os servidores de nomes sejam atualizados.
Como listar as alterações de uma zona gerenciada
Para listar as alterações de uma zona gerenciada, consulte as opções a seguir.
gcloud
Execute o comando dns record-sets changes list
:
gcloud dns record-sets changes list --zone=ZONE
Substitua ZONE
pelo nome da zona gerenciada com os conjuntos de
registros que você quer gerenciar.
Python
Como verificar a propagação do DNS
Para monitorar e verificar se o servidor de nomes DNS escolheu suas alterações, use
os comandos watch
e dig
. O exemplo a seguir demonstra como
pesquisar seu servidor de nomes e verificar quando um dos servidores de nomes da sua zona gerenciada
conseguiu uma alteração em um registro MX
.
Para pesquisar os servidores de nomes da zona, execute o
comando
dns managed-zones describe
:
gcloud dns managed-zones describe ZONE_NAME
Substitua ZONE_NAME
pelo nome de sua zona do
Cloud DNS.
Para verificar se os registros ainda estão disponíveis no seu servidor de nomes autoritativo,
execute o seguinte comando dig
:
watch dig example.com in MX @ZONE_NAME_SERVER
Substitua ZONE_NAME_SERVER
por um dos servidores de nomes da
zona gerenciada:
O comando watch
executa o comando dig
a cada 2 segundos por padrão. É possível usar esse comando para determinar quando seu servidor de nomes autoritativo realiza a alteração, o que ocorre em até 120 segundos. Depois que o servidor de nomes autoritativo estiver com a alteração, os resolvedores DNS podem começar a coletar o novo registro.
Os resolvedores que já têm o registro anterior armazenado em cache aguardam o valor TTL anterior do registro expirar.
Para executar o dig
no servidor de nomes do seu sistema, remova o @<address>
do comando dig
. Se você quiser monitorar a propagação para outros servidores
de nomes, altere address
para apontar para outros servidores.
A seguir
- Para adicionar, excluir ou atualizar registros, consulte Como gerenciar registros.
- Para criar, atualizar, listar e excluir zonas gerenciadas, consulte Como gerenciar zonas.
- Para achar soluções de problemas comuns que podem ser encontrados ao usar o Cloud DNS, consulte Solução de problemas.
- Para fazer referência à API, consulte API REST do Cloud DNS.
- Para uma visão geral do Cloud DNS, consulte Visão geral do Cloud DNS.