Statische interne IP-Adresse reservieren

Wenn eine VM-Instanz eine feste interne IP-Adresse erfordert, die sich nicht ändert, können Sie mit einer der folgenden Optionen eine statische interne IP-Adresse für diese VM abrufen:

Informationen zum Verwalten sekundärer interner IP-Adressen finden Sie unter Alias-IP-Bereiche.

In Compute Engine können VM-Instanzen mehrere Netzwerkschnittstellen haben. Jede Schnittstelle kann eine externe IP-Adresse, eine primäre interne IP-Adresse sowie eine oder mehrere sekundäre interne IP-Adressen haben. Weiterleitungsregeln können externe IP-Adressen für das externe Load-Balancing oder interne Adressen für das interne Load-Balancing nutzen. Weitere Informationen zu IP-Adressen finden Sie in der Dokumentation zu IP-Adressen.

Statische interne IP-Adressen bieten die Möglichkeit, interne IP-Adressen aus dem im Subnetz konfigurierten privaten IP-Bereich zu reservieren und anschließend den gewünschten Ressourcen zuzuordnen. Wenn Sie eine interne IP-Adresse reservieren, wird diese Adresse aus dem dynamischen Zuweisungspool herausgenommen und verhindert so, dass sie für automatische Zuweisungen verwendet wird. Das Reservieren von statischen internen IP-Adressen erfordert bestimmte IAM-Berechtigungen, sodass nur autorisierte Nutzer eine statische interne IP-Adresse reservieren können.

Mit der Möglichkeit, statische interne IP-Adressen zu reservieren, können Sie immer dieselbe IP-Adresse für dieselbe Ressource verwenden, auch wenn Sie die Ressource löschen und neu erstellen müssen.

Wenn Sie eine statische externe IP-Adresse statt einer internen IP-Adresse reservieren möchten, lesen Sie die Informationen unter Statische externe IP-Adresse reservieren.

Vorbereitung

Berechtigungen

Wenn Sie statische interne IP-Adressen reservieren und verwalten möchten, muss Ihnen die Rolle compute.networkAdmin gewährt werden. Weitere Informationen über Rollen finden Sie unter Compute Engine IAM-Rollen.

Beschränkungen

  • Sie können die interne IP-Adresse einer vorhandenen Ressource nicht ändern. Sie können beispielsweise einer laufenden VM-Instanz keine neue statische interne IP-Adresse zuweisen. Sie können jedoch die sitzungsspezifische interne IP-Adresse einer Ressource in eine statische interne IP-Adresse umwandeln, damit die Adresse auch nach dem Löschen der Ressource reserviert bleibt.

  • Die Anzahl der statischen internen IP-Adressen, die Sie reservieren können, darf das Kontingent Ihres Projekts nicht überschreiten. Weitere Informationen erhalten Sie im Abschnitt zu projektbasierten Kontingenten in der VPC-Dokumentation.

  • Eine statische interne IP-Adresse kann immer nur von einer einzigen Ressource verwendet werden.

  • Ist die IP-Adresse einer Ressource zugewiesen, kann nur noch durch Abgleich mit einer Liste der für dieses Projekt reservierten statischen internen IP-Adressen festgestellt werden, ob es sich bei dieser IP-Adresse um eine sitzungsspezifische oder eine statische IP-Adresse handelt. Mit dem Unterbefehl addresses list können Sie eine Liste der für Ihr Projekt verfügbaren statischen internen IP-Adressen aufrufen.

  • Das Reservieren einer statischen internen IP-Adresse wird nur für VPC-Netzwerke unterstützt. Es gibt keine Unterstützung für Netzwerke im Legacy-Modus.

  • Durch das Löschen einer Ressource wird nicht automatisch eine statische interne IP-Adresse freigegeben. Sie müssen nicht mehr benötigte statische interne IP-Adressen manuell freigeben.

Statische interne IP-Adresse reservieren

Sie können eine statische interne IP-Adresse reservieren, bevor Sie die zugehörige Ressource erstellen, oder die Ressource mit einer sitzungsspezifischen internen IP-Adresse erstellen und dann diese sitzungsspezifische IP-Adresse in eine statische interne IP-Adresse umwandeln.

Richten Sie zuerst ein VPC-Netzwerk für Ihr Projekt ein, um eine statische interne IP-Adresse verwenden zu können. Weitere Informationen zum Erstellen eines VPC-Netzwerks erhalten Sie unter VPC-Netzwerke verwenden.

Reservieren Sie eine bestimmte Adresse und ordnen Sie sie dann einer bestimmten Ressource zu

