Routing für Private Service Connect-Schnittstellen konfigurieren

Auf dieser Seite wird beschrieben, wie Sie das Routing für virtuelle und dynamische Private Service Connect-Schnittstellen konfigurieren.

Traffic über eine Private Service Connect-Schnittstelle weiterleiten

Nachdem Sie eine Private Service Connect-Schnittstelle erstellt haben, müssen Sie den Traffic über die Schnittstelle weiterleiten, indem Sie das Gastbetriebssystem (Gast-OS) auf der VM der Schnittstelle konfigurieren.

SSH-Verbindungen zulassen

Achten Sie darauf, dass Firewallregeln so konfiguriert sind, dass eingehende SSH-Verbindungen zur VM der Private Service Connect-Schnittstelle zugelassen werden.

Google Cloud Namen der Private Service Connect-Schnittstelle ermitteln

Zum Konfigurieren des Routings benötigen Sie den Google Cloud Namen Ihrer Private Service Connect-Schnittstelle.

Verwenden Sie die Google Cloud CLI, um den Google Cloud -Namen einer dynamischen Private Service Connect-Schnittstelle zu ermitteln.

Console

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

    Zu Seite „VM-Instanzen“

  2. Klicken Sie auf den Namen der VM mit Ihrer Private Service Connect-Schnittstelle.

  3. Suchen Sie im Abschnitt Netzwerkschnittstellen den Namen Ihrer virtuellen Private Service Connect-Schnittstelle, z. B. nic1.

gcloud

  1. Führen Sie den Befehl gcloud compute instances describe aus.

    gcloud compute instances describe VM_NAME \
        --zone=ZONE
    

    Ersetzen Sie Folgendes:

    • VM_NAME: Der Name der VM mit Ihrer Private Service Connect-Schnittstelle.
    • ZONE: Zone der VM
  2. Suchen Sie in der Ausgabe des Befehls den Google Cloud -Namen Ihrer Private Service Connect-Schnittstelle.

    • Bei virtuellen Private Service Connect-Schnittstellen hat der Name das Format nic[interface_number], z. B. nic0 oder nic1.
    • Bei dynamischen Private Service Connect-Schnittstellen hat der Name das Format nic[parent_interface_number.VLAN_ID], z. B. nic0.10 oder nic1.42.

Automatische Verwaltung dynamischer Private Service Connect-Schnittstellen konfigurieren

Wenn Sie das Routing für eine dynamische Private Service Connect-Schnittstelle konfigurieren, aktivieren Sie die automatische Verwaltung dynamischer Netzwerkschnittstellen. Dies ist nur einmal pro VM erforderlich.

Namen des Gastbetriebssystems der Private Service Connect-Schnittstelle ermitteln

Zum Konfigurieren des Routings benötigen Sie den Namen des Gastbetriebssystems Ihrer Private Service Connect-Schnittstelle. Dieser unterscheidet sich vom Namen der Schnittstelle in Google Cloud.

So finden Sie den Namen der Schnittstelle auf einer Debian-VM: Informationen zu VMs mit anderen Betriebssystemen finden Sie in der öffentlichen Dokumentation des Betriebssystems.

  1. Stellen Sie eine Verbindung zur VM Ihrer Private Service Connect-Schnittstelle her.
  2. Führen Sie dazu diesen Befehl aus:

    ip address
    

    Suchen Sie in der Liste der Netzwerkschnittstellen den Namen der Schnittstelle, der der IP-Adresse Ihrer Private Service Connect-Schnittstelle zugeordnet ist. Wenn beispielsweise der Linux-Gastagent die Netzwerkschnittstellen Ihrer VM verwaltet, haben die Namen die folgenden Formen:

    • Virtuelle Private Service Connect-Schnittstellen: ens[number], z. B. ens5.
    • Dynamische Private Service Connect-Schnittstellen: gcp.ens[parent_interface_number].[VLAN_ID], z. B. gcp.ens5.10.

