Paketspiegelung verwenden

Mit der Paketspiegelung können Sie Traffic zu und von bestimmten VM-Instanzen (virtuellen Maschinen) spiegeln. Über den erfassten Traffic können Sie Sicherheitsbedrohungen erkennen und die Anwendungsleistung überwachen. Weitere Informationen zur Paketspiegelung finden Sie unter Paketspiegelung.

Gespiegelter Traffic wird an VMs gesendet, auf denen Sie die entsprechende Software installiert haben. Eine Liste der Anbieter, die Software bereitstellen, finden Sie unter Paketspiegelungspartneranbieter.

In den folgenden Abschnitten wird beschrieben, wie Sie Paketspiegelungsrichtlinien erstellen und verwalten.

Beschränkungen

  • Bei der Paketspiegelung können keine Pakete für den Traffic der veröffentlichten Dienste von Private Service Connect gespiegelt werden.

  • Aus Sicherheitsgründen werden mit der Paketspiegelung keine Pakete gespiegelt, die an den Link-Local-IP-Adressbereich 169.254.0.0/16 gesendet werden. Dieser Bereich umfasst Metadatenanfragen von einer VM an ihren Metadatenserver.

  • Die Verwendung eines LoadBalancer-Service (Google Kubernetes Engine) als Paketspiegelungs-Collector wird nicht unterstützt.

  • Wenn möglicherweise eine Paketspiegelungsrichtlinie für die Collector-Instanzen gilt, werden diese von der Paketspiegelung ignoriert und deren Traffic wird nicht gespiegelt.

Hinweis

Bevor Sie eine Paketspiegelungsrichtlinie erstellen, müssen Sie über die entsprechenden Berechtigungen verfügen. Sie müssen auch einen internen Passthrough-Network Load Balancer erstellen, der als Collector-Ziel fungiert. Für diesen internen Passthrough-Network Load Balancer ist eine Instanzgruppe erforderlich, damit der Backend-Dienst die VMs als Collector-Ziele verwenden kann.

Berechtigungen

Zum Erstellen und Verwalten von Paketspiegelungsrichtlinien stellt Google Cloud zwei Rollen bereit, die sich auf die Paketspiegelung beziehen:

  • compute.packetMirroringUser gewährt Nutzern die Berechtigung, Paketspiegelungsrichtlinien zu erstellen, zu aktualisieren und zu löschen. Um die Paketspiegelung verwenden zu können, müssen Nutzer diese Rolle in Projekten haben, in denen sie Paketspiegelungsrichtlinien erstellen.

  • compute.packetMirroringAdmin gewährt Nutzern die Berechtigung, bestimmte Ressourcen zu spiegeln. Auch wenn Nutzer berechtigt sind, eine Paketspiegelungsrichtlinie zu erstellen, benötigen sie dennoch die Berechtigung zum Spiegeln zugehöriger Quellen. Verwenden Sie diese Rolle in Projekten, in denen der Inhaber einer Richtlinie möglicherweise keine anderen Berechtigungen hat, z. B. in freigegebenen VPC-Szenarien.

Weitere Informationen zum Verwenden von IAM-Rollen finden Sie in der IAM-Dokumentation unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Collector-Instanzen erstellen

Für die Paketspiegelung ist eine Gruppe von Collector-Instanzen erforderlich. Weitere Informationen zu Instanzgruppen finden Sie in der folgenden Dokumentation: Neue Instanzvorlage erstellen und MIG in einer einzelnen Zone erstellen.

Internen Load-Balancer für die Paketspiegelung erstellen

Um die Paketspiegelung zu aktivieren, benötigen Sie einen internen Passthrough-Network Load Balancer, der als Paketspiegelungs-Collector dient. Der interne Passthrough-Network Load Balancer muss die folgenden Anforderungen erfüllen:

  • Für die Weiterleitungsregel des internen Passthrough-Network Load Balancers muss die Paketspiegelung aktiviert sein, wenn die Regel erstellt wird. Dieser Status kann nach dem Erstellen der Regel nicht mehr geändert werden. Mit dieser Weiterleitungsregel können Sie sowohl IPv4- als auch IPv6-Traffic erfassen.
  • Der interne Passthrough-Network Load Balancer befindet sich in derselben Region wie die gespiegelten Instanzen.
  • Der Backend-Dienst des internen Passthrough-Network Load Balancers muss eine Sitzungsaffinität von NONE (5-Tupel-Hash) verwenden.
  • Für den Backend-Dienst des internen Passthrough-Network Load Balancers muss die Backend-Teileinstellung deaktiviert sein.

Wenn Ihre Collector-Instanzen nicht so eingerichtet sind, dass sie auf die Systemdiagnose reagieren, die Sie mit Ihrem Backend-Dienst konfiguriert haben, kann die Systemdiagnose fehlschlagen. In diesem Fall können Pakete weiterhin gespiegelt werden.