In diesem Szenario reservieren Sie separat eine statische interne IP-Adresse und ordnen sie dann einer Ressource zu. Zusammenfassung:

  1. Erstellen Sie ein Subnetz Ihres VPC-Netzwerks.

  2. Reservieren Sie eine interne IP-Adresse aus dem primären IP-Bereich des Subnetzes. Dieser Schritt erstellt eine interne IP-Adressressource, die diese spezifische interne IP-Adresse enthält. Außerdem verhindert er, dass Google Cloud diese Adresse automatisch als sitzungsspezifische Adresse zuweist.

  3. Verwenden Sie die reservierte interne IP-Adresse, indem Sie sie einer VM-Instanz oder einem internen Load-Balancer zuweisen, wenn Sie die VM oder die Load-Balancer-Ressource erstellen.

Sitzungsspezifische interne IP-Adresse für eine Ressource festlegen und anschließend umwandeln

In diesem Szenario wandeln Sie eine sitzungsspezifische interne IP-Adresse, die noch an eine Ressource angehängt ist, in eine statische interne IP-Adresse um.

  1. Erstellen Sie ein Subnetz.

  2. Erstellen Sie eine VM-Instanz oder einen internen Load-Balancer mit einer automatisch zugeordneten sitzungsspezifischen IP-Adresse oder einer speziell ausgewählten IP-Adresse.

  3. Wandeln Sie die interne IP-Adresse in eine statische interne IP-Adresse um.

Beide Methoden werden im folgenden Diagramm dargestellt.

Reservierung von internen IP-Adressen

Neue statische interne IP-Adresse reservieren

Bevor Sie eine neue statische interne IP-Adresse reservieren können, müssen Sie zuerst ein VPC-Netzwerk mit einem Subnetz erstellen.

Zum Reservieren einer neuen statischen internen IP-Adresse, die entweder automatisch zugewiesen wird oder eine nicht verwendete Adresse aus einem vorhandenen Subnetz ist, können Sie die Google Cloud Console, das gcloud-Tool oder die API verwenden.

Console

  1. Rufen Sie in der Cloud Console die Seite VPC-Netzwerke auf.

    Zur VPC-Netzwerkseite

  2. Identifizieren Sie das VPC-Netzwerk, das Sie mit Ihrer Instanz verknüpfen möchten.
  3. Rufen Sie die Seite VM-Instanzen auf.

    Zur Seite "VM-Instanzen"

  4. Wählen Sie Ihr Projekt aus.
  5. Klicken Sie auf Instanz erstellen und geben Sie einen Namen für Ihre Instanz an.
  6. Wählen Sie die Region aus, in der sich Ihr VPC-Netzwerk befindet.
  7. Wählen Sie eine Zone innerhalb dieser Region aus.
  8. Füllen Sie die anderen Felder für die Instanz aus.
  9. Erweitern Sie das Menü Verwaltung, Sicherheit, Laufwerke, Netzwerke, einzelne Mandanten.
  10. Klicken Sie auf Netzwerke.
  11. Klicken Sie zum Bearbeiten auf Netzwerkschnittstellen.
  12. Wählen Sie unter Netzwerk das von Ihnen erstellte Netzwerk aus.
  13. Wählen Sie das Subnetz aus.
  14. Wählen Sie unter Primäre interne IP die Option Statische IP-Adresse reservieren aus.
  15. Vervollständigen Sie die restlichen Netzwerkoptionen.
  16. Klicken Sie auf Fertig.
  17. Füllen Sie Ihre Instanzanforderungen aus.
  18. Klicken Sie auf Erstellen.

gcloud

Führen Sie mit dem gcloud-Tool den Befehl compute addresses create aus:

gcloud compute addresses create ADDRESS_NAME [ADDRESS_NAME..] \
    --region REGION --subnet SUBNETWORK \
    --addresses IP_ADDRESS

Dabei gilt:

  • ADDRESS_NAME: Die gewünschten Namen einer oder mehrerer Adressen, die erstellt werden sollen.
  • REGION: Die Region für diese Anfrage.
  • SUBNETWORK: Das Subnetz für diese interne IP-Adresse.
  • IP_ADDRESS: Die zu reservierende IP-Adresse, die sich innerhalb des primären IP-Bereichs des Subnetzes befinden muss. Wenn hier keine Angabe gemacht wird, wird automatisch eine Adresse aus dem Subnetz zugewiesen.

So reservieren Sie beispielsweise eine automatisch zugeordnete interne IP-Adresse aus einem Subnetz:

gcloud compute addresses create example-address-1 \
    --region us-central1 --subnet subnet-1

So reservieren Sie eine bestimmte interne IP-Adresse aus einem Subnetz:

gcloud compute addresses create example-address-1 \
    --region us-central1 --subnet subnet-1 --addresses 10.128.0.12

Sie können mehrere Adressen erstellen, indem Sie mehr als einen Adressnamen eingeben. Allerdings werden dann alle Adressen im selben Subnetz reserviert. Beispiel:

gcloud compute addresses create example-address-1 example-address-2 \
    --region us-central1 --subnet subnet-1 \
    --addresses 10.128.0.12,10.128.0.13

API

Rufen Sie die Methode addresses.insert auf:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses

Der Anfragetext muss den addressType (der INTERNAL lauten sollte), den name der Adresse und den subnetwork enthalten, zu dem die IP-Adresse gehört. Sie können sich vom System automatisch eine IP-Adresse zuweisen lassen oder die address für eine bestimmte IP-Adresse angeben. Die IP-Adresse muss zum primären IP-Adressbereich des Subnetzes gehören.

{
  "addressType": "INTERNAL",
  "name": "ADDRESS_NAME",
  "subnetwork": "regions/REGION/subnetworks/SUBNETWORK",
  "address": "IP_ADDRESS"
}

Beispiel:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses

{
  "name": "example-address-1",
  "addressType": "INTERNAL",
  "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet",
  "address": "10.128.0.12"
}

Eine laufende sitzungsspezifische interne IP-Adresse in eine statische IP-Adresse umwandeln

Wenn Sie über sitzungsspezifische IP-Adressen verfügen, die aktuell verwendet werden, können Sie diese Adressen in statische interne IP-Adressen umwandeln, damit die Adressen so lange in Ihrem Projekt bleiben, bis Sie sie aktiv entfernen.

Bevor Sie eine bestehende IP-Adresse reservieren, benötigen Sie den Wert der IP-Adresse, die Sie umwandeln möchten. Stellen Sie eine describe-Anfrage an die Ressource, um die IP-Adresse abzurufen. Wenn eine IP-Adresse beispielsweise aktuell von einer VM-Instanz verwendet wird, verwenden Sie:

gcloud compute instances describe INSTANCE_NAME --zone ZONE | grep "networkIP"

Das gcloud-Tool gibt den Wert networkIP zurück. Dies ist die interne IP, die von der Ressource verwendet wird. Beispiel:

networkIP: 10.240.0.2

Als Nächstes wandeln Sie die Adresse um.

Konsole

So wandeln Sie in der Konsole eine sitzungsspezifische interne IP-Adresse in eine statische IP-Adresse um:

  1. Rufen Sie die Seite VM-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Wählen Sie Ihr Projekt aus.
  3. Wählen Sie die zu ändernde Instanz aus.
  4. Klicken Sie oben auf der Seite auf das Tool Bearbeiten.
  5. Klicken Sie im Tool "Bearbeiten" auf Netzwerkschnittstellen.
  6. Wählen Sie unter Interner IP-Typ die Option Statisch aus.
  7. Füllen Sie die Informationen für eine statische IP-Adresse aus.
  8. Klicken Sie auf Fertig, um die Änderungen zu speichern.
  9. Klicken Sie zum Aktualisieren Ihrer Instanz auf Speichern.

gcloud

Verwenden Sie zum Umwandeln einer oder mehrerer bestehender IP-Adressen den Befehl compute addresses create und geben Sie das Flag --addresses mit den expliziten internen IP-Adressen an, die umgewandelt werden sollen:

gcloud compute addresses create ADDRESS_NAME_1 [ADDRESS_NAME_2..] \
    --addresses IP_ADDRESS_1,[IP_ADDRESS_2,..] \
    --region REGION \
    --subnet SUBNETWORK

Dabei gilt:

  • ADDRESS_NAME: Die gewünschten Namen der Adresse. Geben Sie die Namen in derselben Reihenfolge wie die IP-Adressen an. ADDRESS_NAME_1 entspricht in diesem Fall IP_ADDRESS_1 und ADDRESS_NAME_2 entspricht IP_ADDRESS_2.
  • IP_ADDRESS_1,[IP_ADDRESS_2,...]: Die umzuwandelnden IP-Adressen. Beispiel: 10.128.1.9
  • REGION: Die Region, in der diese Adresse reserviert werden soll.
  • SUBNETWORK: Das Subnetzwerk für diese Anfrage.

