Cloud NAT-Regeln einrichten und verwalten
Auf dieser Seite erfahren Sie, wie Sie Cloud NAT-Regeln konfigurieren. Lesen Sie vor der Einrichtung von Cloud NAT-Regeln die Übersicht über Cloud NAT-Regeln.
NAT-Regeln erstellen
NAT-Regeln werden in der Syntax der Common Expression Language geschrieben. Weitere Informationen zur Common Expression Language finden Sie unter Sprache von Regelausdrücken.
Die folgenden Beispielkonfigurationsschritte erfüllen die folgenden Bedingungen:
- VMs müssen die NAT-IP-Adresse mit dem Ressourcennamen
IP_ADDRESS1
verwenden, um Traffic an das Ziel198.51.100.10
zu senden. - VMs müssen NAT-IP-Adressen mit dem Ressourcennamen
IP_ADDRESS2
oderIP_ADDRESS3
verwenden, um Traffic an198.51.100.20/30
zu senden.
Sie können eine NAT-Regel für jede dieser Bedingungen erstellen.
Console
NAT-Regel zu einem vorhandenen NAT-Gateway hinzufügen
Fügen Sie NAT-Regel hinzu, die Traffic von IP_ADDRESS1 an 198.51.100.10
sendet.
- Wechseln Sie in der Google Cloud Console zur Seite „Cloud NAT“.
- Wählen Sie Ihr NAT-Gateway aus.
- Wählen Sie Bearbeiten aus.
- Wählen Sie unter NAT-Regeln die Option Neue Regel hinzufügen aus.
- Geben Sie im Feld Übereinstimmung den Wert
198.51.100.10
ein. - Wählen Sie im Menü IP-Adresse die IP-Adresse aus, die Sie für IP_ADDRESS1 verwendet haben.
- Geben Sie im Feld Regelnummer
100
ein. - Wählen Sie Fertig aus.
Fügen Sie als eine NAT-Regel hinzu, die Traffic von IP_ADDRESS2 oder IP_ADDRESS3 an 198.51.100.20/30
sendet.
- Wählen Sie unter NAT-Regeln die Option Neue Regel hinzufügen aus.
- Geben Sie im Feld Übereinstimmung den Wert
198.51.100.20/30
ein. - Wählen Sie im Menü IP-Adresse die IP-Adresse aus, die Sie für IP_ADDRESS2 verwendet haben.
- Wählen Sie IP-Adresse hinzufügen und dann die IP-Adresse aus, die Sie für IP_ADDRESS3 verwendet haben.
- Geben Sie im Feld Regelnummer
200
ein. - Wählen Sie Fertig aus.
- Wählen Sie Speichern aus, um beide Regeln zu speichern.
gcloud
Sie können die Schritte in den folgenden Abschnitten ausführen, um eine Regeldatei zu erstellen, ein NAT-Gateway zu erstellen, das die Regeln in der Regeldatei verwendet, oder einem vorhandenen NAT-Gateway Regeln hinzuzufügen.
NAT-Regel zu einem vorhandenen NAT-Gateway hinzufügen
Sie können eine neue NAT-Regel mit dem NAT-Regelbefehl hinzufügen.
Ersetzen Sie NAT_RULE_NUMBER
durch die gewünschte NAT-Regelnummer und die anderen Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
Fügen Sie zuerst eine NAT-Regel hinzu, die Traffic von IP_ADDRESS1 an 198.51.100.10
sendet.
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match='destination.ip == "198.51.100.10"' \ --source-nat-active-ips=[IP_ADDRESS1] \ [--region=REGION] [GLOBAL-FLAG ...]
Fügen Sie als Nächstes eine NAT-Regel hinzu, die Traffic von IP_ADDRESS2 oder IP_ADDRESS3 an 198.51.100.20/30
sendet.
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match='inIpRange(destination.ip, "198.51.100.20/30")' \ --source-nat-active-ips=[IP_ADDRESS2],[IP_ADDRESS3] \ [--region=REGION] [GLOBAL-FLAG ...]
Regeldatei erstellen
Das folgende Codebeispiel ist eine Beispielregeldatei. Sie können diese Regeldatei an Ihren Anwendungsfall anpassen oder diesen Schritt überspringen, wenn Sie bereits eine Regeldatei haben.
rules: - ruleNumber: 100 match: destination.ip == '198.51.100.10' action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS1 - ruleNumber: 200 match: inIpRange(destination.ip, '198.51.100.20/30') action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS2 - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS3
NAT-Gateway mit einer NAT-Regeldatei erstellen
Der folgende Befehl erstellt ein NAT-Gateway und konfiguriert es mit Regeln aus einer NAT-Regeldatei. Wenn Sie bereits ein NAT-Gateway konfiguriert haben, finden Sie weitere Informationen unter NAT-Regel einem vorhandenen NAT-Gateway hinzufügen. Ersetzen Sie die Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats create NAT_NAME \ --router=ROUTER_NAME \ --nat-external-ip-pool=[IP_ADDRESS4],[IP_ADDRESS5] \ --nat-all-subnet-ip-ranges \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
NAT-Regeln aktualisieren
Führen Sie die Schritte in den folgenden Abschnitten aus, um die NAT-Regeln zu aktualisieren. Sie können Regeldateien nur mit dem gcloud
-Befehlszeilentool verwenden.
Console
- Wechseln Sie in der Google Cloud Console zur Seite „Cloud NAT“.
- Wählen Sie Ihr NAT-Gateway aus.
- Wählen Sie Bearbeiten aus.
- Klicken Sie unter Benutzerdefinierte Regeln auf die Regel, die Sie aktualisieren möchten.
- In den erweiterten Feldern können Sie alle Informationen ändern, die Sie ändern möchten.
- Wenn Sie alle Änderungen vorgenommen haben, wählen Sie Fertig aus.
- Klicken Sie auf Speichern.
gcloud
Aktualisierung mit einer NAT-Regeldatei
Verwenden Sie den folgenden Befehl, um Ihre NAT-Regeldatei zum Aktualisieren eines NAT-Gateways zu verwenden. Ersetzen Sie die Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Das folgende Codebeispiel ist eine Beispielregeldatei. Beachten Sie die Aktion sourceNatDrainIps
, die neue Verbindungen zum Ziel mit IP_ADDRESS1
verhindert, aber bestehende Verbindungen beibehält.
rules: - ruleNumber: 100 match: destination.ip == '198.51.100.10' action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS2 sourceNatDrainIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS1
Mit einem NAT-Regelbefehl aktualisieren
Verwenden Sie den folgenden Befehl, um eine einzelne NAT-Regel zu aktualisieren. Ersetzen Sie NAT_RULE_NUMBER
durch die gewünschte NAT-Regelnummer und die anderen Variablen durch Informationen, die Ihrer Konfiguration entsprechen. Beachten Sie die Option source-nat-drain-ips
, die neue Verbindungen zum Ziel mithilfe von IP_ADDRESS3
und IP_ADDRESS4
verhindert, aber vorhandene Verbindungen beibehält.
gcloud compute routers nats rules update NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match=Match conditions (expressed in CEL) \ --source-nat-active-ips=[IP_ADDRESS1],[IP_ADDRESS2] \ --source-nat-drain-ips=[IP_ADDRESS3],[IP_ADDRESS4] \ [--region=REGION] [GLOBAL-FLAG ...]
NAT-Regeln löschen
Console
- Wechseln Sie in der Google Cloud Console zur Seite „Cloud NAT“.
- Wählen Sie Ihr NAT-Gateway aus.
- Wählen Sie Bearbeiten aus.
- Halten Sie unter Benutzerdefinierte Regeln den Mauszeiger auf die Regel, die Sie löschen möchten. Klicken Sie auf .
- Klicken Sie auf Speichern.
gcloud
Sie können eine NAT-Regel aus einem Gateway entfernen. Entfernen Sie sie dazu entweder direkt aus dem Gateway oder entfernen Sie sie aus der Regeldatei und aktualisieren Sie das Gateway.
Mit einer NAT-Regeldatei löschen
Sie können eine NAT-Regel direkt aus Ihrer Regeldatei entfernen und dann Ihr NAT-Gateway aktualisieren. Der Befehl zum Aktualisieren des NAT-Gateways wird hier der Einfachheit halber wiederholt. Ersetzen Sie die Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Mit einem NAT-Regelbefehl löschen
Alternativ können Sie einen NAT-Regel delete
-Befehl verwenden, um eine NAT-Regel aus Ihrem Gateway zu entfernen. Ersetzen Sie NAT_RULE_NUMBER
durch die gewünschte NAT-Regelnummer und die anderen Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats rules delete NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
NAT-Regel beschreiben
Console
Informationen zu Ihren NAT-Regeln finden Sie auf der Cloud NAT-Seite.
- Wechseln Sie in der Google Cloud Console zur Seite „Cloud NAT“.
- Wählen Sie Ihr NAT-Gateway aus.
- Sehen Sie sich die NAT-Regeln an.
Weitere Informationen zu einer einzelnen NAT-Regel finden Sie so:
- Wählen Sie Bearbeiten aus.
- Wählen Sie unter der Überschrift Benutzerdefinierte Regeln eine NAT-Regel aus.
- Sehen Sie sich zusätzliche Informationen an.
- Wählen Sie Abbrechen aus, um zu gewährleisten, dass keine Änderungen gespeichert werden.
gcloud
Verwenden Sie den folgenden Befehl, um eine NAT-Regel zu beschreiben. Ersetzen Sie NAT_RULE_NUMBER
durch Ihre NAT-Regelnummer und die anderen Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats rules describe NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Alle NAT-Regeln in einem NAT-Gateway auflisten
Console
Sie können Ihre NAT-Regeln auf der Cloud NAT-Seite ansehen.
- Wechseln Sie in der Google Cloud Console zur Seite „Cloud NAT“.
- Wählen Sie Ihr NAT-Gateway aus.
- Sehen Sie sich die NAT-Regeln an.
gcloud
Verwenden Sie den folgenden Befehl, um alle NAT-Regeln in einem NAT-Gateway aufzulisten. Hier werden auch alle NAT-IP-Adressen angezeigt, die in den NAT-Regeln vorhanden sind, einschließlich der Standardregel. Ersetzen Sie die Variablen durch Informationen, die Ihrer Konfiguration entsprechen.
gcloud compute routers nats rules list \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]