Weitere Informationen zum Erstellen eines internen Passthrough-Network Load Balancers für die Paketspiegelung finden Sie unter Load-Balancer für die Paketspiegelung erstellen.

Firewallregeln konfigurieren

So bereiten Sie das VPC-Netzwerk für die Paketspiegelung vor:

  • Achten Sie darauf, dass Collector-Instanzen in der Instanzgruppe des Load Balancers Traffic von gespiegelten Instanzen oder aus den IPv4- und IPv6-Adressbereichen der gespiegelten Instanzen empfangen können. Wenn Sie beispielsweise möchten, dass Collector-Instanzen IPv4-Traffic von beliebigen VMs empfangen, erstellen Sie eine Firewallregel mit dem Quell-IPv4-Adressbereich 0.0.0.0/0. Damit Collector-Instanzen IPv6-Traffic von beliebigen VMs empfangen können, erstellen Sie eine Firewallregel mit dem Quellbereich ::/0 für IPv6-Adressen. Wenn Sie verhindern möchten, dass Internet-Traffic die Collector-Instanzen erreicht, weisen Sie ihnen nur interne IPv4- und IPv6-Adressen zu.

  • Achten Sie darauf, dass keine anderen Firewallregeln die implizierte Regel für ausgehenden Traffic überschreiben, sodass gespiegelter Traffic von Quellinstanzen zu den Zielinstanzen fließen kann, die Teil der internen Passthrough-Network Load Balancer sind.

  • Achten Sie darauf, dass Collector-Instanzen Traffic von den Systemdiagnosen von Google Cloud empfangen können. Erstellen Sie beispielsweise für IPv4-Traffic eine Firewallregel, die Traffic von den IPv4-Adressbereichen 130.211.0.0/22 und 35.191.0.0/16 zu den Collector-Instanzen zulässt. Erstellen Sie für IPv6-Traffic eine Firewallregel, die Traffic von 2600:2d00:1:b029::/64 aus dem IPv6-Adressbereich an die Collector-Instanzen zulässt.

  • Wenn Sie das Paketspiegeln testen möchten, indem Sie ausgehenden Traffic manuell von einer oder mehreren gespiegelten Instanzen senden, erstellen Sie eine Firewallregel, die SSH-Traffic zu diesen Instanzen zulässt. Wenn Sie beispielsweise SSH-Verbindungen zu Ihren gespiegelten Instanzen von allen IPv4- und IPv6-Adressen zulassen möchten, erlauben Sie den eingehenden TCP-Traffic von beliebigen IPv4- und IPv6-Quelladressen an Port 22. Wenn Sie nur SSH-Verbindungen zulassen möchten, die aus einem bestimmten IPv4- oder IPv6-Adressbereich initiiert werden, geben Sie diesen IPv4- oder IPv6-Adressbereich als Quellbereich für die Firewallregel an. Weitere Informationen zum Testen des internen Passthrough-Network Load Balancers finden Sie unter Load-Balancing testen.

Wenn Sie keine Regeln haben, die diesen Traffic zulassen, finden Sie weitere Informationen zum Erstellen von Regeln unter VPC-Firewallregeln verwenden. Weitere Informationen zum Erstellen von Firewallregeln für einen internen Passthrough-Network Load Balancer finden Sie in der Dokumentation zu Cloud Load Balancing unter Firewallregeln konfigurieren.

Paketspiegelungsrichtlinie erstellen

