Questa pagina mostra come configurare le impostazioni DNS per un dominio utilizzando Cloud DNS e Cloud Tools for PowerShell. Passa in rassegna una semplice esempio di creazione di una zona gestita per gestire un dominio e i suoi sottodomini; e quindi l'aggiunta di record di risorse alla zona per fornire informazioni che il comportamento del server DNS durante la gestione delle richieste ai domini della zona.
Questo documento presuppone che tu abbia un nome di dominio e un indirizzo IP che puoi puntare il nome di dominio. In caso contrario, puoi registrare un nome di dominio tramite Google Domains o un altro registrar di domini del tuo scelta.
Leggi il cmdlet Cloud Tools for PowerShell riferimento a Scopri di più sui cmdlet di Cloud DNS. Per scoprire di più su Cloud DNS in generale, leggi le Panoramica di Cloud DNS.
Creazione di una zona gestita per il dominio
L'intero spazio dei nomi DNS è composto da molti domini, che a breve includi il tuo nome di dominio. Zone gestite nel modello DNS di Cloud DNS zone e fungono da container per organizzare i record DNS (come A, CNAME TXT) per lo stesso suffisso del nome DNS. Ad esempio, i record per "example.com." e sottodomini come "first.example.com". potrebbe essere nello stesso poiché condivide "example.com". suffisso. Nota il punto finale, necessaria e indica un nome DNS assoluto.
Per iniziare, configura una zona gestita per organizzare i record DNS che utilizzerai
creare per il tuo nome di dominio. Puoi creare una nuova zona gestita e aggiungerla a
il progetto della console Google Cloud utilizzando il cmdlet Add-GcdManagedZone
:
Add-GcdManagedZone ` -Name "my-new-zone" ` -DnsName "example.com." ` -Description "This is my first zone."
Questa operazione crea una nuova zona con i dettagli specificati e la aggiunge all'area progetto dell'interfaccia a riga di comando gcloud CLI attiva configurazione, nonostante tu possa scegliere e specificare un ID progetto diverso, se necessario. Questo crea anche NS predefiniti e record SOA nella zona.
Tuttavia, per pubblicare i nuovi record della zona su internet, è necessario anche di aggiornare i server dei nomi del dominio in modo Cloud DNS. Anche se il tuo dominio è registrati con Google Domains, devi comunque aggiornare i propri server dei nomi.
Puoi trovare i server dei nomi di Cloud DNS assegnati al tuo dominio.
utilizzando il cmdlet Get-GcdManagedZone
nella zona gestita che regola il dominio
per restituire informazioni sulla zona:
Get-GcdManagedZone -Zone "my-new-zone"
Aggiunta e rimozione di set di record di risorse
I record di risorse DNS forniscono informazioni determina il comportamento del server DNS quando gestisce le richieste inviate a un dominio. Ad esempio, i record DNS possono essere utilizzati per indicare al server l'indirizzo IP in cui un dominio si risolve, indicare i server Mail Exchange utilizzabili per un dominio, e molto altro ancora.
In Cloud DNS, puoi aggiungere o rimuovere i record DNS di una zona per
configurare tale comportamento. Per aggiungere o rimuovere set di record di risorse immutabili,
non operare sui record direttamente in una zona. Piuttosto, crei un ambiente
record di risorse esistenti o recuperare quelli esistenti utilizzando l'New-GcdResourceRecordSet
e Get-GcdResourceRecordSet
cmdlet, quindi invia la modifica
richieste con questi record a una zona specifica utilizzando il Add-GcdChange
cmdlet.
Creazione di set di record di risorse
Puoi utilizzare il cmdlet helper New-GcdResourceRecordSet
per creare una risorsa
di un set di record che puoi inserire all'interno di una modifica e poi aggiungerlo o rimuoverlo da un
nella zona gestita.
Ad esempio, se vuoi creare un record A per indirizzare il dominio a un indirizzo IPv4 esterno nel formato #.#.#.# (se disponi di un indirizzo IPv6, utilizza AAAA), puoi utilizzare il seguente comando:
$ARecord = New-GcdResourceRecordSet ` -Name "example.com." -Rrdata "107.1.23.134" -Type "A"
Analogamente, per creare un record CNAME per il sottodominio www in modo che "www.example.com." si risolve allo stesso IP e si comporta come "example.com." puoi utilizzare questo comando:
$CNAMERecord = New-GcdResourceRecordSet ` -Name "www.example.com." -Rrdata "example.com." -Type "CNAME"
I tipi di record di risorse supportati che puoi creare e includere nelle modifiche a una zona sono A, AAAA, CNAME, MX, NAPTR, NS, PTR, SOA, SPF, SRV e TXT. Per per decidere quali record sono necessari e come crearli, consulta formati di record di risorse supportati Cloud DNS.
Recupero dei set di record di risorse in corso
Se vuoi recuperare un set di record di risorse esistente in una zona, puoi usare
il cmdlet Get-GcdResourceRecordSet
per restituire tutti i record in una zona e quindi
indicizza i risultati:
$allRecords = Get-GcdResourceRecordSet -Zone "my-new-zone" $record0 = $allRecords[0]
Se vuoi solo record di un tipo specifico, puoi filtrare i risultati di conseguenza:
$ARecord = Get-GcdResourceRecordSet -Zone "my-new-zone" -Filter "A"
Applicazione di modifiche a una zona gestita
I cmdlet New-GcdResourceRecordSet
e Get-GcdResourceRecordSet
sono entrambi
restituiscono set di record di risorse, ma non aggiungono record né li rimuovono
qualsiasi cosa. Per farlo, utilizza il cmdlet Add-GcdChange
:
Add-GcdChange ` -Zone "my-new-zone" -Add $record1,$record2 -Remove $record0
Ad esempio, per aggiungere alla nostra zona i record A e CNAME che hai creato sopra, procedi nel seguente modo:
Add-GcdChange -Zone "my-new-zone" -Add $ARecord,$CNAMERecord
Se in seguito vuoi cambiare l'indirizzo IPv4 in cui viene risolto il dominio, puoi creare un nuovo record di tipo A e aggiungerlo alla zona gestita mentre eliminando il vecchio record A:
$oldARecord = Get-GcdResourceRecordSet -Zone "my-new-zone" -Filter "A" $newARecord = New-GcdResourceRecordSet ` -Name "example.com." -Rrdata "104.1.34.167" -Type "A" Add-GcdChange -Zone "my-new-zone" -Remove $oldARecord -Add $newARecord
Ogni chiamata al cmdlet Add-GcdChange
restituisce il file appena eseguito
oggetto richiesta di modifica. Puoi anche passare
Add-GcdChange
cmdlet di un oggetto di richiesta di modifica da eseguire direttamente al posto di
di set di record di risorse:
Add-GcdChange -Zone "my-new-zone" -ChangeRequest $change0
La creazione manuale di oggetti di richiesta di modifica non è consigliata, ma è utile
se vuoi applicare di nuovo una modifica apportata in precedenza o in una zona diversa.
È possibile recuperare tutti gli oggetti di richieste di modifica passate applicati a una zona
utilizzando il cmdlet Get-GcdChange
:
$allChanges = Get-GcdChange -Zone "my-new-zone"
Puoi scegliere una modifica specifica indicizzando il risultato precedente oppure che modificare da recuperare con un ChangeId. In genere le richieste di modifica sono numerate da 0 in poi in base all'ordine in cui sono stati inviati alla zona:
$firstChange = Get-GcdChange -Zone "my-new-zone" -ChangeId 0 Add-GcdChange -Zone "my-new-zone" -ChangeRequest $firstChange
Eliminazione delle zone gestite
A volte potresti voler rimuovere del tutto una zona gestita. Potrebbe essere per per diversi motivi. Forse hai la zona gestita "user1-zone" per sottodominio "utente1.esempio.com." ma user1 elimina il proprio account e in questo caso vuoi rimuovi questo sottodominio e tutti i record DNS associati.
Per rimuovere una zona gestita dal progetto, utilizza Remove-GcdManagedZone
cmdlet:
Remove-GcdManagedZone -Zone "user1-zone"
In caso di esito positivo, il comando non restituisce nulla.
Tuttavia, questo cmdlet non funziona immediatamente su ciò che Cloud DNS
considera "non vuoto" zone gestite o zone che contengono account non NS o non SOA
(record non predefiniti). Ad esempio, non puoi eliminare
"la-nuova-zona", a cui hai aggiunto i record di tipo A e CNAME, senza
concedendo l'autorizzazione al cmdlet durante l'elaborazione o l'utilizzo dell'-Force
Opzione:
Remove-GcdManagedZone -Zone "my-new-zone" -Force
Il cmdlet Remove-GcdManagedZone
accetta anche input della pipeline per le zone
da eliminare. Ad esempio, il seguente comando elimina forzatamente tutte le
nel progetto corrente. Questa opzione potrebbe essere utile se non sei più
mantenendo qualsiasi dominio impostato in un progetto:
Get-GcdManagedZone | Remove-GcdManagedZone -Force