Sie können Ihren virtuellen Maschinen (VMs) und Bare-Metal-Instanzen statische externe IP-Adressen zuweisen. Sie können statische IP-Adressen für Ihre Instanzen auch ändern, auflisten und freigeben. Informationen zum Reservieren einer statischen externen IP-Adresse finden Sie unter Statische externe IP-Adresse reservieren.
Externe IP-Adressen können statisch oder sitzungsspezifisch sein. Wenn für eine Instanz eine feste externe IP-Adresse erforderlich ist, die sich nicht ändert, gehen Sie so vor:
- Holen Sie sich eine statische externe IP-Adresse. Sie können neue externe IP-Adressen reservieren oder vorhandene sitzungsspezifische externe IP-Adressen umwandeln.
- Weisen Sie die reservierte IP-Adresse einer vorhandenen Instanz zu oder weisen Sie sie beim Erstellen einer neuen Instanz zu.
Wenn Sie eine statische IP-Adresse für Ihr internes Compute Engine-Netzwerk benötigen, lesen Sie stattdessen den Artikel Statische interne IP-Adresse reservieren.
Informationen zum Reservieren einer statischen externen IP-Adresse oder zum Erstellen einer globalen externen IP-Adresse finden Sie unter Statische externe IP-Adresse reservieren.
Hinweise
- Weitere Informationen zu IP-Adressen
- Informationen zu Kontingenten und Limits für statische externe IP-Adressen.
- Informationen zu Preisen für externe IP-Adressen.
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud -Dienste und ‑APIs überprüft.
Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:
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
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Zum Erstellen und Aktualisieren von Instanzen:
Compute-Instanzadministrator (Version 1) (
roles/compute.instanceAdmin.v1
) -
compute.instances.update
für die Instanz -
compute.instances.updateNetworkInterface
für die Instanz -
compute.instances.addAccessConfig
für die Instanz -
compute.instances.deleteAccessConfig
für die Instanz -
compute.networks.list
für das Netzwerk compute.subnetworks.use
für das Subnetzcompute.subnetworks.list
für das Subnetz-
So erstellen Sie Instanzen:
compute.instances.create
für das Projekt- Zur Erstellung der VM mit einem benutzerdefinierten Image:
compute.images.useReadOnly
für das Image - Zur Erstellung der VM mithilfe eines Snapshots:
compute.snapshots.useReadOnly
für den Snapshot - Zur Erstellung der VM mithilfe einer Instanzvorlage:
compute.instanceTemplates.useReadOnly
für die Instanzvorlage - Um der VM ein Legacy-Netzwerk zuzuweisen:
compute.networks.use
für das Projekt - Zum Festlegen einer statische IP-Adresse für die VM:
compute.addresses.use
für das Projekt - Zur Zuweisung einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks:
compute.networks.useExternalIp
für das Projekt - Um ein Subnetz für die VM anzugeben:
compute.subnetworks.use
für das Projekt oder für das ausgewählte Subnetz - Um der VM eine externe IP-Adresse zuzuweisen, wenn Sie ein VPC-Netzwerk verwenden:
compute.subnetworks.useExternalIp
für das Projekt oder für das ausgewählte Subnetz - Um die Metadaten der VM-Instanz für die VM festzulegen:
compute.instances.setMetadata
für das Projekt - Um Tags für die VM festzulegen:
compute.instances.setTags
für die VM - Um Labels für die VM festzulegen:
compute.instances.setLabels
für die VM - Um ein Dienstkonto festzulegen, das die VM verwenden soll:
compute.instances.setServiceAccount
für die VM - Um ein neues Laufwerk für die VM zu erstellen:
compute.disks.create
für das Projekt - Um ein vorhandenes Laufwerk im Lese- oder Lese‑/Schreibmodus anzuhängen:
compute.disks.use
für das Laufwerk - Um ein vorhandenes Laufwerk im Lesemodus anzuhängen:
compute.disks.useReadOnly
für das Laufwerk
Eine statische externe IP-Adresse kann immer nur von einer einzigen Ressource verwendet werden.
Ist eine IP-Adresse einmal einer Ressource zugewiesen, kann nicht überprüft werden, ob die IP-Adresse statisch oder sitzungsspezifisch ist. Sie können die IP-Adresse mit der Liste der für dieses Projekt reservierten statischen externen IP-Adressen vergleichen. Mit dem Unterbefehl
gcloud compute addresses list
können Sie eine Liste der für Ihr Projekt verfügbaren statischen externen IP-Adressen aufrufen.Jede VM kann mehrere Netzwerkschnittstellen haben und jeder Schnittstelle können je nach Stacktyp die folgenden IP-Adressen zugewiesen werden:
- Nur IPv4-Schnittstellen:
- Eine interne IPv4-Adresse (erforderlich)
- Eine externe IPv4-Adresse (optional)
- Dual-Stack-Schnittstellen (IPv4 und IPv6):
- Eine interne IPv4-Adresse (erforderlich)
- Eine externe IPv4-Adresse (optional)
- Ein
/96
-IPv6-Adressbereich, entweder intern oder extern, aber nicht beides (erforderlich)
- Nur-IPv6-Schnittstellen (Vorabversion):
- Ein
/96
-IPv6-Adressbereich, entweder intern oder extern, aber nicht beides (erforderlich)
- Ein
- Nur IPv4-Schnittstellen:
Sie können die externe IPv6-Adresse einer VM mit einer reinen IPv6-Netzwerkschnittstelle nicht aufheben oder ändern. Sie können jedoch eine sitzungsspezifische externe IP-Adresse einer Ressource in eine statische externe IP-Adresse umwandeln, damit die Adresse auch nach dem Löschen der Ressource reserviert bleibt.
Der Name einer statischen IP-Adresse kann nicht geändert werden.
Rufen Sie in der Google Cloud Console die Seite IP-Adressen auf.
Klicken Sie auf Externe IP-Adressen.
Verwenden Sie den folgenden Befehl, um alle globalen IP-Adressen aufzulisten:
gcloud compute addresses list
Verwenden Sie den folgenden Befehl, um alle globalen IP-Adressen aufzulisten:
gcloud compute addresses list --global
Verwenden Sie den folgenden Befehl, um alle regionalen IP-Adressen in einer bestimmten Region aufzulisten:
gcloud compute addresses list \ --regions=REGION
Ersetzen Sie
REGION
durch die Region, für die Sie Adressen auflisten möchten. Sie können Adressen mehrerer Regionen auflisten, indem Sie durch Kommas getrennte Regionsnamen angeben:gcloud compute addresses list \ --regions=REGION1,REGION2,..REGION_n_
Rufen Sie die Methode
addresses.list
auf, um regionale IPv4- oder IPv6-Adressen aufzulisten:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
Ersetzen Sie Folgendes:
PROJECT_ID
ist die Projekt-ID für diese Anfrage.REGION
ist der Name der Region für diese Anfrage.
Rufen Sie die Methode
addresses.aggregatedList
auf, um eine Liste aller Adressen in allen Regionen zu erhalten.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/addresses
Rufen Sie die Methode
globalAddresses.list
auf, um globale IPv4- oder IPv6-Adressen aufzulisten:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses
Ersetzen Sie Folgendes:
PROJECT_ID
ist die Projekt-ID für diese Anfrage.Rufen Sie in der Google Cloud -Konsole die Seite Instanz erstellen auf.
Geben Sie die Instanzdetails an.
Maximieren Sie den Bereich Erweiterte Optionen.
Maximieren Sie den Bereich Netzwerk.
Maximieren Sie im Bereich Netzwerkschnittstellen eine Netzwerkschnittstelle, um sie zu bearbeiten.
So weisen Sie eine IPv4-Adresse zu:
- Wählen Sie ein Netzwerk aus.
- Wählen Sie die IP-Adresse aus der Liste Externe IPv4-Adresse aus.
So weisen Sie eine IPv6-Adresse zu:
- Wählen Sie ein Netzwerk aus, das ein Subnetz mit einem externen IPv6-Adressbereich enthält.
- Wählen Sie das Subnetz aus der Liste Subnetzwerk aus.
- Wählen Sie für IP-Stack-Typ die Option IPv4 und IPv6 (Dual-Stack) oder IPv6 (einzelner Stack) aus.
- Wählen Sie die neu reservierte externe IPv6-Adresse aus der Liste Externe IPv6-Adresse aus. Alternativ können Sie Statische externe IPv6-Adresse reservieren auswählen und eine neue statische externe IPv6-Adresse reservieren.
- Wählen Sie für Netzwerkdienststufe die Option Premium aus.
Klicken Sie auf Fertig, um die Änderung der Standard-Netzwerkschnittstelle abzuschließen.
Fahren Sie mit der Erstellung der Instanz fort.
So weisen Sie eine statische externe IPv4-Adresse zu:
gcloud compute instances create INSTANCE_NAME \ --zone=ZONE \ --address=IPV4_ADDRESS
So weisen Sie eine statische externe IPv6-Adresse zu:
gcloud compute instances create INSTANCE_NAME \ --zone=ZONE \ --subnet=SUBNET \ --stack-type=STACK_TYPE \ --external-ipv6-address=IPV6_ADDRESS \ --external-ipv6-prefix-length=96 \ --ipv6-network-tier=PREMIUM
Ersetzen Sie Folgendes:
INSTANCE_NAME
: Der Name der Compute-Instanz.ZONE
: die Zone, in der die Instanz erstellt wird.IPV4_ADDRESS
: die IPv4-Adresse, die der Instanz zugewiesen werden soll. Verwenden Sie die reservierte statische externe IP-Adresse, nicht den Adressnamen.SUBNET
: ein Subnetz mit externen IPv6-AdressenSTACK_TYPE
: der Stacktyp für die Instanz, entwederIPV4_IPV6
(Dual-Stack) oderIPV6_ONLY
IPV6_ADDRESS
: die IPv6-Adresse, die der Instanz zugewiesen werden soll. Verwenden Sie die reservierte statische externe IP-Adresse, nicht den Adressnamen.
So weisen Sie einer neuen Compute-Instanz eine statische externe IPv4-Adresse zu:
Geben Sie in der Anfrage zum Erstellen einer neuen Instanz explizit das Attribut
networkInterfaces[].accessConfigs[].natIP
und die externe IPv4-Adresse an, die Sie verwenden möchten, z. B.:{ "name": "INSTANCE_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" } }] }
Ersetzen Sie Folgendes:
INSTANCE_NAME
: der Name der Compute-InstanzZONE
: die Zone, in der die Instanz erstellt wird.MACHINE_TYPE
(optional): Vollständige oder teilweise URL der Maschinentypressource, die beim Erstellen der Instanz verwendet werden soll, im Format:zones/ZONE/machineTypes/MACHINE_TYPE
IPV4_ADDRESS
: die IPv4-Adresse, die der Instanz zugewiesen werden soll. Verwenden Sie die reservierte statische externe IP-Adresse, nicht den Adressnamen.SOURCE_IMAGE
: eine bestimmte Version eines öffentlichen Bildes, z. B.projects/debian-cloud/global/images/debian-10-buster-v20200309
, oder einer Bildfamilie, z. B.projects/debian-cloud/global/images/family/debian-10
So weisen Sie einer neuen Instanz eine statische externe IPv6-Adresse zu:
Geben Sie in der Anfrage zum Erstellen einer neuen Instanz explizit das Attribut
networkInterfaces[].ipv6AccessConfigs[].externalIpv6
und die externe IPv6-Adresse an, die Sie verwenden möchten, z. B.:{ "name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "networkInterfaces": [{ "ipv6AccessConfigs": [{ "externalIpv6": "IPV6_ADDRESS", "externalIpv6PrefixLength": 96, "name": "external-ipv6-access-config", "networkTier": "PREMIUM", "type": "DIRECT_IPV6" }], "stackType": "STACK_TYPE", "subnetwork":"SUBNETWORK" }], "disks": [{ "autoDelete": "true", "boot": "true", "mode": "READ_WRITE", "type": "PERSISTENT", "initializeParams": { "sourceImage": "SOURCE_IMAGE" }, }], }
Ersetzen Sie Folgendes:
INSTANCE_NAME
: der Name der Compute-InstanzZONE
: die Zone, in der die Instanz erstellt wird.MACHINE_TYPE
(optional): Vollständige oder teilweise URL der Maschinentypressource, die beim Erstellen der Instanz verwendet werden soll, im Format:zones/ZONE/machineTypes/MACHINE_TYPE
IPV6_ADDRESS
: die IPv6-Adresse, die der Instanz zugewiesen werden soll. Verwenden Sie die reservierte statische externe IP-Adresse, nicht den Adressnamen.STACK_TYPE
: der Stacktyp für die Instanz, entwederIPV4_IPV6
(Dual-Stack) oderIPV6_ONLY
SUBNET
: ein Subnetz mit externen IPv6-AdressenSOURCE_IMAGE
: eine bestimmte Version eines öffentlichen Bildes, z. B."projects/debian-cloud/global/images/debian-10-buster-v20200309"
, oder einer Bildfamilie, z. B."projects/debian-cloud/global/images/family/debian-10"
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie auf den Namen der Instanz, der Sie eine externe IP-Adresse zuweisen möchten. Die Seite Instanzdetails wird angezeigt.
Führen Sie auf der Seite Instanzdetails folgende Schritte aus:
- Klicken Sie auf Bearbeiten.
- Maximieren Sie Netzwerkschnittstellen.
- Wählen Sie die erforderliche externe IP-Adresse aus, die der Instanz zugewiesen werden soll.
Wenn die Instanz nur IPv4 unterstützt und Sie ihr eine IPv6-Adresse zuweisen möchten, müssen Sie zuerst den Stacktyp in „Dual-Stack“ ändern.
- Wählen Sie für Externe IPv4-Adresse entweder Sitzungsspezifisch oder eine statische externe IPv4-Adresse aus.
- Wählen Sie für Externe IPv6-Adresse entweder Sitzungsspezifisch oder eine statische externe IPv6-Adresse aus.
- Klicken Sie auf Fertig.
Klicken Sie auf Speichern.
Optional: Reservieren Sie eine statische externe IP-Adresse.
Wenn Sie eine statische externe IP-Adresse zuweisen, müssen Sie diese zuerst reservieren und prüfen, ob die Adresse nicht von einer anderen Ressource verwendet wird. Folgen Sie gegebenenfalls der Anleitung unter Neue statische externe IP-Adresse reservieren oder Zuweisung einer statischen externen IP-Adresse aufheben.
Wenn Sie eine sitzungsspezifische externe IP-Adresse verwenden möchten, können Sie diesen Schritt überspringen. Compute Engine weist dann eine sitzungsspezifische externe IP-Adresse nach dem Zufallsprinzip zu.
Entfernen Sie alle vorhandenen IP-Adresszuweisungen. Weitere Informationen finden Sie unter Zuweisung einer statischen externen IP-Adresse aufheben.
Weisen Sie die neue externe IP-Adresse zu.
Verwenden Sie zum Zuweisen einer IPv4-Adresse den Unterbefehl
instances add-access-config
:Hinweis: Ersetzen SieIP_ADDRESS
nicht durch den Namen der statischen IP-Adresse, sondern geben Sie die tatsächliche IP-Adresse an.gcloud compute instances add-access-config INSTANCE_NAME \ --access-config-name="ACCESS_CONFIG_NAME" --address=IP_ADDRESS
Ersetzen Sie Folgendes:
INSTANCE_NAME
: der Name der Instanz.ACCESS_CONFIG_NAME
ist der Name dieser Zugriffskonfiguration. Achten Sie darauf, dass Sie vollständigen Namen in Anführungszeichen angeben.IP_ADDRESS
ist die IP-Adresse, die hinzugefügt werden soll.
Wenn Sie möchten, dass Compute Engine eine sitzungsspezifische externe IP-Adresse statt einer statischen externen IP-Adresse zuweist, lassen Sie das Attribut
--address IP_ADDRESS
weg:gcloud compute instances add-access-config INSTANCE_NAME \ --access-config-name="ACCESS_CONFIG_NAME"
Verwenden Sie den Unterbefehl
instance network-interfaces update
, um eine Instanz in Dual-Stack umzuwandeln und ihr eine IPv6-Adresse zuzuweisen:gcloud compute instances network-interfaces update INSTANCE_NAME \ --network-interface=NIC \ --ipv6-network-tier=PREMIUM \ --stack-type=STACK_TYPE \ --external-ipv6-address=IPV6_ADDRESS \ --external-ipv6-prefix-length=96 \ --zone=ZONE
Ersetzen Sie Folgendes:
INSTANCE_NAME
: der Name der Instanz.NIC
: der Name der Netzwerkschnittstelle.STACK_TYPE
: der Stacktyp für die Instanz, derIPV4_IPV6
lauten muss. Sie können den Stacktyp nicht in IPV6_ONLY ändern.IPV6_ADDRESS
: die IPv6-Adresse, die der Instanz zugewiesen werden soll. Geben Sie die erste IPv6-Adresse im Bereich/96
an.ZONE
ist die Zone der Instanz.
Entfernen Sie alle vorhandenen IP-Adresszuweisungen. Weitere Informationen finden Sie unter Zuweisung einer statischen externen IP-Adresse aufheben.
Löschen Sie die vorhandene Zugriffskonfiguration. Senden Sie dazu eine
POST
-Anfrage an die Methodeinstances.deleteAccessConfig
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/deleteAccessConfig
Fügen Sie der Netzwerkschnittstelle der Instanz eine neue Zugriffskonfiguration hinzu. Stellen Sie dazu eine
POST
-Anfrage an die Methodeinstances.addAccessConfig
.Stellen Sie für IPv4-Adressen die folgende Anfrage:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig { "natIP": "IPV4_ADDRESS", "name": "ACCESS_CONFIG_NAME" }
Aktualisieren Sie bei IPv6-Adressen die
stackType
der Netzwerkschnittstelle aufIPV4_IPV6
und aktualisieren Sie das AttributnetworkInterfaces[].ipv6AccessConfigs[].externalIpv6
sowie die externe IPv6-Adresse, die Sie verwenden möchten.Weitere Informationen finden Sie unter Statische externe IP-Adresse einer neuen Instanz zuweisen.
- Sie können die Listeneinschränkung nur auf Instanzen anwenden.
- Die Einschränkung lässt sich nicht rückwirkend anwenden. Alle Instanzen, die externe IP-Adressen haben, bevor Sie die Richtlinie aktivieren, behalten diese.
- Diese Einschränkung akzeptiert entweder eine
allowedList
- oder einedeniedList
-Aufstellung, aber nicht beide in derselben Richtlinie. - Für die Verwaltung und Pflege des Lebenszyklus und der Integrität der Instanz sind Sie oder ein Administrator mit den entsprechenden Berechtigungen verantwortlich. Die Einschränkung überprüft nur den URI der Instanz und verhindert nicht, dass die Instanzen in der Zulassungsliste geändert, gelöscht oder neu erstellt werden.
- Öffnen Sie die Seite Organisationsrichtlinien.
- Wählen Sie gegebenenfalls die erforderliche Organisation aus dem Drop-down-Menü des Projekts aus.
- Klicken Sie auf Zulässige externe IPs für VM-Instanzen definieren.
- Klicken Sie auf Bearbeiten, um die externe IP-Richtlinie zu bearbeiten. Wenn Sie nicht auf Bearbeiten klicken können, fehlen Ihnen die erforderlichen Berechtigungen.
Wählen Sie Anpassen aus, um die Organisationsrichtlinie für bestimmte Instanzen festzulegen.
Wählen Sie die erforderlichen Richtlinienerzwingungen und den erforderlichen Richtlinientyp aus.
Wählen Sie für Richtlinienwerte die Option Benutzerdefiniert aus.
Geben Sie einen URI für eine Instanz ein. Der URI muss das folgende Format haben:
projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
Klicken Sie auf Neuer Richtlinienwert und geben Sie nach Bedarf URIs für Instanzen ein.
Klicken Sie auf Speichern, um die Einschränkung anzuwenden.
PROJECT_ID
ist die Projekt-ID für diese Anfrage, z. B.example-project
. Beachten Sie, dass sich dieser Vorgang vom Einrichten der Organisationsrichtlinien unterscheidet. Hier ist die numerische ID der Organisation erforderlich.ZONE
: Zone der InstanzINSTANCE_NAME
ist der Name der Instanz.PROJECT_ID
ist die Projekt-ID für diese Anfrage, z. B.example-project
. Beachten Sie, dass sich dieser Vorgang vom Einrichten der Organisationsrichtlinien unterscheidet. Hier ist die numerische ID der Organisation erforderlich.ZONE
ist die Zone der Instanz.INSTANCE_NAME
: der Name der Instanz.Vermeiden Sie die Verwendung der
deniedValues
-Liste mit dieser Einschränkung. Wenn Sie Werte in der ListedeniedValues
definieren, bedeutet das, dass nur die Instanzen in der ListedeniedValues
keine externen IP-Adressen haben dürfen. Dies könnte zu Sicherheitsproblemen führen, wenn Sie genau steuern möchten, welche Instanzen externe IP-Adressen haben dürfen. Wenn Sie bestimmte Instanzen aus der ListeallowedValues
entfernen möchten, aktualisieren Sie die vorhandene Richtlinie, um die Instanzen aus der AufstellungallowedList
zu entfernen, statt die Instanzen in die ListedeniedValues
mit einer niedrigeren Hierarchie aufzunehmen.Wenn Sie eine Richtlinie für einen großen Teil der Ressourcenhierarchie einrichten, aber bestimmte Projekte ausnehmen möchten, stellen Sie die Standardrichtlinie mit der Methode
setOrgPolicy
wieder her. Geben Sie dazu das ObjektrestoreDefault
an. Dadurch lassen Sie zu, dass alle Instanzen in den Projekten mit externen IP-Adressen verknüpft werden. Die aktuellen Richtlinien für Projekte sind von der Standardeinstellung nicht betroffen.Verwenden Sie die Organisationsrichtlinie zusammen mit IAM-Rollen, um die Umgebung besser zu steuern. Diese Richtlinie gilt nur für Instanzen. Wenn Sie externe IP-Adressen von Netzwerkgeräten jedoch besser kontrollieren und einschränken möchten, können Sie den entsprechenden Nutzern die Rolle
compute.networkAdmin
gewähren.Die Organisationsrichtlinie gilt für alle Dienste und Produkte, die innerhalb der Organisation oder des Projekts in Compute Engine ausgeführt werden und für die die Richtlinie aktiviert ist. Insbesondere sind Dienste wie Google Kubernetes Engine, Dataflow, Dataproc und Cloud SQL von dieser Richtlinie betroffen. Wenn dies ein Problem ist, sollten Sie weitere Dienste und Produkte in einem anderen Projekt einrichten, für das die Organisationsrichtlinie nicht gilt, und bei Bedarf freigegebene VPC verwenden.
Rufen Sie in der Google Cloud Console die Seite IP-Adressen auf.
Suchen Sie die Adresse in der Liste und prüfen Sie die Spalte Typ auf den Typ der IP-Adresse.
Rufen Sie in der Google Cloud Console die Seite IP-Adressen auf.
Klicken Sie auf Externe IP-Adressen.
Wählen Sie die statische IP-Adresse aus, deren Zuweisung Sie aufheben möchten.
Klicken Sie auf
Aktionen ansehen und wählen Sie die Option Auf eine andere Ressource neu zuweisen aus.Wählen Sie aus der Drop-down-Liste Anhängen an die Option Keine aus.
Klicken Sie auf OK.
Mit dem Befehl
gcloud compute addresses list
können Sie prüfen, ob eine statische IP-Adresse verwendet wird:gcloud compute addresses list
Die Ausgabe sieht in etwa so aus:
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
- Wenn die IP-Adresse nicht verwendet wird, ist der Status
RESERVED
. - Wenn die IP-Adresse verwendet wird, ist der Status
IN_USE
.
- Wenn die IP-Adresse nicht verwendet wird, ist der Status
Rufen Sie den Namen der Instanz ab, die die IP-Adresse verwendet:
gcloud compute addresses describe ADDRESS_NAME \ --region=REGION
Ersetzen Sie Folgendes:
ADDRESS_NAME
ist der Name der IPv6-Adressressource.REGION
ist die Region der IPv6-Adressressource.
Die Ausgabe sieht in etwa so aus:
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/INSTANCE_NAME
Das Feld
users
zeigt den Namen der Instanz an, die die IP-Adresse verwendet.Heben Sie die Zuweisung der IP-Adresse zur Instanz auf.
Löschen Sie die Zugriffskonfigurationsdatei der Instanz, um die Zuweisung einer IPv4-Adresse aufzuheben:
Rufen Sie den Namen der Zugriffskonfiguration ab, die Sie löschen möchten. Verwenden Sie den Befehl
gcloud compute instances describe
, um den Namen abzurufen. Ersetzen SieINSTANCE_NAME
durch den Namen der Instanz.gcloud compute instances describe INSTANCE_NAME
Die Zugriffskonfiguration wird im folgenden Format ausgegeben:
networkInterfaces: - accessConfigs: - kind: compute#accessConfig name: external-nat natIP: 203.0.113.1 type: ONE_TO_ONE_NAT
Löschen Sie die Zugriffskonfiguration mit dem Befehl
gcloud compute instances delete-access-config
:gcloud compute instances delete-access-config INSTANCE_NAME \ --access-config-name="ACCESS_CONFIG_NAME"
Ersetzen Sie Folgendes:
INSTANCE_NAME
: der Name der Instanz.ACCESS_CONFIG_NAME
ist der Name der Zugriffskonfiguration, die Sie löschen möchten. Der vollständige Name muss in Anführungszeichen angegeben werden.
Verwenden Sie den Befehl
instance network-interfaces update
, um die Zuweisung eines IPv6-Adressbereichs aufzuheben:gcloud compute instances network-interfaces update INSTANCE_NAME \ --network-interface=nic0 \ --stack-type=IPV4_ONLY \ --zone=ZONE
Ersetzen Sie Folgendes:
INSTANCE_NAME
ist der Name der Instanz, die die IP-Adresse verwendet.ZONE
ist die Zone der Instanz.
Überprüfen Sie, ob Ihre statische externe IP-Adresse nun verfügbar und anstelle von
IN_USE
alsRESERVED
gekennzeichnet ist.gcloud compute addresses list \ --filter="ADDRESS_NAME AND region=REGION"
Ersetzen Sie Folgendes:
ADDRESS_NAME
: der Name der IP-Adressressource.REGION
: die Region der IP-Adressressource.
Löschen Sie bei IPv4-Adressen die Zugriffskonfiguration, die der Instanz zugeordnet ist, die die Adresse verwendet.
Senden Sie eine
GET
-Anfrage an die Methodeinstances.get
, um die Details der Zugriffskonfiguration einer Instanz zu prüfen.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
Löschen Sie die vorhandene Zugriffskonfiguration. Senden Sie dazu eine
POST
-Anfrage an die Methodeinstances.deleteAccessConfig
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/deleteAccessConfig
Ersetzen Sie Folgendes:
PROJECT_ID
ist die Projekt-ID für diese Anfrage.ZONE
: Die Zone, in der sich die Instanz befindet.INSTANCE_NAME
ist der Name der Instanz.
Aktualisieren Sie bei IPv6-Adressen den Stacktyp der Netzwerkschnittstelle für die Instanz, an die die IPv6-Adresse angehängt ist.
Stellen Sie eine
PATCH
-Anfrage an die Methodeinstances.updateNetworkInterface
.Aktualisieren Sie im Anfragetext den Wert des Felds
stackType
inIPV4_ONLY
.Beispiel:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateNetworkInterface { "networkInterfaces": [{ ... "stackType" : "IPV4_ONLY" ... }] }
- Weitere Informationen zu IP-Adressen
- Weitere Informationen zu Netzwerken und Firewalls
- Weitere Informationen zum Adressieren von Compute Engine-Instanzen mit internem DNS
- Preise für VPC
Terraform
Wenn Sie die Terraform-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
Weitere Informationen unter Set up authentication for a local development environment.
REST
Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren und Verwalten von statischen IP-Adressen benötigen:
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Konfigurieren und Verwalten von statischen IP-Adressen erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um statische IP-Adressen zu reservieren und zu verwalten:
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Beschränkungen
Hinweis: Netzwerkschnittstellen können Traffic über mehrere Weiterleitungsregeln empfangen, die unter Umständen andere externe IP-Adressen bedienen. Beliebig viele externe IP-Adressen können eine Netzwerkschnittstelle über diese Weiterleitungsregeln referenzieren, aber jeder Netzwerkschnittstelle kann nur eine externe IPv4-Adresse und ein externer
/96
-IPv6-Adressbereich zugewiesen werden.Weitere Informationen über Load-Balancing und Weiterleitungsregeln finden Sie in der Dokumentation zu Load-Balancing (nur auf Englisch verfügbar).
Verfügbare statische externe IP-Adressen ansehen
So listen Sie statische externe IP-Adressen auf, die Sie für Ihr Projekt reserviert haben.
Console
gcloud
Führen Sie folgenden
gcloud compute addresses list
-Befehl aus:API
Go
Java
Python
Statische externe IP-Adressen konfigurieren
In den folgenden Abschnitten wird beschrieben, wie Sie statische externe IP-Adressen für Ihre Instanzen konfigurieren.
Instanz mit statischer externer IP-Adresse erstellen
Nachdem Sie eine statische externe IP-Adresse reserviert haben, können Sie sie einer Instanz zuweisen.
Console
gcloud
Sie können eine Instanz erstellen und eine statische regionale, externe IP-Adresse zuweisen, die Sie bereits reserviert haben.
Terraform
Sie können mit der Ressource
google_compute_instance
eine externe IP-Adresse zuweisen.REST
Go
Java
Python
Externe IP-Adresse ändern oder einer vorhandenen Instanz zuweisen
Sie können die sitzungsspezifische oder statische externe IP-Adresse für eine bestehende reine IPv4- oder Dual-Stack-Instanz ändern oder zuweisen. Dieser Vorgang wird für reine IPv6-Instanzen nicht unterstützt.
Eine Compute-Instanz kann mehrere Schnittstellen haben. Eine Single-Stack-Schnittstelle kann eine externe IP-Adresse haben. Eine Dual-Stack-Schnittstelle kann eine externe IPv4-Adresse und eine externe IPv6-Adresse haben. Wenn die Instanz bereits eine externe IP-Adresse hat, müssen Sie diese Adresse zuerst entfernen. Anschließend können Sie der vorhandenen Instanz eine neue externe IP-Adresse zuweisen.
Console
gcloud
REST
Sie können die externe IPv4- oder IPv6-Adresse einer Instanz ändern. Fügen Sie dazu eine neue Zugriffskonfiguration für diese Instanz hinzu.
Go
Java
Python
Externe IP-Adressen auf bestimmte Instanzen beschränken
Für bestimmte Arbeitslasten können grundlegende Anforderungen bestehen, zu denen Sicherheits- und Netzwerkeinschränkungen gehören. Sie haben beispielsweise die Möglichkeit, die externen IP-Adressen so zu beschränken, dass sie nur von bestimmten Compute-Instanzen verwendet werden können. Mit dieser Option können Sie die Daten-Exfiltration verhindern oder die Netzwerkisolation aufrechterhalten. Mithilfe einer Organisationsrichtlinie können Sie externe IP-Adressen auf bestimmte Instanzen beschränken, um die Verwendung externer IP-Adressen für Ihre Instanzen innerhalb einer Organisation oder eines Projekts zu steuern.
Die Einschränkung zur Steuerung externer IP-Adressen auf Instanzen lautet:
constraints/compute.vmExternalIpAccess
Wenn Sie sie verwenden möchten, geben Sie eine Richtlinie mit einer
allowedList
-Aufstellung der Instanzen an, die externe IP-Adressen haben dürfen. Wenn Sie keine Richtlinie angeben, sind alle externen IP-Adressen für alle Instanzen zulässig. Ist dagegen eine Richtlinie vorhanden, kann nur den Instanzen, die in derallowedValues
-Liste enthalten sind, eine sitzungsspezifische oder statische externe IP-Adresse zugewiesen werden. Andere Compute Engine-Instanzen in der Organisation oder dem Projekt, die nicht explizit in der Richtlinie definiert sind, dürfen keine externen IP-Adressen verwenden.Instanzen werden in den Listen mit zugelassenen oder verbotenen Instanzen anhand ihres URI identifiziert:
projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
Spezifikationen zum Beschränken externer IP-Adressen
Erforderliche Berechtigungen zum Beschränken externer IP-Adressen
Wenn Sie eine Einschränkung auf Projekt- oder Organisationsebene einrichten möchten, müssen Sie in Ihrer Organisation die Rolle
orgpolicy.policyAdmin
haben.Richtlinieneinschränkung auf Organisationsebene festlegen
Console
gcloud
Wenn Sie eine Einschränkung für den Zugriff auf externe IP-Adressen einrichten möchten, folgen Sie den Anweisungen unten. Sie können die Organisations-ID ermitteln, indem Sie den Befehl
organizations list
ausführen und in der Antwort nach der numerischen ID suchen:gcloud organizations list
Die gcloud CLI gibt eine Liste der Organisationen im folgenden Format zurück:
DISPLAY_NAME ID example-organization1 29252605212 example-organization2 1234567890
Geben Sie die Richtlinie mit dem Befehl
gcloud resource-manager org-policies set-policy
an. Sie müssen die Richtlinie als JSON-Datei bereitstellen. Erstellen Sie eine JSON-Datei im folgenden Format:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME", "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME", "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME" ] } }
Dabei gilt:
Alternativ können Sie eine
deniedValues
-Liste mit Instanzen angeben, für die Sie externe IP-Adressen explizit ausschließen möchten. Alle Instanzen, die nicht auf der Liste stehen, dürfen dann eine externe IP-Adresse haben. Sie können nur eine der beiden OptionenallowedValues
oderdeniedValues
angeben, aber nicht beide.Übergeben Sie dann die Datei mit Ihrer Anfrage:
gcloud resource-manager org-policies set-policy MY_POLICY.JSON --organization=ORGANIZATION_ID
Ersetzen Sie
ORGANIZATION_ID
durch die numerische ID der Organisation.Wenn keine der Instanzen auf externe IP-Adressen zugreifen können soll, legen Sie eine Richtlinie fest, in der
allValues
aufDENY
gesetzt ist:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allValues": "DENY" } }
REST
Verwenden Sie die
setOrgPolicy()
API, um die Einschränkung zu definieren. Die von Ihnen in dieallowedValue
-Liste aufgenommenen Instanzen dürfen externe IP-Adressen haben. Alternativ können Sie einedeniedValues
-Liste mit Instanzen angeben, für die Sie externe IP-Adressen explizit ausschließen möchten. Alle Instanzen, die nicht auf der Liste stehen, dürfen dann eine externe IP-Adresse haben. Sie können nur eine der beiden Optionen angeben, entwederallowedValues
oderdeniedValues
, aber nicht beide.Das folgende Beispiel zeigt eine Anfrage zum Anwenden der Einschränkung
compute.vmExternalIpAccess
für eine Organisation, in der Instanzen aus bestimmten Projekten innerhalb der Organisation externe IP-Adressen haben dürfen:POST https://cloudresourcemanager.googleapis.com/v1/organizations/ORGANIZATION_ID:setOrgPolicy
wobei
ORGANIZATION_ID
die numerische ID der Organisation ist.Geben Sie nun im Anfragetext die Richtlinie für diese Einschränkung an:
{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME", "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME", "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME" ] } } }
Wenn keine der Instanzen auf externe IP-Adressen zugreifen können soll, legen Sie eine Richtlinie fest, in der
allValues
aufDENY
gesetzt ist:{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allValues": "DENY" } } }
Richtlinie auf Projektebene einrichten
Eine auf Projektebene festgelegte Richtlinie überschreibt die Richtlinie auf der Organisationsebene. Wenn beispielsweise auf Organisationsebene die Instanz
example-vm-1
auf derallowedValues
-Liste steht, in der Richtlinie auf Projektebene dieselbe Instanz jedoch in derdeniedValues
-Liste enthalten ist, darf die Instanz keine externe IP-Adresse haben.Console
Führen Sie den gleichen Vorgang aus, der unter Richtlinieneinschränkungen auf Organisationsebene einrichten erläutert wird, aber wählen Sie anstelle der Organisation das Projekt aus der Projektauswahl aus.
gcloud
Geben Sie die Richtlinie mit dem Befehl
gcloud resource-manager org-policies set-policy
an. Sie müssen die Richtlinie als JSON-Datei bereitstellen. Erstellen Sie eine JSON-Datei im folgenden Format:{ "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME" ] } }
Dabei gilt:
Alternativ können Sie eine
deniedValues
-Liste mit Instanzen angeben, für die Sie externe IP-Adressen explizit ausschließen möchten. Alle Instanzen, die nicht auf der Liste stehen, dürfen dann eine externe IP-Adresse haben. Sie können nur eine der beiden Optionen angeben, entwederallowedValues
oderdeniedValues
, aber nicht beide.Übergeben Sie dann die Datei mit Ihrer Anfrage:
gcloud resource-manager org-policies set-policy MY_POLICY.JSON --project=example-project
REST
Verwenden Sie die
setOrgPolicy
API, um die Einschränkung zu definieren. Die von Ihnen in dieallowedValue
-Liste aufgenommenen Instanzen dürfen externe IP-Adressen haben. Alternativ können Sie einedeniedValues
-Liste mit Instanzen angeben, für die Sie externe IP-Adressen explizit ausschließen möchten. Alle Instanzen, die nicht auf der Liste stehen, dürfen eine externe IP-Adresse haben. Sie können nurallowedValues
oderdeniedValues
angeben, aber nicht beide.Das folgende Beispiel zeigt eine Anfrage zum Einrichten der Einschränkung
compute.vmExternalIpAccess
für ein Projekt, um für bestimmte Instanzen externe IP-Adressen zuzulassen:POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setOrgPolicy
Ersetzen Sie
PROJECT_ID
durch die Projekt-ID für diese Anfrage.Der Anfragetext enthält die Richtlinie für diese Einschränkung:
{ "policy": { "constraint": "constraints/compute.vmExternalIpAccess", "listPolicy": { "allowedValues": [ "projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME" ] } } }
Best Practices zum Beschränken externer IP-Adressen
Statische externe IP-Adressen verwalten
In den folgenden Abschnitten wird beschrieben, wie Sie statische externe IP-Adressen für Ihre Instanzen verwalten.
Ermitteln, ob eine interne IP-Adresse sitzungsspezifisch oder statisch ist
Statische und sitzungsspezifische interne IP-Adressen verhalten sich in den meisten Kontexten gleich und werden gleich angezeigt. Bei statischen internen IP-Adressen können Sie jedoch dieselbe IP-Adresse für dieselbe Ressource verwenden, auch wenn Sie die Ressource löschen und neu erstellen. Im Allgemeinen wird eine sitzungsspezifische IP-Adresse freigegeben, wenn Sie die Ressource beenden oder löschen.
So ermitteln Sie, ob eine Adresse statisch oder sitzungsspezifisch ist:
Zuweisung einer statischen externen IP-Adresse aufheben
Durch das Aufheben der Zuweisung wird die IP-Adresse aus der Ressource entfernt, bleibt aber reserviert. Nachdem die Zuweisung der IP-Adresse aufgehoben wurde, können Sie sie einer anderen Ressource zuweisen. Dieses Verfahren wird für Dual-Stack-Instanzen unterstützt, aber nicht für reine IPv6-Instanzen.
Sie können die Zuweisung der IPv4- oder IPv6-Adresse auch aufheben, indem Sie die Instanz löschen.
Console
gcloud
Nachdem Ihre statische externe IP-Adresse jetzt verfügbar ist, können Sie sie einer anderen Instanz zuweisen.
REST
Führen Sie die folgenden Schritte aus, um die Zuweisung einer statischen externen IPv4- oder IPv6-Adresse aufzuheben:
Java
Python
Statische externe IP-Adresse freigeben
Wenn Sie eine statische externe IPv4- oder IPv6-Adresse nicht mehr benötigen, können Sie die IP-Adresse freigeben. Löschen Sie dazu die IP-Adressressource. Durch das Löschen einer Instanz wird nicht automatisch eine statische externe IP-Adresse freigegeben. Sie müssen nicht mehr benötigte statische interne IP-Adressen manuell freigeben.
Informationen zum Freigeben einer statischen externen IP-Adresse finden Sie in der VPC-Dokumentation unter Statische externe IP-Adresse freigeben.
Nächste Schritte
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-01-07 (UTC).
-