Erstellen Sie eine Paketspiegelungsrichtlinie, um das Spiegeln des Traffics zu und von bestimmten Instanzen zu starten. Google Cloud spiegelt alle Instanzen, die mit mindestens einer Ihrer angegebenen Quellen übereinstimmen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

  2. Klicken Sie auf Richtlinie erstellen.

  3. Geben Sie die folgenden Informationen über die Richtlinie ein und klicken Sie dann auf Weiter.

    1. Geben Sie einen Namen für die Richtlinie ein.
    2. Wählen Sie die Region aus, welche die gespiegelten Quellen und das Collector-Ziel enthält. Die Paketspiegelungsrichtlinie muss sich in derselben Region wie die Quelle und das Ziel befinden.
    3. Ignorieren Sie das Feld Priorität. Dieses kann momentan nicht angepasst werden.
    4. Wählen Sie Aktiviert aus, um die Richtlinie beim Erstellen zu aktivieren.
  4. Wählen Sie die VPC-Netzwerke aus, in denen sich die gespiegelte Quelle und das Collector-Ziel befinden, und klicken Sie dann auf Weiter.

    Die Quelle und das Ziel können sich im selben oder in verschiedenen VPC-Netzwerken befinden.

    • Wenn sie sich im selben VPC-Netzwerk befinden, wählen Sie die Option Gespiegelte Quelle und Collector-Ziel befinden sich im selben VPC-Netzwerk und dann das Netzwerk aus.
    • Wenn sie sich in verschiedenen Netzwerken befinden, wählen Sie die Option Gespiegelte Quelle und Collector-Ziel befinden sich in separaten Peering-VPC-Netzwerken und anschließend das gespiegelte Quellnetzwerk und das Collector-Zielnetzwerk aus.
  5. Wählen Sie die gespiegelte Quellen aus und klicken Sie dann auf Weiter. Sie können eine oder mehrere Quellen auswählen. Google Cloud spiegelt alle Instanzen, die mit mindestens einer Ihrer ausgewählten Quellen übereinstimmen.

    • Subnetze – Wählen Sie mindestens ein Subnetzwerk aus. Google Cloud spiegelt vorhandene und zukünftige Instanzen in ausgewählten Subnetzen.
    • Netzwerk-Tag – Geben Sie ein oder mehrere Netzwerk-Tags an. Google Cloud spiegelt Instanzen, die mindestens eines der angegebenen Tags enthalten.
    • Instanzname – Wählen Sie die zu spiegelnden Instanzen aus.
  6. Wählen Sie einen internen Passthrough-Network Load Balancer aus, der für die Paketspiegelung konfiguriert wurde, und klicken Sie dann auf Weiter. Google Cloud sendet gespiegelten Traffic an Instanzen, die hinter dem internen Passthrough-Network Load Balancer liegen.

    Wenn sich bei einer freigegebenen VPC das Collector-Ziel und die gespiegelten Quellen im selben freigegebenen VPC-Netzwerk befinden, müssen Sie das Projekt auswählen, in dem sich das Collector-Ziel befindet, und dann einen Load-Balancer auswählen.

  7. So wählen Sie den Traffic aus, der gespiegelt werden soll:

    • Wenn Sie den gesamten IPv4-Traffic spiegeln möchten, wählen Sie Gesamten IPv4-Traffic spiegeln (Standardeinstellung) aus.
    • Wenn Sie den gesamten IPv4- und IPv6-Traffic spiegeln möchten, wählen Sie Gefilterten Traffic spiegeln aus und führen Sie dann die folgenden Schritte aus:
      • Wählen Sie Alle Protokolle zulassen aus.
      • Wählen Sie Alle IPv4-Bereiche zulassen (0.0.0.0/0) aus.
      • Wählen Sie Alle IPv6-Bereiche zulassen (::/0) aus.
      • Wählen Sie Eingehenden und ausgehenden Traffic zulassen aus.
    • Wenn Sie einschränken möchten, welcher Traffic gespiegelt wird, wählen Sie Gefilterten Traffic spiegeln aus und gehen Sie dann so vor:

      • Wenn Sie den gespiegelten Traffic nach Protokoll einschränken möchten, wählen Sie Bestimmte Protokolle zulassen und dann die Protokolle aus. Wenn Sie kein Protokoll sehen, für das Sie den Traffic spiegeln möchten, wählen Sie Sonstige Protokolle aus und geben Sie das Protokoll in das Feld Sonstige Protokolle ein. Gültige Werte sind: tcp, udp, esp, ah, ipip, sctp oder eine IANA-Protokollnummer. Geben Sie 58 ein, um ICMP für IPv6 anzugeben.

      • Führen Sie für Filter für IPv4-Bereich die folgenden Schritte aus:

        • Wenn Sie den gesamten IPv4-Traffic spiegeln möchten, wählen Sie Alle IPv4-Bereiche zulassen (0.0.0.0/0) aus.
        • Wenn Sie Traffic für bestimmte IPv4-Adressbereiche spiegeln möchten, wählen Sie Bestimmte IPv4-Bereiche zulassen aus. Geben Sie im Feld IPv4-Bereiche einen einzelnen IPv4-Adressbereich ein und drücken Sie dann die Eingabetaste. Sie können mehrere IPv4-Bereiche hinzufügen, indem Sie nach jedem eingegebenen Bereich die Eingabetaste drücken.
      • Führen Sie für Filter für IPv6-Bereich die folgenden Schritte aus:

        • Wenn Sie den gesamten IPv6-Traffic herausfiltern möchten, wählen Sie Kein aus.
        • Wenn Sie den gesamten IPv6-Traffic spiegeln möchten, wählen Sie Alle IPv6-Bereiche zulassen (::/0) aus.
        • Wenn Sie Traffic für bestimmte IPv6-Adressbereiche spiegeln möchten, wählen Sie Bestimmte IPv6-Bereiche zulassen aus. Geben Sie im Feld IPv6-Bereiche einen einzelnen IPv6-Adressbereich ein und drücken Sie die Eingabetaste. Sie können mehrere IPv6-Bereiche hinzufügen, indem Sie nach jedem eingegebenen Bereich die Eingabetaste drücken.
  8. Wählen Sie die Traffic-Richtung des Traffics aus, den Sie spiegeln möchten.

  9. Klicken Sie auf Senden, um die Paketspiegelungsrichtlinie zu erstellen.

