Esta página proporciona información sobre el registro y monitoreo de métricas para Cloud DNS, incluidas zonas públicas ,zonas privadas, y zonas de reenvío . Esta página también proporciona instrucciones para monitorear la propagación de los cambios de DNS público.
Utilice el registro de DNS en la nube
El registro de DNS en la nube rastrea las consultas que los servidores de nombres resuelven para sus redes de nube privada virtual (VPC), así como consultas de una entidad externa directamente a una zona pública.
Las consultas registradas pueden provenir de instancias de máquinas virtuales (VM) de Compute Engine, contenedores de Google Kubernetes Engine en la misma red de VPC, zonas de emparejamiento o clientes locales que utilizan reenvío de DNS entrante . Zonas DNS privadas, zonas DNS de reenvío, servidores de nombres alternativos, internos.Google Cloud Las zonas DNS, o zonas DNS externas, podrían eventualmente resolver las consultas.
Los registros de registro pertenecen al proyecto propietario de la red. o zona pública Que llevó la solicitud. En el caso de una VPC compartida , los registros pertenecen al proyecto host, ya que este es el propietario de la red.
Habilitar y deshabilitar el registro para zonas privadas administradas
Usa las políticas DNS para habilitar o deshabilitar el registro de tus redes. Al habilitar el registro de consultas, se registra cada consulta DNS a una zona privada administrada de Cloud DNS.
Para habilitar el registro de una red que no tiene una política DNS, ejecute el comando dns policies create
.
nube g
gcloud dns policies create POLICY_NAME \ --networks=NETWORK \ --enable-logging \ --description=DESCRIPTION
Reemplace lo siguiente:
-
POLICY_NAME
: el nombre de la política DNS -
NETWORK
: una o más redes en una lista separada por comas -
DESCRIPTION
: una descripción de la política
Para habilitar el registro de una red que tiene una política DNS existente, ejecute el comando dns policies update
.
nube g
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --enable-logging
Reemplace lo siguiente:
-
POLICY_NAME
: el nombre de la política DNS -
NETWORK
: una o más redes en una lista separada por comas
Para desactivar el registro y dejar la política vigente, ejecute el comando dns policies update
.
nube g
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --no-enable-logging
Reemplace lo siguiente:
-
POLICY_NAME
: el nombre de la política DNS -
NETWORK
: una o más redes en una lista separada por comas
Para eliminar la política por completo, ejecute el comando dns policies delete
.
nube g
gcloud dns policies delete POLICY_NAME \
Reemplace POLICY_NAME
con el nombre de la política DNS que desea eliminar.
Habilitar y deshabilitar el registro para zonas públicas administradas
Para activar el registro de una zona pública administrada existente, ejecute el comando dns managed-zones update
.
nube g
gcloud dns managed-zones update ZONE_NAME --log-dns-queries \
Reemplace ZONE_NAME
con el nombre de la zona administrada por DNS para la que desea habilitar el registro.
Para desactivar el registro de una zona administrada pública existente, ejecute el comando dns managed-zones update
.
nube g
gcloud dns managed-zones update ZONE_NAME --no-log-dns-queries \
Reemplace ZONE_NAME
con el nombre de la zona administrada por DNS para la cual desea deshabilitar el registro.
Ver registros
Puede ver los registros en el Google Cloud consola.
Consola
En el Google Cloud consola, vaya a la página Explorador de registros .
Ver campos de formato de registro
Cada entrada de registro contiene los siguientes campos, si corresponde. Algunos de estos campos también se comparten con las métricas de monitorización.
Campo | Tipo de campo | Descripción | Utilizado en métricas |
---|---|---|---|
alias_query_response_code ( Vista previa ) | Cadena | El código de respuesta devuelto de la consulta para resolver el nombre canónico del registro ALIAS | Sí |
authAnswer | Booleano / DNS | Respuesta autorizada, RFC 1035 | No |
destinationIP | Cadena / Objetivo | Dirección IP de destino, solo aplicable para casos de reenvío | No |
egressError | Cadena | Error de proxy de salida, el error real informado por el proxy de salida tal como lo recibió del servidor DNS local Este campo se puede usar para diferenciar un SERVFAIL real devuelto por el DNS local frente a un error de red detectado por el proxy de salida. | No |
healthyIps | Cadena | Conjunto de direcciones IP en ResourceRecordSet que se sabe que están | No |
location | Cadena | Google Cloud región, por ejemplo us-east1 , desde donde se sirvió la respuesta | Sí |
project_id | Cadena | Google Cloud ID del proyecto de la red desde la que se recibió la consulta | Sí |
protocol | Cadena / DNS | TCP | UDP | No |
queryName | Cadena / DNS | Nombre de consulta DNS, RFC 1035 4.1.2 | No |
queryType | Cadena / DNS | Tipo de consulta DNS, RFC 1035 4.1.2 | No |
responseCode | Número / DNS | Código de respuesta, RFC 1035 4.1.1 | No |
rdata | Cadena / DNS | Respuesta DNS en formato de presentación, RFC 1035 5.1 , truncada a 260 bytes | No |
sourceIP | Cadena / Fuente | IP que origina la consulta | No |
sourceNetwork | Cadena / Fuente | Red desde la que llegó la consulta a nuestro sistema | No |
source_type | Cadena | Origen de la consulta: inbound-forwarding , gce-vm | No |
target_name | Cadena | El nombre del destino, por ejemplo, nombre de zona, nombre de política, nombre de zona interna, nombre de dominio externo | Sí |
target_type | Cadena | Tipo de objetivo que resuelve la consulta DNS: private-zone , forwarding-zone , forwarding-policy , peering-zone , internal , external | Sí |
unHealthyIps | Cadena | Conjunto de direcciones IP en ResourceRecordSet que Cloud DNS considera que | No |
vmInstanceId | Número / Fuente | ID de instancia de máquina virtual de Compute Engine, solo aplicable a consultas iniciadas por máquinas virtuales de Compute Engine | No |
vmInstanceName | Cadena / Fuente | Nombre de instancia de máquina virtual de Compute Engine, solo aplicable a consultas iniciadas por máquinas virtuales de Compute Engine | No |
vmProjectId | Cadena / Fuente | Google Cloud ID del proyecto de la red desde la que se envió la consulta, solo aplicable a consultas iniciadas por máquinas virtuales de Compute Engine | No |
vmZoneName | Cadena / Fuente | Nombre de la zona de VM desde la que se envió la consulta, solo aplicable a consultas iniciadas por VM de Compute Engine | No |
Precios
Todos los registros de Cloud DNS se guardan en Cloud Logging. Este servicio es gratuito para Cloud DNS. Sin embargo, estos registros pueden generar costos de almacenamiento adicionales según el tamaño de los registros que se escriban y almacenen.
Para fines de cálculo, Cloud DNS escribe aproximadamente 5 MB de datos de registro para procesar 10 000 consultas DNS.
Para obtener información sobre los precios de Cloud Logging, consulta Precios de Google Cloud Observability: Cloud Logging .
Solucionar problemas de reenvío de salida
Si recibe registros que contienen SERVFAIL
a los que les faltan determinados campos, como destinationIP
, egressIP
y egressError
, consulte la sección relacionada en la documentación de Solución de problemas .
Monitorizar métricas
Cloud DNS exporta métricas de monitoreo a Cloud Monitoring .
Puede supervisar la tasa de consultas y respuestas de DNS que apuntan a zonas privadas, zonas de reenvío, reenvío de políticas, internas Google Cloud zonas e internet. El monitoreo está disponible en el Google Cloud Página de monitoreo de la consola y en la API de Cloud Monitoring .
El DNS privado exporta la métrica delta dns.googleapis.com/query/response_count
que contiene la etiqueta response_code
para contar la cantidad de consultas por código de respuesta.
La etiqueta response_code
es de tipo string
y sus valores posibles son NOERROR
, FORMERR
, SERVFAIL
, NXDOMAIN
, NOTIMP
y UNKNOWN
. Para consultar las definiciones de estos códigos, consulte los RCODE del DNS de la IANA .
La métrica se exporta bajo el tipo de recurso dns_query
utilizando los campos aplicables del formato de registro .
Monitorizar la propagación de DNS
Al usar la CLI de Google Cloud o la API REST para realizar cambios, estos se marcan inicialmente como pendientes hasta que se complete la operación. Puedes usar la CLI de gcloud o la API REST para comprobar el estado de los cambios o consultar su historial.
Una operación se completa (estado: done
) cuando Cloud DNS ha actualizado correctamente el sistema que controla los servidores. Es posible que aún haya demoras hasta que se actualicen todos los servidores de nombres.
Enumerar cambios para una zona administrada
Para enumerar los cambios de una zona administrada, ejecute el comando dns record-sets changes list
.
nube g
gcloud dns record-sets changes list --zone=ZONE
Reemplace ZONE
con el nombre de la zona administrada cuyos conjuntos de registros desea administrar.
Verificar la propagación de DNS
Para supervisar y verificar que el servidor de nombres DNS haya detectado los cambios, puede usar los comandos watch
y dig
. El siguiente ejemplo muestra cómo buscar su servidor de nombres y comprobar cuándo uno de los servidores de nombres de su zona administrada ha detectado un cambio en un registro MX
.
Para buscar los servidores de nombres de su zona, ejecute el comando dns managed-zones describe
:
nube g
gcloud dns managed-zones describe ZONE_NAME
Reemplace ZONE_NAME
con el nombre de su zona DNS en la nube.
Para comprobar si los registros ya están disponibles en su servidor de nombres autorizado, ejecute el siguiente comando dig
:
nube g
watch dig example.com in MX @ZONE_NAME_SERVER
Reemplace ZONE_NAME_SERVER
con uno de los servidores de nombres de la zona administrada.
El comando watch
ejecuta el comando dig
cada 2 segundos de forma predeterminada. Puede usar este comando para determinar cuándo su servidor de nombres autorizado detecta el cambio, lo que debería ocurrir en un plazo de 120 segundos. Una vez que su servidor de nombres autorizado detecta el cambio, los solucionadores DNS pueden empezar a detectar el nuevo registro. Los solucionadores que ya tienen el registro anterior en caché esperan a que caduque el valor TTL anterior del registro.
Para ejecutar dig
en el servidor de nombres de su sistema, puede eliminar @<address>
del comando dig
. Si desea supervisar la propagación a otros servidores de nombres, puede cambiar la address
para que apunte a otros servidores de nombres.
¿Qué sigue?
- Para agregar, eliminar y actualizar registros, consulte Agregar, modificar y eliminar registros .
- Para crear, actualizar, enumerar y eliminar zonas administradas, consulte Administrar zonas .
- Para encontrar soluciones a problemas comunes que pueda encontrar al usar Cloud DNS, consulte Solución de problemas .
- Para hacer referencia a la API, consulte API REST de Cloud DNS .
- Para obtener una descripción general de Cloud DNS, consulte Descripción general de Cloud DNS .