Esta página fornece informações sobre métricas de registro e monitoramento para Cloud DNS, incluindo zonas públicas ,zonas privadas, e zonas de encaminhamento . Esta página também fornece instruções para monitorar a propagação das alterações do seu DNS público.
Usar registro de DNS na nuvem
O registro de DNS na nuvem rastreia consultas que os servidores de nomes resolvem para suas redes de Nuvem Privada Virtual (VPC), bem como consultas de uma entidade externa diretamente para uma zona pública.
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 encaminhamento de DNS de entrada . Zonas DNS privadas, zonas DNS de encaminhamento, servidores de nomes alternativos,Google Cloud Zonas DNS ou zonas DNS externas podem eventualmente resolver as consultas.
Os registros de log pertencem ao projeto que possui a rede ou zona pública que carregou a solicitação. No caso da VPC compartilhada , os registros de log pertencem ao projeto host, pois o projeto host é o proprietário da rede.
Habilitar e desabilitar o registro para zonas gerenciadas privadas
Use políticas de DNS para habilitar ou desabilitar o registro em log para suas redes. Ao habilitar o registro em log de consultas, todas as consultas de DNS para uma zona privada gerenciada do Cloud DNS são registradas.
Para habilitar o registro em log para 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 o seguinte:
-
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 habilitar o registro em log para uma rede que tenha uma política de DNS existente, execute o comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --enable-logging
Substitua o seguinte:
-
POLICY_NAME
: o nome da política de DNS -
NETWORK
: uma ou mais redes em uma lista separada por vírgulas
Para desativar o registro e deixar a política em vigor, execute o comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --no-enable-logging
Substitua o seguinte:
-
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 completamente, 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ê deseja excluir.
Habilitar e desabilitar o registro para zonas públicas gerenciadas
Para ativar o registro em log para uma zona pública gerenciada existente, execute o comando dns managed-zones update
.
gcloud
gcloud dns managed-zones update ZONE_NAME --log-dns-queries \
Substitua ZONE_NAME
pelo nome da zona gerenciada por DNS para a qual você deseja habilitar o registro.
Para desativar o registro de uma zona pública gerenciada existente, execute o comando dns managed-zones update
.
gcloud
gcloud dns managed-zones update ZONE_NAME --no-log-dns-queries \
Substitua ZONE_NAME
pelo nome da zona gerenciada por DNS para a qual você deseja desabilitar o registro.
Ver registros
Você pode visualizar os registros no Google Cloud console.
Console
No Google Cloud console, vá para a página do Logs Explorer .
Exibir campos de formato de registro
Cada entrada de log possui os seguintes campos, se aplicável. Alguns campos também são compartilhados com métricas de monitoramento.
Campo | Tipo de campo | Descrição | Usado em métricas |
---|---|---|---|
alias_query_response_code ( visualização ) | Corda | O código de resposta retornado da consulta para resolver o nome canônico do registro ALIAS | Sim |
authAnswer | Booleano / DNS | Resposta autorizada, RFC 1035 | Não |
destinationIP | String / Alvo | Endereço IP de destino, aplicável apenas para casos de encaminhamento | Não |
egressError | Corda | Erro de proxy de saída, o erro real relatado pelo proxy de saída conforme recebido do servidor DNS local Este campo pode ser usado para diferenciar um SERVFAIL real retornado pelo DNS local em relação a um erro de rede encontrado pelo proxy de saída | Não |
healthyIps | Corda | Conjunto de endereços IP no ResourceRecordSet que são conhecidos como | Não |
location | Corda | Google Cloud região, por exemplo us-east1 , de onde a resposta foi enviada | Sim |
project_id | Corda | Google Cloud ID do projeto da rede da qual a consulta foi recebida | Sim |
protocol | Sequência de caracteres / DNS | TCP | UDP | Não |
queryName | Sequência de caracteres / DNS | Nome da consulta DNS, RFC 1035 4.1.2 | Não |
queryType | Sequência de caracteres / DNS | Tipo de consulta DNS, RFC 1035 4.1.2 | Não |
responseCode | Número / DNS | Código de resposta, RFC 1035 4.1.1 | Não |
rdata | Sequência de caracteres / DNS | Resposta DNS em formato de apresentação, RFC 1035 5.1 , truncado para 260 bytes | Não |
sourceIP | String / Fonte | IP de origem da consulta | Não |
sourceNetwork | String / Fonte | Rede de onde a consulta chegou ao nosso sistema | Não |
source_type | Corda | Fonte da consulta: inbound-forwarding , gce-vm | Não |
target_name | Corda | O nome do alvo, por exemplo, nome da zona, nome da política, nome da zona interna, nome do domínio externo | Sim |
target_type | Corda | Tipo de destino que resolve a consulta DNS: private-zone , forwarding-zone , forwarding-policy , peering-zone , internal , external | Sim |
unHealthyIps | Corda | Conjunto de endereços IP no ResourceRecordSet conhecido como | Não |
vmInstanceId | Número / Fonte | ID da instância da VM do Compute Engine, aplicável somente a consultas iniciadas por VMs do Compute Engine | Não |
vmInstanceName | String / Fonte | Nome da instância da VM do Compute Engine, aplicável somente a consultas iniciadas por VMs do Compute Engine | Não |
vmProjectId | String / Fonte | Google Cloud ID do projeto da rede da qual a consulta foi enviada, aplicável somente a consultas iniciadas por VMs do Compute Engine | Não |
vmZoneName | String / Fonte | Nome da zona da VM da qual a consulta foi enviada, aplicável somente a consultas iniciadas por VMs do Compute Engine | Não |
Preços
Todos os logs do Cloud DNS são gravados no Cloud Logging. Não há cobrança adicional do Cloud DNS por este serviço. No entanto, esses logs podem gerar custos adicionais de armazenamento, dependendo do tamanho dos logs gravados e armazenados.
Para fins de cálculo, o Cloud DNS grava aproximadamente 5 MB de dados de log para processar 10.000 consultas de DNS.
Para obter informações sobre preços do Cloud Logging, consulte Preços do Google Cloud Observability: Cloud Logging .
Solucionar problemas de encaminhamento de saída
Se você receber logs contendo SERVFAIL
que não possuem determinados campos, como destinationIP
, egressIP
e egressError
, consulte a seção relacionada na documentação de solução de problemas .
Monitorar métricas
O Cloud DNS exporta métricas de monitoramento para o Cloud Monitoring .
Você pode monitorar a taxa de consultas e respostas de DNS que apontam para zonas privadas, zonas de encaminhamento, encaminhamento de políticas, Google Cloud zonas e a internet. O monitoramento está disponível no Google Cloud página de monitoramento do console e na API de monitoramento em nuvem .
O DNS privado 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: NOERROR
, FORMERR
, SERVFAIL
, NXDOMAIN
, NOTIMP
e UNKNOWN
. Para obter as definições desses códigos, consulte os RCODEs de DNS da IANA .
A métrica é exportada sob o tipo de recurso dns_query
usando os campos aplicáveis do formato de registro de log.
Monitorar a propagação do DNS
Ao usar a CLI do Google Cloud ou a API REST para fazer alterações, elas são inicialmente marcadas como pendentes até que a operação seja concluída. Você pode usar a CLI do gcloud ou a API REST para verificar o status das alterações ou obter um histórico delas.
Uma operação é concluída (status: done
) quando o Cloud DNS atualiza com sucesso o sistema que controla os servidores. Ainda pode haver atrasos antes que todos os servidores de nomes sejam atualizados.
Listar alterações para uma zona gerenciada
Para listar alterações para uma zona gerenciada, execute o comando dns record-sets changes list
.
gcloud
gcloud dns record-sets changes list --zone=ZONE
Substitua ZONE
pelo nome da zona gerenciada cujos conjuntos de registros você deseja gerenciar.
Verificar propagação de DNS
Para monitorar e verificar se o servidor de nomes DNS detectou suas alterações, você pode usar os comandos watch
e dig
. O exemplo a seguir demonstra como consultar seu servidor de nomes e verificar quando um dos servidores de nomes da sua zona gerenciada detectou uma alteração em um registro MX
.
Para consultar os servidores de nomes da sua zona, execute o comando dns managed-zones describe
:
gcloud
gcloud dns managed-zones describe ZONE_NAME
Substitua ZONE_NAME
pelo nome da sua zona Cloud DNS.
Para verificar se os registros já estão disponíveis no seu servidor de nomes autoritativo, execute o seguinte comando dig
:
gcloud
watch dig example.com in MX @ZONE_NAME_SERVER
Substitua ZONE_NAME_SERVER
por um dos servidores de nomes da zona gerenciada.
Por padrão, o comando watch
executa o comando dig
a cada 2 segundos. Você pode usar este comando para determinar quando seu servidor de nomes autoritativo detecta sua alteração, o que deve ocorrer em até 120 segundos. Após o servidor de nomes autoritativo detectar a alteração, os resolvedores de DNS podem começar a detectar o novo registro. Os resolvedores que já possuem o registro anterior em cache aguardam a expiração do valor TTL anterior do registro.
Para executar dig
no servidor de nomes do seu sistema, você pode remover o @<address>
do comando dig
. Se quiser monitorar a propagação para outros servidores de nomes, você pode alterar o address
para apontar para outros servidores de nomes.
O que vem a seguir
- Para adicionar, excluir e atualizar registros, consulte Adicionar, modificar e excluir registros .
- Para criar, atualizar, listar e excluir zonas gerenciadas, consulte Gerenciando zonas .
- Para encontrar soluções para problemas comuns que você pode encontrar ao usar o Cloud DNS, consulte Solução de problemas .
- Para fazer referência à API, consulte API REST do Cloud DNS .
- Para obter uma visão geral do Cloud DNS, consulte Visão geral do Cloud DNS .