gcloud

Verwenden Sie den Befehl packet-mirrorings create, um eine Paketspiegelungsrichtlinie zu erstellen.

gcloud compute packet-mirrorings create POLICY_NAME \
    --region=REGION \
    --network=NETWORK_NAME \
    --collector-ilb=FORWARDING_RULE_NAME \
    [--mirrored-subnets=SUBNET,[SUBNET,...]] \
    [--mirrored-tags=TAG,[TAG,...]] \
    [--mirrored-instances=INSTANCE,[INSTANCE,...]] \
    [--filter-cidr-ranges=CIDR_RANGE,[CIDR_RANGE,...]] \
    [--filter-protocols=PROTOCOL,[PROTOCOL,...]] \
    [--filter-direction=DIRECTION]

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie.
  • REGION ist die Region, in der sich die gespiegelten Quellen und das Collector-Ziel befinden.
  • NETWORK_NAME ist das Netzwerk, in dem sich die gespiegelten Quellen befinden.
  • FORWARDING_RULE_NAME: der Name der Weiterleitungsregel, die als Collector für Spiegelungen konfiguriert ist. Google Cloud sendet den gesamten gespiegelten Traffic an den zugehörigen internen Passthrough-Network Load Balancer.
  • SUBNET: der Name eines oder mehrerer Subnetze, die gespiegelt werden sollen. Sie können mehrere Subnetze in einer durch Kommas getrennten Liste angeben. Google Cloud spiegelt vorhandene und zukünftige Instanzen im Subnetz.
  • TAG ist mindestens ein Netzwerktag. Google Cloud spiegelt Instanzen, die ein Netzwerk-Tag haben. Sie können mehrere Tags in einer durch Kommas getrennten Liste angeben.
  • INSTANCE: die voll qualifizierte ID einer oder mehrerer Instanzen, die gespiegelt werden sollen. Sie können mehrere Instanzen in einer durch Kommas getrennten Liste angeben.
  • CIDR_RANGE: ein oder mehrere IPv4- oder IPv6-CIDR-Bereiche, die gespiegelt werden sollen. Wenn keine CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic, der mit den angegebenen Protokollen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie 0.0.0.0/0,::/0, um den gesamten IPv4- und IPv6-Traffic zu spiegeln. Sie können sowohl IPv4- als auch IPv6-CIDR-Bereiche angeben. Sie können mehrere Bereiche in einer durch Kommas getrennten Liste angeben.
  • PROTOCOL: ein oder mehrere Protokolle, die gespiegelt werden sollen. Gültige Werte sind: tcp ,udp ,icmp ,esp ,ah ,ipip ,sctp oder eine IANA-Protokollnummer. Wenn keine Protokolle angegeben sind, wird der gesamte Traffic gespiegelt, der den angegebenen CIDR-Bereichen entspricht. Wenn weder Protokolle noch CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie 58, um ICMP für IPv6 anzugeben. Sie können mehrere Protokolle in einer durch Kommas getrennten Liste angeben.
  • DIRECTION: die Richtung des Traffics, der relativ zur VM gespiegelt wird. Die Standardeinstellung ist both. Dies bedeutet, dass der eingehende und der ausgehende Traffic gespiegelt werden. Sie können einschränken, welche Pakete erfasst werden. Geben Sie dazu ingress an, damit nur eingehende Pakete erfasst werden, oder egress, um nur ausgehende Pakete zu erfassen.

Terraform

Sie können eine Terraform-Ressource verwenden, um eine Paketspiegelungsrichtlinie zu erstellen.

resource "google_compute_packet_mirroring" "default" {
  region      = "europe-west1"
  name        = "my-mirroring"
  description = "My packet mirror"
  network {
    url = google_compute_network.ilb_network.id
  }
  collector_ilb {
    url = google_compute_forwarding_rule.default.id
  }
  mirrored_resources {
    tags = ["foo"]
    instances {
      url = google_compute_instance.vm_test.id
    }
  }
  filter {
    ip_protocols = ["tcp"]
    cidr_ranges  = ["0.0.0.0/0"]
    direction    = "BOTH"
  }
}

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

API

Senden Sie zum Erstellen einer Paketspiegelungsrichtlinie eine POST-Anfrage an die Methode packetMirrorings.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings
{
  "name": "POLICY_NAME",
  "enable": "ENABLED",
  "network": {
    "url": "NETWORK_URL"
  },
  "priority": PRIORITY,
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "tags": [
      "TAG"
    ],
    "instances": [
      {
        "url": "INSTANCE"
      }
    ]
  },
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "filter": {
    "IPProtocols": [
      "PROTOCOL"
    ],
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "direction": "DIRECTION"
  }
}

Dabei gilt:

  • PROJECT_ID ist die ID des Projekts, in dem die Richtlinie erstellt werden soll.
  • REGION: die Region, in der sich die gespiegelten Quellen und das Collector-Ziel befinden.
  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie.
  • ENABLED: Ob diese Richtlinie in Kraft tritt oder nicht. Optionen sind TRUE und FALSE. Standardmäßig ist TRUE ausgewählt.
  • NETWORK_URL: die URL des Netzwerks, in dem sich die gespiegelten Quellen befinden.
  • PRIORITY: Priorität der Weiterleitungsregel, die bei mehreren übereinstimmenden Regeln verwendet wird, um eine Entscheidung zu treffen. Der gültige Bereich liegt zwischen 0 und 65.535. Der Standardwert ist 1.000.
  • SUBNET_URL: die URL eines Subnetzes, das gespiegelt werden soll. Google Cloud spiegelt vorhandene und zukünftige Instanzen im Subnetz. Sie können mehrere Subnetze in einer durch Kommas getrennten Liste angeben.
  • TAG: ein Netzwerk-Tag. Google Cloud spiegelt Instanzen, die ein Netzwerk-Tag haben. Sie können mehrere Tags in einer durch Kommas getrennten Liste angeben.
  • INSTANCE; die voll qualifizierte ID einer Instanz, die gespiegelt werden soll. Sie können mehrere Instanzen in einer durch Kommas getrennten Liste angeben.
  • FORWARDING_RULE_URL: die URL einer Weiterleitungsregel, die als Collector für Spiegelungen konfiguriert ist. Google Cloud sendet den gesamten gespiegelten Traffic an den zugehörigen internen Passthrough-Network Load Balancer.
  • PROTOCOL: ein oder mehrere Protokolle. Verfügbare Optionen sind tcp, udp, icmp, esp, ah, ipip, sctp oder eine IANA-Protokollnummer. Wenn keine Protokolle angegeben sind, wird der gesamte Traffic, der mit den angegebenen CIDR-Bereichen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Geben Sie 58 ein, um ICMP für IPv6 anzugeben. Sie können mehrere Protokolle angeben. Verwenden Sie dazu das folgende Formular: "icmp", "udp".
  • CIDR_RANGE: ein oder mehrere IPv4- oder IPv6-CIDR-Bereiche, die gespiegelt werden sollen. Wenn keine CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic, der mit den angegebenen Protokollen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie "0.0.0.0/0", "::/0", um den gesamten IPv4- und IPv6-Traffic zu spiegeln. Sie können sowohl IPv4- als auch IPv6-CIDR-Bereiche angeben. Sie können mehrere CIDR-Bereiche angeben. Verwenden Sie dazu das folgende Format: "192.0.2.0/24", "2001:0DB8::/32".
  • PROTOCOL: ein oder mehrere Protokolle, die gespiegelt werden sollen.
  • DIRECTION: die Richtung des Traffics, der gespiegelt werden soll. Optionen sind INGRESS, EGRESS oder BOTH. Der Standardwert ist BOTH.

Paketspiegelung prüfen

Mit tcpdump können Sie prüfen, ob Ihre Collector-Instanzen gespiegelten Traffic korrekt empfangen.

  1. Verbindung zu einer Collector-Instanz herstellen.

  2. Wenn der Befehl tcpdump nicht verfügbar ist, installieren Sie ihn.

  3. Ermitteln Sie die Netzwerkschnittstelle:

    ip address
    

    Suchen Sie in der Liste der Netzwerkschnittstellen den Namen, der der primären internen IPv4-Adresse Ihrer Collector-Instanz zugeordnet ist, z. B. ens4.

  4. Beginnen Sie mit der Analyse der Pakete:

    sudo tcpdump -i INTERFACE_NAME -f "host IP_ADDRESS"
    

    Dabei gilt:

    • INTERFACE_NAME: Der Schnittstellenname, den Sie in Schritt 3 identifiziert haben.
    • IP_ADDRESS: Die IPv4-Adresse einer gespiegelten Quell-VM.
  5. Senden Sie zum Ausführen des Tests Traffic von der gespiegelten Quell-VM, z. B. durch Senden eines ICMP-Pings. Prüfen Sie in der Ausgabe von tcpdump, ob der erwartete Traffic angezeigt werden kann.

Paketspiegelungsrichtlinie ändern

Sie können eine vorhandene Richtlinie aktualisieren, um Details wie gespiegelte Quellen oder Collector-Ziele zu ändern.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

  2. Klicken Sie in der Liste der Paketspiegelungsrichtlinien auf die Richtlinie, die Sie bearbeiten möchten.

  3. Klicken Sie auf der Seite mit den Richtliniendetails auf Bearbeiten.

  4. Bearbeiten Sie die Felder, die Sie aktualisieren möchten. Die Konsole folgt demselben Ablauf wie beim Erstellen einer Richtlinie. Informationen zu den einzelnen Feldern finden Sie unter Paketspiegelungsrichtlinie erstellen.

gcloud

Verwenden Sie den Befehl packet-mirrorings update, um eine vorhandene Paketspiegelungsrichtlinie zu aktualisieren.

gcloud compute packet-mirrorings update POLICY_NAME [--async] \
  [--collector-ilb=FORWARDING_RULE_NAME] [--description=DESCRIPTION] [--enable] \
  [--filter-direction=DIRECTION] [--region=REGION] \
  [--add-filter-cidr-ranges=[CIDR_RANGE,...] | --clear-filter-cidr-ranges \
    | --remove-filter-cidr-ranges=[CIDR_RANGE,...] \
    | --set-filter-cidr-ranges=[CIDR_RANGE,...]] \
  [--add-filter-protocols=[PROTOCOL,...] | --clear-filter-protocols \
    | --remove-filter-protocols=[PROTOCOL,...] \
    | --set-filter-protocols=[PROTOCOL,...]] \
  [--add-mirrored-instances=[INSTANCE,...] | --clear-mirrored-instances \
    | --remove-mirrored-instances=[INSTANCE,...] \
    | --set-mirrored-instances=[INSTANCE,...]] \
  [--add-mirrored-subnets=[SUBNET,...] | --clear-mirrored-subnets \
    | --remove-mirrored-subnets=[SUBNET,...] \
    | --set-mirrored-subnets=[SUBNET,...]] \
  [--add-mirrored-tags=[TAG,...] | --clear-mirrored-tags \
    | --remove-mirrored-tags=[TAG,...] | --set-mirrored-tags=[TAG,...]]

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die geändert werden soll.
  • FORWARDING_RULE_NAME ist der Name der Weiterleitungsregel, die als Collector konfiguriert ist. Google Cloud sendet den gesamten gespiegelten Traffic an den zugehörigen internen Passthrough-Network Load Balancer.
  • DESCRIPTION: eine Beschreibung der Paketspiegelungsrichtlinie.
  • DIRECTION: die Traffic-Richtung, auf die die Paketspiegelungsrichtlinie angewendet werden soll. Optionen sind egress, ingress oder both.
  • REGION: die Region, in der sich die Richtlinie befindet.
  • CIDR_RANGE: ein oder mehrere IPv4- oder IPv6-CIDR-Bereiche, die gespiegelt werden sollen. Wenn keine CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic, der mit den angegebenen Protokollen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie 0.0.0.0/0,::/0, um den gesamten IPv4- und IPv6-Traffic zu spiegeln. Sie können sowohl IPv4- als auch IPv6-CIDR-Bereiche angeben. Sie können mehrere Bereiche in einer durch Kommas getrennten Liste angeben.
  • PROTOCOL: ein oder mehrere Protokolle, die gespiegelt werden sollen. Gültige Werte sind: tcp ,udp ,icmp ,esp ,ah ,ipip ,sctp oder eine IANA-Protokollnummer. Wenn keine Protokolle angegeben sind, wird Traffic, der den angegebenen CIDR-Bereichen entspricht, gespiegelt. Wenn weder Protokolle noch CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie 58, um ICMP für IPv6 anzugeben. Sie können mehrere Protokolle in einer durch Kommas getrennten Liste angeben.
  • INSTANCE: die voll qualifizierte ID einer oder mehrerer VM-Instanzen, die gespiegelt werden sollen. Sie können mehrere Instanzen in einer durch Kommas getrennten Liste angeben.
  • SUBNET: ein oder mehrere Subnetze. Sie können mehrere Subnetzwerke in einer durch Kommas getrennten Liste angeben. Google Cloud spiegelt vorhandene und zukünftige Instanzen im Subnetz.
  • TAG ist mindestens ein Netzwerktag. Sie können mehrere Tags in einer durch Kommas getrennten Liste angeben.

API

Wenn Sie eine Paketspiegelungsrichtlinie aktualisieren möchten, senden Sie eine POST-Anfrage an die Methode packetMirrorings.patch.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "name": "POLICY_NAME",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "instances": [
      {
        "url": "INSTANCE_URL"
      }
    ],
    "tags": [
      "NETWORK_TAGS"
    ]
  },
  "filter": {
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "IPProtocols": [
      "PROTOCOL"
    ],
    "direction": "DIRECTION"
  },
  "enable": "ENABLED"
}

Dabei gilt:

  • PROJECT_ID: Die ID des Projekts, in dem die Richtlinie gespeichert ist.
  • REGION: die Region der Paketspiegelungsrichtlinie.
  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die geändert werden soll.
  • DESCRIPTION: eine optionale Beschreibung der Richtlinie.
  • PRIORITY: Die Priorität der Richtlinie, die bei mehreren übereinstimmenden Richtlinien verwendet wird, um eine Entscheidung zu treffen. Der Standardwert ist 1.000. Der gültige Bereich liegt zwischen 0 und 65.535.
  • FORWARDING_RULE_URL: die URL einer Weiterleitungsregel mit aktivierter Paketspiegelung. Google Cloud sendet den gesamten gespiegelten Traffic an den zugehörigen internen Passthrough-Network Load Balancer.
  • SUBNET_URL: die URL eines Subnetzwerks. Google Cloud spiegelt vorhandene und zukünftige Instanzen im Subnetz. Sie können mehrere Subnetzwerke in einer durch Kommas getrennten Liste angeben.
  • INSTANCE_URL: die URL einer VM-Instanz, die gespiegelt werden soll. Sie können mehrere Instanzen in einer durch Kommas getrennten Liste angeben.
  • NETWORK_TAGS: ein Netzwerk-Tag. Google Cloud spiegelt Instanzen, die ein oder mehrere Netzwerk-Tags haben. Sie können mehrere Tags in einer durch Kommas getrennten Liste angeben.
  • CIDR_RANGE: ein oder mehrere IPv4- oder IPv6-CIDR-Bereiche, die gespiegelt werden sollen. Wenn keine CIDR-Bereiche angegeben sind, wird der gesamte IPv4-Traffic, der mit den angegebenen Protokollen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie "0.0.0.0/0", "::/0", um den gesamten IPv4- und IPv6-Traffic zu spiegeln. Sie können sowohl IPv4- als auch IPv6-CIDR-Bereiche angeben. Sie können mehrere CIDR-Bereiche angeben. Verwenden Sie dazu das folgende Format: "192.0.2.0/24", "2001:DB8::/32".
  • IP_PROTOCOL: ein oder mehrere Protokolle. Verfügbare Optionen sind tcp, udp, icmp, esp, ah, ipip, sctp oder eine IANA-Protokollnummer. Wenn keine Protokolle angegeben sind, wird der gesamte Traffic, der mit den angegebenen CIDR-Bereichen übereinstimmt, gespiegelt. Wenn weder CIDR-Bereiche noch Protokolle angegeben sind, wird der gesamte IPv4-Traffic gespiegelt. Verwenden Sie 58, um ICMP für IPv6 anzugeben. Sie können mehrere Protokolle angeben. Verwenden Sie dazu das folgende Formular: "icmp", "udp".
  • DIRECTION: die Richtung des Traffics, der gespiegelt werden soll. Optionen sind INGRESS, EGRESS oder BOTH. Der Standardwert ist BOTH.
  • ENABLED: Gibt an, ob die Richtlinie aktiviert ist oder nicht. Optionen sind TRUE oder FALSE.

Paketspiegelungsrichtlinien auflisten

Sie können Paketspiegelungsrichtlinien auflisten, um vorhandene Richtlinien anzeigen zu lassen.

Console

  • Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

    In der Google Cloud Console werden alle Richtlinien in Ihrem Projekt aufgelistet.

gcloud

Mit dem Befehl packet-mirrorings list können Sie Paketspiegelungsrichtlinien auflisten, die sich in Ihrem Projekt befinden oder für eine bestimmte Region gelten.

gcloud compute packet-mirrorings list \
  [--filter="region:(REGION...)"]

Ersetzen Sie REGION durch den Namen der Region, welche die aufzulistenden Richtlinien enthält.

API

Wenn Sie vorhandene Paketspiegelungsrichtlinien in Ihrem Projekt auflisten möchten, senden Sie eine GET-Anfrage an die Methode packetMirrorings.list.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/packetMirrorings

Ersetzen Sie PROJECT_ID durch die ID Ihres Projekts.

Wenn Sie vorhandene Paketspiegelungsrichtlinien für eine bestimmte Region auflisten möchten, senden Sie eine GET-Anfrage an die Methode packetMirrorings.list.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, das die Richtlinien enthält, die aufgelistet werden sollen.
  • REGION: die Region, die die Richtlinien enthält, die aufgelistet werden sollen.

Paketspiegelungsrichtlinie beschreiben

Sie können eine Paketspiegelungsrichtlinie beschreiben, um Details wie die Filter der Richtlinie aufzurufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

  2. Wählen Sie in der Liste der Paketspiegelungsrichtlinien die Richtlinie aus, die Sie ansehen möchten. In der Google Cloud Console werden die Details der ausgewählten Richtlinie angezeigt.

gcloud

Verwenden Sie den Befehl packet-mirrorings describe, um eine Paketspiegelungsrichtlinie zu beschreiben.

gcloud compute packet-mirrorings describe POLICY_NAME \
  --region=REGION \

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die beschrieben werden soll.
  • REGION: die Region, in der sich die Richtlinie befindet.

API

Stellen Sie eine GET-Anfrage an die Methode packetMirrorings.get, um eine Paketspiegelungsrichtlinie zu beschreiben.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, in dem die Richtlinie gespeichert ist.
  • REGION: die Region, in der sich die Richtlinie befindet.
  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die beschrieben werden soll.

Paketspiegelungsrichtlinie deaktivieren bzw. aktivieren

Sie können eine Paketspiegelungsrichtlinie deaktivieren oder aktivieren, um das Sammeln des gespiegelten Traffics zu stoppen bzw. zu starten.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

  2. Wählen Sie in der Liste der Paketspiegelungsrichtlinien die Richtlinie aus, die Sie deaktivieren bzw. aktivieren möchten.

  3. Klicken Sie auf Deaktivieren bzw. Aktivieren.

  4. Klicken Sie zur Bestätigung auf Deaktivieren bzw. Aktivieren.

gcloud

Verwenden Sie den Befehl packet-mirrorings update, um eine Paketspiegelungsrichtlinie zu deaktivieren.

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --no-enable

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die deaktiviert bzw. aktiviert werden soll.
  • REGION: die Region, in der sich die Richtlinie befindet.

Verwenden Sie den Befehl packet-mirrorings update, um eine Paketspiegelungsrichtlinie zu aktivieren.

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --enable

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die deaktiviert bzw. aktiviert werden soll.
  • REGION: die Region, in der sich die Richtlinie befindet.

API

Wenn Sie eine vorhandene Paketspiegelungsrichtlinie deaktivieren oder aktivieren möchten, senden Sie eine PATCH-Anfrage an die Methode packetMirrorings.patch.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "enable": "FALSE|TRUE"
}

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, in dem die Richtlinie gespeichert ist.
  • REGION: die Region, in der sich die Richtlinie befindet.
  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die deaktiviert werden soll.

Paketspiegelungsrichtlinie löschen

Sie können eine Paketspiegelungsrichtlinie löschen, um sie aus Ihrem Projekt zu entfernen. Nachdem Sie eine Richtlinie gelöscht haben, wird in Google Cloud der gesamte Traffic, der mit der Richtlinie in Zusammenhang steht, nicht mehr gespiegelt.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Paketspiegelung auf.

    Zu „Paketspiegelung“

  2. Wählen Sie in der Liste der Paketspiegelungsrichtlinien die Richtlinie aus, die Sie löschen möchten.

  3. Klicken Sie auf Löschen.

  4. Klicken Sie zur Bestätigung auf Löschen.

gcloud

Verwenden Sie zum Löschen einer Paketspiegelungsrichtlinie den Befehl packet-mirrorings delete.

gcloud compute packet-mirrorings delete POLICY_NAME \
  --region=REGION \

Dabei gilt:

  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die gelöscht werden soll.
  • REGION: die Region, in der sich die Richtlinie befindet.

API

Wenn Sie eine Paketspiegelungsrichtlinie löschen möchten, senden Sie eine DELETE-Anfrage an die Methode packetMirrorings.delete.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, in dem die Richtlinie gespeichert ist.
  • POLICY_NAME: der Name der Paketspiegelungsrichtlinie, die gelöscht werden soll.
  • REGION: die Region, in der sich die Richtlinie befindet.

Fehlerbehebung

Prüfen Sie die folgenden Konfigurationen, wenn mit der Paketspiegelungsrichtlinie nicht der vorgesehene gespiegelte Traffic erfasst wird:

  • Prüfen Sie, ob Ihre Firewallregeln den Traffic von den gespiegelten Instanzen zu den Collector-Instanzen zulassen.

  • Prüfen Sie, ob Ihre gespiegelten Quellen die Instanzen ein- bzw. ausschließen, die gespiegelt werden sollen. Wenn Sie z. B. ein Subnetz als gespiegelte Quelle angeben, werden alle vorhandenen und zukünftigen Instanzen im Subnetz gespiegelt. Wenn Sie Tags angeben, werden nur Instanzen mit übereinstimmenden Tags gespiegelt.

  • Prüfen Sie, ob die Paketspiegelungsfilter nicht zu umfassend bzw. zu eng definiert sind. Möglicherweise haben Sie unbeabsichtigt Filter konfiguriert, um bestimmte Zugriffe ein- bzw. auszuschließen.

  • Wenn Sie eine Paketspiegelungsrichtlinie konfiguriert haben, um IPv6-Traffic zu erfassen, müssen die Quellen des gespiegelten Traffics Dual-Stack-VMs sein, die mit Dual- Stack-Subnetze verbunden sind.