Beispiel:

gcloud compute addresses create example-address-1 example-address-2 \
    --addresses 10.128.4.90,10.128.0.232 \
    --region us-central1 \
    --subnet subnet-1

API

Rufen Sie die Methode addresses.insert auf:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses

Der Anfragetext muss den addressType (der INTERNAL lauten sollte), den name der Adresse, die umzuwandelnde address und das subnetwork enthalten, zu dem die IP-Adresse gehört:

{
  "addressType": "INTERNAL",
  "address": "IP_ADDRESS",
  "name": "ADDRESS_NAME",
  "subnetwork": "regions/REGION/subnetworks/SUBNETWORK"
}

Beispiel:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-central1/addresses

{
  "name": "example-address-1",
  "addressType": "INTERNAL",
  "address": "10.128.0.2",
  "subnetwork": "regions/us-central1/subnetworks/my-custom-subnet"
}

VM-Instanz mit einer spezifischen internen IP-Adresse erstellen

Sie können beim Erstellen der Instanz dieser eine bestimmte interne IP-Adresse zuweisen. Diese IP-Adresse muss eine gültige, nicht verwendete IP-Adresse im Subnetz der Instanz sein. Die IP-Adresse bleibt mit der Instanz verbunden, bis Sie die Instanz löschen. Dann wird die IP-Adresse in den Pool zurückgeführt. Wenn Sie die Instanz beenden und neu starten, behält sie dieselbe interne IP-Adresse bei.

Wenn Sie keine IP-Adresse angeben, weist Compute Engine automatisch eine aus dem Subnetz oder Netzwerk zu. Sie können eine interne IP-Adresse über die Google Cloud Console, das gcloud-Tool oder die Compute Engine API angeben.

Console

  1. Rufen Sie in der Cloud Console die Seite VM-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf Instanz erstellen.
  3. Geben Sie auf der Seite Neue Instanz erstellen die Attribute für Ihre Instanz ein.
  4. Maximieren Sie den Abschnitt Verwaltung, Sicherheit, Laufwerke, Netzwerke, einzelne Mandanten.
  5. Klicken Sie auf Netzwerk.
  6. Klicken Sie unter Netzwerkschnittstellen auf die Standardnetzwerkschnittstelle, um sie zu bearbeiten.
  7. Optional: Wählen Sie unter Netzwerk und Subnetzwerk das gewünschte Netzwerk und Subnetzwerk aus.
  8. Wählen Sie unter Primäre interne IP aus der Drop-down-Liste eine Option für die interne IP-Adresse aus.
  9. Klicken Sie auf Fertig, um die Änderung der Netzwerkschnittstelle abzuschließen.
  10. Klicken Sie auf Erstellen, um die Instanz anzulegen.

gcloud

Geben Sie beim Erstellen der Instanz eine gültige IP-Adresse an:

gcloud compute instances create INSTANCE_NAME
     --private-network-ip IP_ADDRESS

Dabei gilt:

  • INSTANCE_NAME: ist der Name der Instanz, die Sie erstellen möchten.
  • IP_ADDRESS: ist die IP-Adresse, die Sie zuweisen möchten.

Wenn Sie ein benutzerdefiniertes Netzwerk im Subnetzmodus verwenden, müssen Sie außerdem das Subnetz mithilfe des Parameters --subnet SUBNET angeben.

API

Mithilfe der Compute Engine API erstellen Sie Instanzen mit einer statischen internen IP-Adresse. Senden Sie wie gewohnt eine Anfrage zum Erstellen einer neuen Instanz, aber geben Sie explizit das Attribut networkInterfaces[].networkIP mit der zu verwendenden internen IP-Adresse an. Beispiel:

{
  "name": "INSTANCE_NAME",
  "machineType": "zones/us-central1-f/machineTypes/e2-micro",
  "networkInterfaces": [{
    "accessConfigs": [{
      "type": "ONE_TO_ONE_NAT",
      "name": "External NAT",
     }],
    "network": "global/networks/default",
    "networkIP": "IP_ADDRESS"
  }],
  "disks": [{
     "autoDelete": "true",
     "boot": "true",
     "type": "PERSISTENT",
     "initializeParams": {
        "sourceImage": "projects/debian-cloud/global/images/v20150818"
     }
   }]
 }

Dabei gilt:

  • INSTANCE_NAME: ist der Name der Instanz.
  • IP_ADDRESS: ist die IP-Adresse, die der Instanz zugewiesen werden soll.

Wenn Sie eine Instanz mit festgelegter IP-Adresse löschen, wird die Adresse wieder in den Pool der verfügbaren IP-Adressen zurückgeführt. Wenn Sie möchten, dass eine interne IP-Adresse über die Lebensdauer der Instanz hinaus erhalten bleibt, können Sie eine statische interne IP-Adresse reservieren.

Einen internen Load-Balancer mit einer statischen internen IP-Adresse erstellen

Zum Erstellen eines internen Load-Balancers, der statische interne IP-Adressen verwendet, folgen Sie den Anleitungen unter:

Statische interne IP-Adresse für eine sekundäre Netzwerkschnittstelle verwenden

Wenn Sie eine VM-Instanz mit mehreren Netzwerkschnittstellen erstellen, können Sie eine reservierte statische interne IP-Adresse für primäre und sekundäre Netzwerkschnittstellen verwenden.

Um eine statische interne IP-Adresse einer sekundären Netzwerkschnittstelle zuzuordnen, gehen Sie so vor:

  1. Zuerst reservieren Sie eine statische interne IP-Adresse. Im folgenden Beispiel wird eine Adresse mit dem Namen my-second-ip-address in der Region us-central1 reserviert. Da der Befehl das Flag --addresses weglässt, reserviert Compute Engine eine zufällige IP-Adresse:

    gcloud compute addresses create my-second-ip-address \
        --region us-central1 --subnet subnet-b
  2. Verwenden Sie die Adresse als IP-Adresse für die sekundäre Schnittstelle, wenn Sie eine VM-Instanz erstellen. Beispiel:

    gcloud compute instances create my-instance \
        --image-family IMAGE_FAMILY \
        --image-project IMAGE_PROJECT \
        --network-interface subnet=subnet-a,no-address \
        --network-interface \
          subnet=subnet-b,private-network-ip=my-second-ip-address,no-address

Statische interne IP-Adresse mit einer freigegebenen VPC

Sie können eine reservierte statische interne IP-Adresse in einem freigegebenen Subnetz eines freigegebenen VPC-Netzwerks erstellen. Das IP-Adressobjekt muss im selben Dienstprojekt erstellt werden wie die Ressource, von der es verwendet wird, auch wenn der Wert der IP-Adresse aus dem Bereich der verfügbaren IP-Adressen in einem bestimmten freigegebenen Subnetz des freigegebenen VPC-Netzwerks stammt. Weitere Informationen zu diesem Anwendungsfall finden Sie auf den folgenden Seiten:

Statische interne IP-Adresse löschen

Sie können eine statische interne IP-Adresse löschen, wenn Sie diese nicht mehr benötigen. Sie können eine Adresse löschen, egal ob sie derzeit von einer anderen Ressource verwendet wird oder nicht. Wenn die Adresse von einer Ressource verwendet wird, bleibt sie an die Ressource gebunden, bis die Ressource gelöscht wird. In diesem Fall wird die Adresse an den Pool der verfügbaren Adressen für andere Projekte zurückgegeben.

Konsole

  1. Rufen Sie die Seite VM-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Wählen Sie Ihr Projekt aus.
  3. Wählen Sie aus der Projektliste die VM-Instanz aus.
  4. Wählen Sie oben auf der Seite das Tool Bearbeiten aus.
  5. Klicken Sie im Tool "Bearbeiten" auf Netzwerkschnittstellen.
  6. Ändern Sie den internen IP-Typ von Statisch zu Sitzungsspezifisch.
  7. Wählen Sie zum Freigeben Ihrer statischen IP-Adresse Freigeben aus.
  8. Klicken Sie auf Fertig, um die Änderungen zu speichern.

    Ihre Instanz verwendet weiterhin die statische IP-Adresse, bis die Instanz gelöscht oder neu gestartet wird. Danach wird die IP-Adresse an den Standardpool der verfügbaren internen IP-Adressen des Subnetzes zurückgegeben.

gcloud

Führen Sie mit dem gcloud-Tool den Befehl compute addresses delete aus:

gcloud compute addresses delete ADDRESS_NAME \
    --region REGION

Dabei gilt:

  • ADDRESS_NAME: Der Name der zu löschenden Adresse.
  • REGION: Die Region, zu der die Adresse gehört.

Beispiel:

gcloud compute addresses delete example-address-to-delete \
    --region us-west1

API

Rufen Sie die Methode addresses.delete auf:

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/ADDRESS_NAME

So löschen Sie beispielsweise eine Adresse in der Region us-west1:

DELETE https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-west1/addresses/example-address-to-delete

Weitere Informationen