Gateway-IP-Adresse der Private Service Connect-Schnittstelle ermitteln

Zum Konfigurieren des Routings benötigen Sie die IP-Adresse des Standardgateways Ihrer Private Service Connect-Schnittstelle.

  1. Stellen Sie eine Verbindung zur VM der Private Service Connect-Schnittstelle her.
  2. Senden Sie eine GET-Anfrage von der VM Ihrer Schnittstelle an den zugehörigen Metadatenserver.

    • Senden Sie für virtuelle Private Service Connect-Schnittstellen die folgende Anfrage:

      curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google" && echo
      

      Ersetzen Sie INTERFACE_NUMBER durch den Index Ihrer Schnittstelle. Wenn der Google Cloud Name Ihrer Private Service Connect-Schnittstelle beispielsweise nic1 ist, verwenden Sie den Wert 1.

    • Senden Sie für dynamische Private Service Connect-Schnittstellen die folgende Anfrage:

      curl http://metadata.google.internal/computeMetadata/v1/instance/vlan-network-interfaces/PARENT_INTERFACE_NUMBER/VLAN_ID/gateway -H "Metadata-Flavor: Google" && echo
      

      Ersetzen Sie Folgendes:

      • PARENT_INTERFACE_NUMBER: der Index der übergeordneten vNIC der dynamischen Private Service Connect-Schnittstelle.

        Wenn der Google Cloud Name Ihrer Private Service Connect-Schnittstelle beispielsweise nic1.5 ist, verwenden Sie den Wert 1.

      • VLAN_ID: die VLAN-ID Ihrer dynamischen Private Service Connect-Schnittstelle

        Wenn der Google Cloud Name Ihrer Private Service Connect-Schnittstelle beispielsweise nic1.5 ist, verwenden Sie den Wert 5.

    In der Ausgabe der Anfrage wird die IP-Adresse des Gateways angezeigt.

Routen für Consumer-Subnetze hinzufügen

Sie müssen für jedes Nutzersubnetz, das eine Verbindung zu Ihrer Private Service Connect-Schnittstelle herstellt, eine Route zum Standardgateway der Private Service Connect-Schnittstelle hinzufügen. So kann Traffic, der für das Nutzer-Netzwerk bestimmt ist, über die Private Service Connect-Schnittstelle fließen.

In den folgenden Schritten wird beschrieben, wie Sie die Routingtabelle für eine VM, die das Debian-Betriebssystem verwendet, vorübergehend aktualisieren. Wenn Sie die Tabelle dauerhaft oder die Route auf einem anderen Betriebssystem aktualisieren möchten, sehen Sie in der öffentlichen Dokumentation des Betriebssystems nach.

  1. Stellen Sie eine Verbindung zur VM Ihrer Private Service Connect-Schnittstelle her.

  2. Führen Sie für jedes Nutzersubnetz, das eine Verbindung zu Ihrer Private Service Connect-Schnittstelle herstellt, folgenden Befehl aus:

    sudo ip route add CONSUMER_SUBNET_RANGE via GATEWAY_IP dev OS_INTERFACE_NAME
    

    Ersetzen Sie Folgendes:

  3. Führen Sie den folgenden Befehl aus, um alle Einträge aus der Cache-Routingtabelle zu entfernen. Dies kann erforderlich sein, wenn Sie eine vorhandene Instanz mit zuvor konfigurierten Routingtabellen verwenden.

    sudo ip route flush cache
    

Private Service Connect-Schnittstelle mit VPC Service Controls verwenden

Sie können Private Service Connect-Schnittstellen mit VPC Service Controls verwenden. So kann über ein Nutzer-VPC-Netzwerk auf Google APIs und Google-Dienste zugegriffen werden, während die Nutzerorganisation die Sicherheitsvorteile von VPC Service Controls nutzen kann.

Sie können diese Konfiguration mit einem der folgenden Ansätze implementieren, die in den folgenden Abschnitten beschrieben werden:

  • Gastbetriebssystem-Routing konfigurieren
  • Private Service Connect-Schnittstelle mit Netzwerk-Namespaces oder VRF isolieren und dann das Routing konfigurieren

Gastbetriebssystem-Routing konfigurieren

Wenn Sie eine Private Service Connect-Schnittstelle mit VPC Service Controls verwenden möchten, konfigurieren Sie das Routing im Gastbetriebssystem der VM der Schnittstelle. Leiten Sie Traffic, der für Google APIs und -Dienste bestimmt ist, über Ihre Private Service Connect-Schnittstelle weiter.

In den folgenden Schritten wird beschrieben, wie Sie die Routingtabelle für eine VM, die das Debian-Betriebssystem verwendet, vorübergehend aktualisieren. Wenn Sie die Tabelle dauerhaft oder die Route auf einem anderen Betriebssystem aktualisieren möchten, sehen Sie in der öffentlichen Dokumentation des Betriebssystems nach.

So konfigurieren Sie das Routing:

  1. SSH-Verbindungen zulassen zur VM der Private Service Connect-Schnittstelle.
  2. Stellen Sie eine Verbindung zur VM her.
  3. Führen Sie den folgenden Befehl aus, um eine benutzerdefinierte Routentabelle für Ihre Private Service Connect-Schnittstelle zu erstellen:

    echo "1 ROUTE_TABLE_NAME" | sudo tee -a /etc/iproute2/rt_tables
    

    Ersetzen Sie ROUTE_TABLE_NAME durch einen Namen für die Routentabelle.

  4. Fügen Sie Ihrer Routingtabelle eine Route für Traffic zu Google APIs und Diensten hinzu. Wenn Sie beispielsweise eine Route für Traffic zur virtuellen IP-Adresse (VIP) restricted.googleapis.com hinzufügen möchten, verwenden Sie den folgenden Befehl, der den IPv4-Adressbereich für restricted.googleapis.com angibt:

    sudo ip route add 199.36.153.4/30 dev OS_INTERFACE_NAME table ROUTE_TABLE_NAME
    

    Ersetzen Sie OS_INTERFACE_NAME durch den Namen des Gastbetriebssystems für Ihre Private Service Connect-Schnittstelle, z. B. ens5 oder gcp.ens5.10.

  5. Verwenden Sie den folgenden Befehl, um eine Routingregel hinzuzufügen, die die benutzerdefinierte Routingtabelle für Pakete verwendet, die von Ihrer Private Service Connect-Schnittstelle stammen:

    sudo ip rule add from INTERFACE_IP table ROUTE_TABLE_NAME
    

    Ersetzen Sie INTERFACE_IP durch die IP-Adresse Ihrer Private Service Connect-Schnittstelle. Sie können die IP-Adresse der Schnittstelle ermitteln, indem Sie die VM der Schnittstelle beschreiben.

  6. Führen Sie den folgenden Befehl aus, um alle Einträge aus der Cache-Routingtabelle zu entfernen. Dies kann erforderlich sein, wenn Sie eine vorhandene Instanz mit zuvor konfigurierten Routingtabellen verwenden.

    sudo ip route flush cache
    

Private Service Connect-Schnittstellen mit Namespaces oder VRF isolieren

Alternativ können Sie Ihre VM so konfigurieren, dass sie Netzwerk-Namespaces oder Virtual Routing and Forwarding (VRF) verwendet, um die Private Service Connect-Schnittstelle zu isolieren. Dieser Ansatz ist hilfreich für containerisierte Arbeitslasten, z. B. für Arbeitslasten, die in Google Kubernetes Engine-Pods ausgeführt werden.

Konfigurieren Sie das Routing mit demselben Kontext, den Sie zum Isolieren der Schnittstelle verwendet haben, und achten Sie darauf, dass Arbeitslasten, die Ihre Private Service Connect-Schnittstelle verwenden, in diesem Kontext vorhanden sind.