Questa pagina fornisce informazioni sulle metriche di logging e monitoraggio per Cloud DNS, tra cui zone pubbliche, zone private e zone di forwarding. Questa pagina fornisce anche istruzioni per monitorare la propagazione delle modifiche al DNS pubblico.
Utilizza il logging di Cloud DNS
Il logging di Cloud DNS monitora le query risolte dai server dei nomi per le reti VPC (Virtual Private Cloud), nonché le query da un'entità esterna direttamente a una zona pubblica.
Le query registrate possono provenire da istanze di macchine virtuali (VM) Compute Engine, container di Google Kubernetes Engine nella stessa rete VPC, zone di peering o client on-premise che utilizzano l'inoltro DNS in entrata. Le zone DNS private, le zone DNS di inoltro, i server dei nomi alternativi, le zone DNS interne di Google Cloud o le zone DNS esterne potrebbero risolvere le query.
I record di log appartengono al progetto proprietario della rete o della zona pubblica che ha trasferito la richiesta. Nel caso del VPC condiviso, i record di log appartengono al progetto host perché quest'ultimo è proprietario della rete.
Abilita e disabilita il logging per le zone gestite private
Utilizza i criteri DNS per attivare o disattivare il logging per le tue reti. Quando abiliti il logging delle query, viene registrata ogni query DNS inviata a una zona gestita privata di Cloud DNS.
Per abilitare il logging per una rete che non ha un criterio DNS, esegui il comando dns policies create
.
gcloud
gcloud dns policies create POLICY_NAME \ --networks=NETWORK \ --enable-logging \ --description=DESCRIPTION
Sostituisci quanto segue:
POLICY_NAME
: il nome del criterio DNSNETWORK
: una o più reti in un elenco separato da virgoleDESCRIPTION
: una descrizione del criterio
Per abilitare il logging per una rete con un criterio DNS esistente, esegui il comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --enable-logging
Sostituisci quanto segue:
POLICY_NAME
: il nome del criterio DNSNETWORK
: una o più reti in un elenco separato da virgole
Per disattivare il logging senza configurare il criterio, esegui il comando dns policies update
.
gcloud
gcloud dns policies update POLICY_NAME \ --networks=NETWORK \ --no-enable-logging
Sostituisci quanto segue:
POLICY_NAME
: il nome del criterio DNSNETWORK
: una o più reti in un elenco separato da virgole
Per eliminare completamente il criterio, esegui il comando dns policies delete
.
gcloud
gcloud dns policies delete POLICY_NAME \
Sostituisci POLICY_NAME
con il nome del criterio DNS che vuoi eliminare.
Abilita e disabilita il logging per le zone pubbliche gestite
Per attivare il logging per una zona pubblica gestita esistente, esegui il comando dns managed-zones update
.
gcloud
gcloud dns managed-zones update ZONE_NAME --log-dns-queries \
Sostituisci ZONE_NAME
con il nome della zona gestita DNS per cui vuoi abilitare il logging.
Per disattivare il logging per una zona gestita pubblica esistente, esegui il comando dns managed-zones update
.
gcloud
gcloud dns managed-zones update ZONE_NAME --no-log-dns-queries \
Sostituisci ZONE_NAME
con il nome della zona gestita DNS per cui vuoi disabilitare il logging.
Visualizza i log
Console
Nella console Google Cloud, vai alla pagina Esplora log.
Visualizza i campi del formato dei record
Ogni voce di log include i seguenti campi, se applicabili. Alcuni campi sono condivisi anche con le metriche di monitoraggio.
Campo | Tipo di campo | Descrizione | Utilizzato nelle metriche |
---|---|---|---|
alias_query_response_code (anteprima) |
Stringa | Il codice di risposta restituito dalla query per risolvere il nome canonico del record ALIAS. | Sì |
source_type |
Stringa | Origine della query: inbound-forwarding , gce-vm |
Sì |
location |
Stringa | Regione Google Cloud, ad esempio us-east1 , da cui è stata fornita la risposta |
Sì |
project_id |
Stringa | L'ID progetto Google Cloud della rete da cui è stata ricevuta la query | Sì |
target_type |
Stringa | Tipo di target che risolve la query DNS: private-zone , forwarding-zone ,
forwarding-policy , peering-zone , internal , external |
Sì |
target_name |
Stringa | Il nome della destinazione, ad esempio nome della zona, nome del criterio, nome della zona interna, nome di dominio esterno | Sì |
queryName |
Stringa / DNS | Nome query DNS, RFC 1035 4.1.2. | No |
queryType |
Stringa / DNS | Tipo di query DNS, RFC 1035 4.1.2. | No |
responseCode |
Numero / DNS | Codice di risposta, RFC 1035 4.1.1. | No |
rdata |
Stringa / DNS | Risposta DNS in formato di presentazione, RFC 1035 5.1, troncata a 260 byte | No |
authAnswer |
Booleano / DNS | Risposta autorevole, RFC 1035 | No |
sourceNetwork |
Stringa / sorgente | Rete da cui la query ha raggiunto il nostro sistema | No |
vmInstanceId |
Numero / Sorgente | ID istanza VM di Compute Engine, applicabile solo alle query avviate dalle VM di Compute Engine | No |
vmInstanceName |
Stringa / sorgente | Nome dell'istanza VM di Compute Engine, applicabile solo alle query avviate dalle VM di Compute Engine | No |
vmProjectId |
Stringa / sorgente | L'ID progetto Google Cloud della rete da cui è stata inviata la query, applicabile solo alle query avviate dalle VM di Compute Engine | No |
vmZoneName |
Stringa / sorgente | Nome della zona VM da cui è stata inviata la query, applicabile solo alle query avviate dalle VM di Compute Engine | No |
sourceIP |
Stringa / sorgente | IP che ha originato la query | No |
destinationIP |
Stringa / target | Indirizzo IP di destinazione, applicabile solo per i casi di inoltro | No |
protocol |
Stringa / DNS | TCP | UDP |
No |
healthyIps |
Stringa | Set di indirizzi IP nel ResourceRecordSet noti per essere |
No |
unHealthyIps |
Stringa | Set di indirizzi IP nel ResourceRecordSet noti per essere |
No |
egressError |
Stringa | Errore del proxy in uscita, l'errore effettivo segnalato dal proxy in uscita come ricevuto dal server DNS on-premise Questo campo può essere utilizzato per distinguere un valore SERVFAIL effettivo restituito dal DNS on-premise da un errore di rete rilevato dal proxy in uscita. |
No |
Prezzi
Tutti i log di Cloud DNS vengono scritti in Cloud Logging. Non è previsto alcun addebito separato da Cloud DNS per questo servizio. Tuttavia, questi log possono comportare costi di archiviazione aggiuntivi, a seconda delle dimensioni dei log scritti e archiviati.
Ai fini del calcolo, Cloud DNS scrive circa 5 MB di dati di log per l'elaborazione di 10.000 query DNS.
Per informazioni sui prezzi di Cloud Logging, consulta la pagina Prezzi della suite operativa di Google Cloud: Cloud Logging.
Risolvere i problemi di forwarding in uscita
Se ricevi log contenenti SERVFAIL
in cui mancano alcuni campi, ad esempio destinationIP
, egressIP
e egressError
, consulta la sezione correlata nella documentazione relativa alla risoluzione dei problemi.
Monitora metriche
Cloud DNS esporta le metriche di monitoraggio in Cloud Monitoring.
Puoi monitorare la frequenza delle query e delle risposte DNS che puntano a zone private, zone di forwarding, forwarding dei criteri, zone interne di Google Cloud e internet. Monitoring è disponibile nella pagina Monitoring della console Google Cloud e nell'API Cloud Monitoring.
Il DNS privato esporta la metrica delta dns.googleapis.com/query/response_count
contenente l'etichetta response_code
per conteggiare il numero di query per codice di risposta.
L'etichetta response_code
è di tipo string
con i possibili valori di NOERROR
, FORMERR
, SERVFAIL
, NXDOMAIN
, NOTIMP
e UNKNOWN
.
Per le definizioni di questi codici, consulta gli IANA DNS RCODE.
La metrica viene esportata nel tipo di risorsa dns_query
utilizzando i campi applicabili del formato del record di log.
Monitora la propagazione del DNS
Quando utilizzi Google Cloud CLI o l'API REST per apportare modifiche, queste vengono inizialmente contrassegnate come in attesa fino al completamento dell'operazione. Puoi utilizzare l'interfaccia a riga di comando gcloud o l'API REST per controllare lo stato delle modifiche o ottenere una cronologia delle modifiche.
Un'operazione viene completata (stato: done
) quando Cloud DNS ha aggiornato correttamente il sistema che controlla i server. Potrebbero comunque verificarsi ritardi prima che tutti i server dei nomi vengano aggiornati.
Elenco delle modifiche per una zona gestita
Per elencare le modifiche apportate a una zona gestita, esegui il comando dns record-sets changes list
.
gcloud
Esegui il comando dns record-sets changes list
:
gcloud dns record-sets changes list --zone=ZONE
Sostituisci ZONE
con il nome della zona gestita di cui vuoi gestire i set di record.
Verifica la propagazione del DNS
Per monitorare e verificare che il server dei nomi DNS abbia rilevato le modifiche, puoi utilizzare i comandi watch
e dig
. L'esempio seguente mostra come cercare il server dei nomi e verificare quando uno dei server dei nomi della zona gestita ha rilevato una modifica a un record MX
.
Per cercare i server dei nomi della zona, esegui il comando dns managed-zones describe
:
gcloud dns managed-zones describe ZONE_NAME
Sostituisci ZONE_NAME
con il nome della tua zona Cloud DNS.
Per verificare se i record sono ancora disponibili sul tuo server dei nomi autorevole, esegui il seguente comando dig
:
watch dig example.com in MX @ZONE_NAME_SERVER
Sostituisci ZONE_NAME_SERVER
con uno dei server dei nomi della zona gestita.
Per impostazione predefinita, il comando watch
esegue il comando dig
ogni 2 secondi. Puoi utilizzare questo comando per determinare quando il server dei nomi autorevole rileva la tua modifica, il che dovrebbe avvenire entro 120 secondi. Una volta apportata la modifica al server dei nomi autorevole, i resolver DNS potranno iniziare a recuperare il nuovo record.
I resolver che hanno già il record precedente memorizzato nella cache attendono la scadenza del valore TTL precedente del record.
Per eseguire dig
sul server dei nomi del sistema, puoi rimuovere @<address>
dal comando dig
. Se vuoi monitorare la propagazione ad altri server dei nomi, puoi modificare address
in modo che rimandi ad altri server dei nomi.
Passaggi successivi
- Per aggiungere, eliminare e aggiornare i record, vedi Aggiungere, modificare ed eliminare i record.
- Per creare, aggiornare, elencare ed eliminare zone gestite, consulta Gestione delle zone.
- Per trovare soluzioni ai problemi comuni che potresti riscontrare quando utilizzi Cloud DNS, consulta Risoluzione dei problemi.
- Per fare riferimento all'API, consulta API REST di Cloud DNS.
- Per una panoramica di Cloud DNS, consulta la panoramica di Cloud DNS.