Puoi assegnare indirizzi IP esterni statici alla tua macchina virtuale (VM) di Compute Engine. Puoi anche cambiare, elencare e rilasciare indirizzi IP statici per il tuo delle VM in esecuzione. Per prenotare un indirizzo IP esterno statico, consulta Riserva un indirizzo IP esterno statico.
Gli indirizzi IP esterni possono essere statici o temporanei. Se una VM richiede un indirizzo IP esterno fisso che non cambia, esegui la seguenti:
- Ottieni un indirizzo IP esterno statico. Puoi prenotare un nuovo IP esterno o promuovere indirizzi IP esterni temporanei esistenti.
- Assegna l'indirizzo IP prenotato a una VM esistente o assegnalo durante la creazione una nuova VM.
Se hai bisogno di un indirizzo IP statico sulla piattaforma Compute Engine interna rete, vedi Prenota un indirizzo IP interno statico.
Prima di iniziare
- Ulteriori informazioni sugli indirizzi IP.
- Informazioni quote e limiti per gli indirizzi IP esterni statici.
- Informazioni prezzi degli indirizzi IP esterni.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione
Compute Engine come segue.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
-
Per creare e aggiornare le VM:
Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) -
compute.instances.update
sull'istanza VM -
compute.instances.updateNetworkInterface
sull'istanza VM -
compute.instances.addAccessConfig
sull'istanza VM -
compute.instances.deleteAccessConfig
sull'istanza VM -
compute.networks.list
sulla rete -
compute.subnetworks.use
sulla subnet -
compute.subnetworks.list
sulla subnet -
Per creare le VM:
compute.instances.create
nel progetto- Per utilizzare un'immagine personalizzata per creare la VM:
compute.images.useReadOnly
sull'immagine - Per utilizzare uno snapshot per creare la VM:
compute.snapshots.useReadOnly
nello snapshot - Per utilizzare un modello di istanza per creare la VM:
compute.instanceTemplates.useReadOnly
nel modello di istanza - Per assegnare una rete legacy alla VM,:
compute.networks.use
nel progetto - Per specificare un indirizzo IP statico per la VM:
compute.addresses.use
nel progetto - Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy:
compute.networks.useExternalIp
nel progetto - Per specificare una subnet per la VM:
compute.subnetworks.use
nel progetto o nella subnet scelta - Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC,:
compute.subnetworks.useExternalIp
nel progetto o nella subnet scelta - Per impostare i metadati dell'istanza VM per la VM:
compute.instances.setMetadata
nel progetto - Per impostare i tag per la VM:
compute.instances.setTags
sulla VM - Per impostare le etichette per la VM:
compute.instances.setLabels
sulla VM - Per impostare un account di servizio che la VM deve utilizzare:
compute.instances.setServiceAccount
sulla VM - Per creare un nuovo disco per la VM:
compute.disks.create
nel progetto - Per collegare un disco esistente in modalità di sola lettura o lettura/scrittura:
compute.disks.use
sul disco - Per collegare un disco esistente in modalità di sola lettura:
compute.disks.useReadOnly
sul disco
Solo una risorsa alla volta può usare un indirizzo IP esterno statico.
Non è possibile verificare se un indirizzo IP è statico o temporaneo dopo è stato assegnato a una risorsa. Puoi confrontare l'indirizzo IP con l'elenco di indirizzi IP esterni statici riservati al progetto. Utilizza la Sottocomando
gcloud compute addresses list
per visualizzare un elenco di indirizzi IP esterni statici disponibili progetto.Ogni VM può avere più interfacce di rete, e a ciascuna interfaccia possono essere assegnati i seguenti indirizzi IP:
- Un indirizzo IPv4 interno (obbligatorio)
- Un indirizzo IPv4 esterno
- Un intervallo di indirizzi IPv6
/96
, interno o esterno, ma non entrambi
Non puoi modificare il nome di un indirizzo IP statico.
Gli indirizzi IP esterni assegnati esistono nello stesso host fisico della VM ed esistono nella stessa regione della VM per tutti gli scopi, inclusi per routing, latenza e prezzi. Ciò vale indipendentemente geolocalizzazione su internet informazioni.
Nella console Google Cloud, vai alla pagina Indirizzi IP.
Fai clic su Indirizzi IP esterni.
Per elencare tutti gli indirizzi IP, utilizza il seguente comando:
gcloud compute addresses list
Per elencare tutti gli indirizzi IP globali, utilizza il seguente comando:
gcloud compute addresses list --global
Per elencare tutti gli indirizzi IP a livello di regione in una determinata regione, utilizza quanto segue :
gcloud compute addresses list \ --regions=REGION
Sostituisci
REGION
con la regione che vuoi per elencare gli indirizzi. Puoi elencare gli indirizzi di più regioni in base a specificando nomi delle regioni separati da virgole:gcloud compute addresses list \ --regions=REGION1,REGION2,..REGION_n_
Per elencare gli indirizzi IPv4 o IPv6 a livello di regione, chiama il metodo Metodo
addresses.list
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questa richiestaREGION
: il nome della regione per questo richiesta
Per elencare tutti gli indirizzi in tutte le regioni, chiama il Metodo
addresses.aggregatedList
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/addresses
Per elencare gli indirizzi IPv4 o IPv6 globali, chiama il metodo Metodo
globalAddresses.list
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questa richiestaNella console Google Cloud, vai alla pagina Crea un'istanza.
Specifica i dettagli della VM.
Espandi la sezione Opzioni avanzate.
Espandi la sezione Networking.
Nella sezione Interfacce di rete, espandi una rete a riga di comando per modificarlo.
Per assegnare un indirizzo IPv4:
- Seleziona una rete.
- Seleziona l'indirizzo IP dall'elenco Indirizzo IPv4 esterno.
Per assegnare un indirizzo IPv6:
- Seleziona una rete che contiene una subnet IPv6.
- Seleziona una subnet a doppio stack dall'elenco Subnet.
- Per Tipo di stack IP, seleziona IPv4 e IPv6 (stack doppio).
- Seleziona l'indirizzo IPv6 esterno appena prenotato dal Elenco indirizzi IPv6 esterni. In alternativa, seleziona CREA INDIRIZZO IP e prenota un nuovo indirizzo IPv6 esterno statico.
- In Network Service Tier (Livello di servizio di rete), seleziona Premium.
Per completare la modifica dell'interfaccia di rete predefinita, fai clic su Fine.
Continua con il processo di creazione della VM.
Per assegnare un indirizzo IPv4 esterno statico, segui questi passaggi:
gcloud compute instances create VM_NAME --address=IP_ADDRESS
Sostituisci quanto segue:
VM_NAME
: il nome della VM.IP_ADDRESS
: l'indirizzo IP da assegnare al VM. Usa l'indirizzo IP esterno statico riservato non il nome dell'indirizzo.
Per assegnare un indirizzo IPv6 esterno statico, segui questi passaggi:
gcloud compute instances create VM_NAME \ --subnet=SUBNET \ --stack-type=IPV4_IPV6 \ --external-ipv6-address=IPV6_ADDRESS \ --external-ipv6-prefix-length=96 \ --ipv6-network-tier=PREMIUM \ --zone=ZONE
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Fai clic sul nome della VM a cui vuoi assegnare un IP esterno a. Viene visualizzata la pagina Dettagli istanza.
Nella pagina Dettagli istanza, completa i seguenti passaggi:
- Fai clic su Modifica.
- Espandi Interfacce di rete.
- Seleziona l'indirizzo IP esterno richiesto da assegnare alla VM:
- Per Indirizzo IPv4 esterno, seleziona Indirizzo IPv4 esterno statico o temporaneo.
- Per Indirizzo IPv6 esterno, seleziona Indirizzo IPv6 esterno statico o temporaneo.
- Fai clic su Fine.
Fai clic su Salva.
(Facoltativo) Prenota un indirizzo IP esterno statico.
Se vuoi assegnare un indirizzo IP esterno statico, devi prenotare un e assicurarsi che non sia utilizzato un'altra risorsa. Se necessario, segui le istruzioni per riservare un nuovo indirizzo IP esterno statico o annullare l'assegnazione di un indirizzo IP esterno statico.
Se intendi utilizzare un indirizzo IP esterno temporaneo, puoi saltare questo passaggio e Compute Engine assegna in modo casuale all'indirizzo IP esterno.
Rimuovi le assegnazioni di indirizzi IP esistenti, come descritto in Annulla l'assegnazione di un indirizzo IP esterno statico.
Assegna il nuovo indirizzo IP esterno.
Per assegnare un indirizzo IPv4, utilizza il metodo Sottocomando
instances add-access-config
:Nota: non sostituireIP_ADDRESS
con il nome dell'IP statico . Devi utilizzare l'indirizzo IP effettivo.gcloud compute instances add-access-config VM_NAME \ --access-config-name="ACCESS_CONFIG_NAME" --address=IP_ADDRESS
Sostituisci quanto segue:
VM_NAME
: il nome della VM.ACCESS_CONFIG_NAME
: il nome con cui chiamare configurazione dell'accesso. Assicurati di inserire il nome completo tra virgolette.IP_ADDRESS
: l'indirizzo IP da aggiungere.
Se vuoi che Compute Engine assegni una risorsa esterna temporanea per l'indirizzo IP anziché utilizzare un indirizzo IP esterno statico, ometti il
--address IP_ADDRESS
proprietà:gcloud compute instances add-access-config VM_NAME \ --access-config-name="ACCESS_CONFIG_NAME"
Per assegnare un intervallo di indirizzi IPv6, utilizza il metodo Sottocomando
instance network-interfaces update
:gcloud compute instances network-interfaces update VM_NAME \ --network-interface==NIC \ --ipv6-network-tier=PREMIUM \ --stack-type=IPV4_IPV6 \ --external-ipv6-address=IPV6_ADDRESS \ --external-ipv6-prefix-length=96 \ --zone=ZONE
Sostituisci quanto segue:
VM_NAME
: il nome della VM.NIC
: il nome dell'interfaccia di rete.IPV6_ADDRESS
: l'indirizzo IPv6 da assegnare alla VM. Specifica il primo indirizzo IPv6 nella Intervallo di/96
.ZONE
: la zona della VM.
Rimuovi le assegnazioni di indirizzi IP esistenti, come descritto in Annulla l'assegnazione di un indirizzo IP esterno statico.
Elimina la configurazione di accesso esistente inviando una richiesta
POST
a Metodoinstances.deleteAccessConfig
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/deleteAccessConfig
Aggiungi una nuova configurazione di accesso all'interfaccia di rete della VM inviando una richiesta
POST
al Metodoinstances.addAccessConfig
.Per gli indirizzi IPv4, effettua la seguente richiesta:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/addAccessConfig { "natIP": "IPV4_ADDRESS", "name": "ACCESS_CONFIG_NAME" }
Per gli indirizzi IPv6, aggiorna il valore
networkInterfaces[].ipv6AccessConfigs[].externalIpv6
e l'indirizzo IPv6 esterno che vuoi utilizzare.Vedi Assegnare un indirizzo IP esterno statico a una nuova VM
- Puoi applicare questa vincolo di elenco solo alle VM.
- Non puoi applicare il vincolo in modo retroattivo. Tutte le VM con gli indirizzi IP esterni, prima di abilitare il criterio, conservano il proprio IP esterno indirizzi IP esterni.
- Questo vincolo accetta
allowedList
odeniedList
, ma non entrambi nello stesso criterio. - Spetta a te o a un amministratore con le autorizzazioni necessarie gestire e mantenere l'integrità e il ciclo di vita delle VM. Solo il vincolo verifica l'URI della VM e non impedisce alle VM nella lista consentita di alterati, eliminati o ricreati.
- Vai alla pagina Criteri dell'organizzazione.
- Se necessario, seleziona l'organizzazione richiesta dal progetto menu a discesa.
- Fai clic su Definisci gli IP esterni consentiti per le istanze VM.
- Fai clic su Modifica per modificare il criterio IP esterno. Se non riesci ad accedere Modifica, non è lo strumento corretto autorizzazioni.
Seleziona Personalizza per impostare il criterio dell'organizzazione per VM specifiche.
Seleziona l'Applicazione delle norme e il Tipo di criterio richiesti.
In Valori criterio, seleziona Personalizzato.
Inserisci un URI per una VM e premi Invio. L'URI deve essere nel formato seguente formato:
projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Fai clic su Nuovo valore del criterio e inserisci gli URI per le VM in base alle esigenze.
Fai clic su Salva per applicare il vincolo.
PROJECT_ID
: l'ID progetto per questa richiesta, ad esempioexample-project
. Tieni presente che questa procedura è diversa dalla configurazione ai criteri dell'organizzazione, che richiedono l'ID numerico dell'organizzazione.ZONE
: la zona della VMVM_NAME
: il nome della VMPROJECT_ID
: l'ID progetto per questa richiesta, ad esempioexample-project
. Tieni presente che questa procedura è diversa dalla configurazione ai criteri dell'organizzazione, che richiedono l'ID numerico dell'organizzazione.ZONE
: la zona della VM.VM_NAME
: il nome della VM.Evita di utilizzare l'elenco
deniedValues
con questo di blocco. Se definisci valori nell'elencodeniedValues
, significa che solo le VM nell'elencodeniedValues
non possono utilizzare e gli indirizzi IP esterni. Potrebbe trattarsi di un problema di sicurezza se vuoi controllare esattamente quali VM possono avere indirizzi IP esterni. Se vuoi rimuovere alcune VM dall'elencoallowedValues
, aggiorna il criterio esistente per rimuovere le VM daallowedList
anziché VM nell'elencodeniedValues
con una gerarchia inferiore.Se vuoi impostare un criterio su gran parte della gerarchia delle risorse, esenta determinati progetti, ripristina il criterio predefinito utilizzando il metodo
setOrgPolicy
specificandorestoreDefault
per consentire l'associazione di tutte le VM nei progetti a indirizzi IP esterni indirizzi IP esterni. I criteri attuali per i progetti non sono interessati per impostazione predefinita.Usa il criterio dell'organizzazione insieme ai ruoli IAM per controllare meglio l'ambiente. Questo criterio si applica solo alle VM, ma se vuoi controllare e controllare meglio limitare gli indirizzi IP esterni sui dispositivi di rete, puoi concedere il ruolo
compute.networkAdmin
alle parti appropriate.Tutti i servizi e i prodotti in esecuzione su Compute Engine all'interno dell'organizzazione o del progetto con il criterio abilitato sono soggetti a questa del criterio dell'organizzazione. Nello specifico, servizi come Google Kubernetes Engine, Dataflow, Dataproc e Cloud SQL sono interessati da questa . Se è un problema, Google consiglia di configurare altri servizi e prodotti in un a cui non è applicato il criterio dell'organizzazione e utilizza VPC condiviso, se necessario.
Nella console Google Cloud, vai alla pagina Indirizzi IP.
Trova l'indirizzo nell'elenco e controlla nella colonna Tipo il tipo di Indirizzo IP.
Nella console Google Cloud, vai alla pagina Indirizzi IP.
Fai clic su Indirizzi IP esterni.
Seleziona l'indirizzo IP statico di cui vuoi annullare l'assegnazione.
Fai clic su Cambia per aprire la finestra di dialogo Collega indirizzo IP.
Nell'elenco a discesa Allega a, seleziona Nessuno.
Fai clic su OK.
Verifica se un indirizzo IP statico è in uso utilizzando il comando Comando
gcloud compute addresses list
:gcloud compute addresses list
L'output è simile al seguente:
NAME REGION ADDRESS STATUS example-address-ipv4 REGION 198.51.100.1 RESERVED example-address-new-ipv4 REGION 203.0.113.1 IN_USE example-address-ipv6 REGION 2001:db8:1:1:1:1:1:1 RESERVED example-address-new-ipv6 REGION 2001:db8:4:4:4:4:4:4 IN_USE
- Se l'indirizzo IP non è in uso, lo stato è
RESERVED
. - Se l'indirizzo IP è in uso, lo stato è
IN_USE
.
- Se l'indirizzo IP non è in uso, lo stato è
Recupera il nome della VM che utilizza l'indirizzo IP:
gcloud compute addresses describe ADDRESS_NAME \ --region=REGION
Sostituisci quanto segue:
ADDRESS_NAME
: il nome dell'indirizzo IPv6 risorsa.REGION
: la regione dell'indirizzo IPv6 risorsa.
L'output è simile al seguente:
address: IP_ADDRESS addressType: EXTERNAL ... region: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/addresses/ADDRESS_NAME status: IN_USE subnetwork: https://www.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/subnetworks/SUBNET users: - https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME
Il campo
users
mostra il nome della VM che utilizza l'IP .Annulla l'assegnazione dell'indirizzo IP alla VM.
Per annullare l'assegnazione di un indirizzo IPv4, elimina il file di configurazione dell'accesso della VM:
Ottieni il nome della configurazione di accesso da eliminare. Per avere il nome, utilizza la Comando
gcloud compute instances describe
. SostituisciVM_NAME
con il nome della VM.gcloud compute instances describe VM_NAME
La configurazione dell'accesso viene visualizzata nel seguente formato:
networkInterfaces: - accessConfigs: - kind: compute#accessConfig name: external-nat natIP: 203.0.113.1 type: ONE_TO_ONE_NAT
Elimina la configurazione dell'accesso utilizzando Comando
gcloud compute instances delete-access-config
:gcloud compute instances delete-access-config VM_NAME \ --access-config-name="ACCESS_CONFIG_NAME"
Sostituisci quanto segue:
VM_NAME
: il nome della VM.ACCESS_CONFIG_NAME
: il nome del alla configurazione di accesso da eliminare. Assicurati di includere il nome completo tra virgolette.
Per annullare l'assegnazione di un intervallo di indirizzi IPv6, utilizza il metodo Comando
instance network-interfaces update
:gcloud compute instances network-interfaces update VM_NAME \ --network-interface=nic0 \ --stack-type=IPV4_ONLY \ --zone=ZONE
Sostituisci quanto segue:
VM_NAME
: il nome della VM che utilizza l'indirizzo IP.ZONE
: la zona della VM.
Verifica che l'indirizzo IP esterno statico sia ora disponibile e contrassegnato come
RESERVED
anzichéIN_USE
.gcloud compute addresses list \ --filter="ADDRESS_NAME AND region=REGION"
Sostituisci quanto segue:
ADDRESS_NAME
: il nome dell'indirizzo IP risorsa.REGION
: la regione della risorsa dell'indirizzo IP.
Per gli indirizzi IPv4, elimina la configurazione dell'accesso collegata alla VM che utilizza l'indirizzo.
Per verificare i dettagli di configurazione dell'accesso di una VM, crea una Richiesta di
GET
inviata a Metodoinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Elimina la configurazione di accesso esistente effettuando un Richiesta di
POST
inviata a Metodoinstances.deleteAccessConfig
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/deleteAccessConfig
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questo richiestaZONE
: la zona in cui si trova la VMVM_NAME
: il nome della VM
Per gli indirizzi IPv6, aggiorna il tipo di stack della rete per la VM a cui è collegato l'indirizzo IPv6.
Invia una richiesta
PATCH
a Metodoinstances.updateNetworkInterface
.Nel corpo della richiesta, aggiorna il valore del campo
stackType
inIPV4_ONLY
.Ad esempio:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateNetworkInterface { "networkInterfaces": [{ ... "stackType" : "IPV4_ONLY" ... }] }
- Scopri di più sugli indirizzi IP.
- Scopri di più su reti e firewall.
- Scopri come indirizzare le VM utilizzando il DNS interno.
- Rivedi i prezzi di VPC.
Terraform
Per utilizzare gli esempi di Terraform in questa pagina in un ambiente dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare e gestire gli indirizzi IP statici, chiedi all'amministratore di concederti i seguenti ruoli IAM sul tuo progetto:
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Questi ruoli predefiniti le autorizzazioni necessarie per configurare e gestire gli indirizzi IP statici. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per configurare e gestire gli indirizzi IP statici sono necessarie le seguenti autorizzazioni:
Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.
Limitazioni
Nota:le interfacce di rete possono ricevere traffico da più regole di forwarding, che potrebbero gestire altri indirizzi IP esterni. Qualsiasi di indirizzi IP esterni può fare riferimento a un'interfaccia di rete tramite regole di forwarding, ma a ciascuna interfaccia di rete può essere assegnato un solo un indirizzo IPv4 esterno e un intervallo di indirizzi IPv6
/96
esterno.Per ulteriori informazioni sul bilanciamento del carico e sulle regole di forwarding, consulta il bilanciamento del carico documentazione.
Visualizza gli indirizzi IP esterni statici disponibili
Per elencare gli indirizzi IP esterni statici che hai prenotato per il tuo seguire questi passaggi.
Console
gcloud
Usa il comando
gcloud compute addresses list
:API
Vai
Java
Python
Configura indirizzi IP esterni statici
Le seguenti sezioni descrivono come configurare indirizzi IP esterni statici per le tue VM.
Crea una VM che utilizza un indirizzo IP esterno statico
Dopo aver prenotato un indirizzo IP esterno statico, puoi assegnarlo a una VM.
Console
gcloud
Puoi creare una VM e assegnare un indirizzo IP esterno a livello di regione statico che hai già prenotato.
Terraform
Puoi utilizzare la risorsa
google_compute_instance
per assegnare un indirizzo IP esterno.REST
Per assegnare un indirizzo IPv4 esterno statico a una nuova VM:
Nella tua richiesta di crea una nuova VM, indicare esplicitamente
networkInterfaces[].accessConfigs[].natIP
e l'indirizzo IPv4 esterno che vuoi utilizzare. Ad esempio:{ "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "networkInterfaces": [{ "accessConfigs": [{ "type": "ONE_TO_ONE_NAT", "name": "External NAT", "natIP": "IPV4_ADDRESS" }], "network": "global/networks/default" }], "disks": [{ "autoDelete": "true", "boot": "true", "type": "PERSISTENT", "initializeParams": { "sourceImage": "SOURCE_IMAGE" } }] }
Per assegnare un indirizzo IPv6 esterno statico a una nuova VM:
Nella tua richiesta di crea una nuova VM, indicare esplicitamente
networkInterfaces[].ipv6AccessConfigs[].externalIpv6
e l'indirizzo IPv6 esterno che vuoi utilizzare. Ad esempio:{ "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "networkInterfaces": [{ "accessConfigs": [{ "name": "external-nat", "type": "ONE_TO_ONE_NAT" }], "ipv6AccessConfigs": [{ "externalIpv6": "IOV6_ADDRESS", "externalIpv6PrefixLength": 96, "name": "external-ipv6-access-config", "networkTier": "PREMIUM", "type": "DIRECT_IPV6" }], "stackType": "IPV4_IPV6", "subnetwork":"SUBNETWORK }], "disks": [{ "autoDelete": "true", "boot": "true", "mode": "READ_WRITE", "type": "PERSISTENT", "initializeParams": { "sourceImage": "SOURCE_IMAGE" }, }], }
Vai
Java
Python
Modificare o assegnare un indirizzo IP esterno a una VM esistente
Puoi modificare o assegnare un indirizzo IP esterno, temporaneo o statico, per una VM esistente.
Una VM può avere più interfacce, ognuna delle quali può avere un'interfaccia Indirizzo IP. Se la VM ha già un indirizzo IP esterno, devi rimuovi l'indirizzo. Successivamente, puoi assegnare un nuovo l'indirizzo IP della VM esistente.
Console
gcloud
REST
Puoi modificare l'indirizzo IPv4 o IPv6 esterno di una VM aggiungendo un nuovo la configurazione dell'accesso per quella VM.
Vai
Java
Python
Limita gli indirizzi IP esterni a VM specifiche
Per alcuni carichi di lavoro, potresti avere requisiti essenziali che includono restrizioni relative a sicurezza e rete. Ad esempio, potresti voler limitare indirizzi IP esterni, in modo che possano essere usate solo da VM specifiche. Questo può aiutare a impedire l'esfiltrazione di dati e mantenere l'isolamento della rete. L'utilizzo di un Criterio dell'organizzazione, puoi limitare gli indirizzi IP esterni a VM specifiche per controllare l'uso degli indirizzi IP esterni per le VM all'interno di un un'organizzazione o un progetto.
Il vincolo per controllare l'indirizzo IP esterno sulle VM è:
constraints/compute.vmExternalIpAccess
Per utilizzare il vincolo, devi specificare un criterio con un
allowedList
di VM possono avere indirizzi IP esterni. Se non specifichi un criterio, tutti gli indirizzi IP esterni sono consentiti per tutte le VM. Quando il criterio è attivo, solo le VM elencate nell'elencoallowedValues
può essere assegnato un IP esterno statico o temporaneo e altre VM di Compute Engine l'organizzazione o il progetto che non sono esplicitamente definiti nel criterio gli utenti non potranno utilizzare indirizzi IP esterni.Le VM vengono identificate nelle liste consentite e bloccate utilizzando l'URI della VM:
projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Specifiche per la limitazione degli indirizzi IP esterni
Autorizzazioni necessarie per limitare gli indirizzi IP esterni
Per impostare un vincolo a livello di progetto o organizzazione, devi è stato concesso il ruolo
orgpolicy.policyAdmin
nell'organizzazione.Imposta il vincolo del criterio a livello di organizzazione
Console
gcloud
Per impostare un vincolo per l'accesso IP esterno, devi prima che la tua organizzazione ID. Puoi trovare l'ID organizzazione eseguendo il Comando
organizations list
e cercando l'ID numerico nella risposta:gcloud organizations list
gcloud CLI restituisce un elenco di organizzazioni nel seguente formato:
DISPLAY_NAME ID example-organization1 29252605212 example-organization2 1234567890
Utilizza la Comando
gcloud resource-manager org-policies set-policy
per impostare il criterio. Devi fornire il criterio come file JSON. Crea un file JSON nel seguente formato:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME", "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME", "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME" ] } }
Sostituisci quanto segue:
In alternativa, puoi specificare un elenco
deniedValues
per indicare le VM che vuoi impedire esplicitamente di avere un indirizzo IP esterno. Qualsiasi VM non in elenco sarebbe implicitamente autorizzata ad avere all'indirizzo IP esterno. Puoi specificare soloallowedValues
odeniedValues
, ma non entrambi.Quindi, passa il file con la tua richiesta:
gcloud resource-manager org-policies set-policy MY_POLICY.JSON --organization=ORGANIZATION_ID
Sostituisci
ORGANIZATION_ID
con l'ID numerico del dell'organizzazione.Se non vuoi che nessuna VM abbia accesso IP esterno, puoi impostare un criterio con
allValues
impostato suDENY
:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allValues": "DENY" } }
REST
Utilizza la API
setOrgPolicy()
per definire il vincolo. Le VM nell'elencoallowedValue
specificare possono avere indirizzi IP esterni. In alternativa, puoi specifica un elencodeniedValues
per indicare le VM che hai esplicitamente vuoi impedire di avere un indirizzo IP esterno. Qualsiasi VM che non si trovi sarebbero implicitamente autorizzati ad avere un indirizzo IP esterno. Puoi specificare soloallowedValues
odeniedValues
, ma non entrambi.Ad esempio, quella che segue è una richiesta di applicazione Vincolo
compute.vmExternalIpAccess
a un'organizzazione in cui le VM da determinati progetti all'interno dell'organizzazione possono avere indirizzi IP esterni:POST https://cloudresourcemanager.googleapis.com/v1/organizations/ORGANIZATION_ID:setOrgPolicy
dove
ORGANIZATION_ID
è l'ID numerico del dell'organizzazione.Ora, nel corpo della richiesta, indica il criterio per questo vincolo:
{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME", "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME", "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME" ] } } }
Se non vuoi che nessuna VM abbia accesso IP esterno, puoi impostare un criterio con
allValues
impostato suDENY
:{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allValues": "DENY" } } }
Impostare il criterio a livello di progetto
L'impostazione di un criterio a livello di progetto sostituisce il criterio a livello di organizzazione livello. Ad esempio, se a livello di organizzazione è presente
example-vm-1
nella ElencoallowedValues
, ma il criterio a livello di progetto ha la stessa VM nell'elencodeniedValues
, alla VM non sarebbe consentito avere all'indirizzo IP esterno.Console
Segui la stessa procedura descritta in Imposta un vincolo di criterio a livello di organizzazione, ma scegli il tuo progetto dal selettore di progetti anziché dell'organizzazione.
gcloud
Utilizza la Comando
gcloud resource-manager org-policies set-policy
per impostare il criterio. Devi fornire il criterio come file JSON. Crea un file JSON nel seguente formato:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME" ] } }
Sostituisci quanto segue:
In alternativa, puoi specificare un elenco
deniedValues
di VM esplicitamente di avere un indirizzo IP esterno. Qualsiasi VM non presenti nell'elenco sarebbero implicitamente autorizzati ad avere un indirizzo IP esterno. Puoi specificare soloallowedValues
odeniedValues
, ma non entrambi.Quindi, passa il file con la tua richiesta:
gcloud resource-manager org-policies set-policy MY_POLICY.JSON --project=example-project
REST
Utilizza la API
setOrgPolicy
per definire il vincolo. Le VM nell'elencoallowedValue
specificato possono avere indirizzi IP esterni. In alternativa, puoi specificare ElencodeniedValues
per indicare le VM da cui vuoi impedire esplicitamente di avere un indirizzo IP esterno. Qualsiasi VM non in elenco è implicitamente autorizzati ad avere un indirizzo IP esterno. Puoi specificare solo:allowedValues
odeniedValues
, ma non entrambi.Ad esempio, questa è una richiesta di impostare il Vincolo di
compute.vmExternalIpAccess
su un progetto per consentire VM specifiche per avere indirizzi IP esterni:POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setOrgPolicy
Sostituisci
PROJECT_ID
con l'ID progetto per questo richiesta.Il corpo della richiesta contiene il criterio per questo vincolo:
{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/VM_NAME" ] } } }
Best practice per limitare gli indirizzi IP esterni
Gestisci indirizzi IP esterni statici
Le seguenti sezioni descrivono come gestire indirizzi IP esterni statici per le tue VM.
Determina se un indirizzo IP interno è temporaneo o statico
Gli indirizzi IP interni statici e temporanei si comportano e hanno lo stesso aspetto nella maggior parte i contesti. Tuttavia, con gli indirizzi IP interni statici puoi utilizzare per la stessa risorsa anche se la elimini e la crei nuovamente. In generale, se interrompi o elimini il comando, viene rilasciato risorsa.
Per determinare se un indirizzo è statico o temporaneo:
Annulla l'assegnazione di un indirizzo IP esterno statico
L'annullamento dell'assegnazione di un indirizzo IP ne comporta la rimozione dalla risorsa, di mantenere riservato l'indirizzo IP. Dopo aver annullato l'assegnazione dell'indirizzo IP, puoi e riassegnare l'indirizzo IP a un'altra risorsa.
Puoi anche annullare l'assegnazione dell'indirizzo IPv4 o IPv6 l'eliminazione della VM.
Console
gcloud
Ora che il tuo indirizzo IP esterno statico è disponibile, puoi scegliere la assegnano a un'altra VM.
REST
Per annullare l'assegnazione di un indirizzo IPv4 o IPv6 esterno statico, segui questi passaggi passaggi:
Java
Python
Rilascia un indirizzo IP esterno statico
Se non hai più bisogno di un indirizzo IPv4 o IPv6 esterno statico, puoi rilasciare l'indirizzo IP eliminando la risorsa dell'indirizzo IP. L'eliminazione di una VM rilascia automaticamente un indirizzo IP esterno statico. Devi rilasciare manualmente indirizzi IP esterni statici quando non sono più necessari.
Per rilasciare un indirizzo IP esterno statico, consulta Rilasciare un indirizzo IP esterno statico nella documentazione del VPC.
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-07-26 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -