VPN-Status prüfen

Nachdem Sie Ihre Peer-VPN-Gateways konfiguriert haben, können Sie die folgenden Komponenten prüfen, um festzustellen, ob sie korrekt mit Cloud VPN kommunizieren:

  • Prüfen Sie den Status der HA VPN- oder klassischen VPN-Tunnel, die Sie konfiguriert haben, einschließlich des Betriebszustands.
  • Prüfen Sie den Hochverfügbarkeitsstatus von Tunneln auf einem HA VPN-Gateway.
  • Rufen Sie den Status von Cloud Router-BGP-Sitzungen (Border Gateway Protocol) oder die Routen auf, die von Cloud Router beworben werden.

Weitere Informationen zu Cloud VPN finden Sie in den folgenden Ressourcen:

HA VPN-Tunnel prüfen

Mit diesem Verfahren können Sie den Status von Tunneln auf beiden Schnittstellen eines HA VPN-Gateways prüfen.

Console

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

    Zu VPN

  2. Rufen Sie den VPN-Tunnelstatus und den BGP-Sitzungsstatus auf.

  3. Klicken Sie zum Anzeigen von Tunneldetails auf den Namen eines Tunnels.

  4. Klicken Sie unter Logs für Cloud Logging-Logs auf Ansehen.

  5. Sie können auch die mit diesem Tunnel verknüpfte BGP-Sitzung ändern.

gcloud

Es sind zwei Schritte notwendig, um den Status des Tunnels aufzurufen. Identifizieren Sie zuerst den Tunnelnamen und die Tunnelregion und verwenden Sie dann die Befehlsoption describe, um die Details zum Tunnel aufzurufen.

Ersetzen Sie in den aufgeführten Befehlen Folgendes:

  • PROJECT_ID: die Projekt-ID
  • GW_NAME: der Name des Gateways
  • REGION: die Region, in der sich das Gateway oder der Tunnel befindet
  • NAME: der Name des Tunnels

Führen Sie die folgenden Schritte aus, um den Tunnelstatus aufzurufen:

  1. Bestimmen Sie den Namen und die Region des VPN-Tunnels, dessen Status Sie prüfen müssen. Sie können den Tunnel mit einer der folgenden Methoden ermitteln:

    1. Option 1: Geben Sie den folgenden Befehl ein, um alle VPN-Tunnel in Ihrem Projekt aufzulisten:

      gcloud compute vpn-tunnels list
        --project=PROJECT_ID
      

      Die Befehlsausgabe sollte in etwa wie das folgende Beispiel aussehen:

      NAME                REGION       GATEWAY      VPN_INTERFACE  PEER_ADDRESS
      tunnel-a-to-b-if-0  us-central1  ha-vpn-gw-a  0              10.242.123.165
      tunnel-a-to-b-if-1  us-central1  ha-vpn-gw-a  1              10.220.75.213
      tunnel-b-to-a-if-0  us-central1  ha-vpn-gw-b  0              10.242.127.148
      tunnel-b-to-a-if-1  us-central1  ha-vpn-gw-b  1              10.220.66.156
      
    2. Option 2: Wenn Sie den Namen des VPN-Gateways kennen, das den Tunnel enthält, führen Sie den folgenden Befehl aus, um die Liste der dem Gateway zugeordneten Tunnel abzurufen:

      gcloud compute vpn-gateways describe GW_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(tunnels)'
      
  2. Sobald Sie den Namen und die Region des Tunnels kennen, verwenden Sie die Option describe des Befehls vpn-tunnels, um den Status des Tunnels zu ermitteln:

    gcloud compute vpn-tunnels describe NAME \
       --region=REGION \
       --project=PROJECT_ID \
       --format='flattened(status,detailedStatus)'
    

    Es werden die grundlegende Statusmeldung und eine detailliertere Nachricht zurückgegeben: Die Befehlsausgabe sollte in etwa wie das folgende Beispiel aussehen. Für eine vollständige Auflistung können Sie die Option --format weglassen.

    detailedStatus: Tunnel is up and running.
    

    Die folgenden vier Befehlsausgabebeispiele zeigen eine vollständige Auflistung für ein Tunnelpaar auf zwei miteinander verbundenen HA VPN-Gateways. Das heißt, bei ha-vpn-gw-a sind die Tunnel auf interface 0 und interface 1 mit Tunneln auf den entsprechenden Schnittstellen von ha-vpn-gw-b verbunden.

    Beispiel 1: tunnel-a-to-b-if-0

     creationTimestamp: '2018-10-11T13:12:33.851-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '2919847494518181982'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-a-to-b-if-0
     peerIp: GW_A_IF_0_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a
     vpnGatewayInterface: 0
    

    Beispiel 2: tunnel-a-to-b-if-1

     creationTimestamp: '2018-10-11T13:14:21.630-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '178016642781024754'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     —0.0.0.0/0
     name: tunnel-a-to-b-if-1
     peerIp: GW_B_IF_1_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a
     vpnGatewayInterface: 1
    

    Beispiel 3: tunnel-b-to-a-if-0

     creationTimestamp: '2018-10-11T13:16:19.345-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '1183416925692236156'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-b-to-a-if-0
     peerIp: GW_A_IF_0_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-b
     vpnGatewayInterface: 0
    

    Beispiel 4: tunnel-b-to-a-if-1

     creationTimestamp: '2018-10-11T13:19:01.562-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '8199247227773914842'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-b-to-a-if-1
     peerIp: GW_A_IF_1_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-b
     vpnGatewayInterface: 1
    

API

Zum Ansehen der Tunneldetails können Sie einen der folgenden API-Aufrufe verwenden:

  • Wenn Sie die Attribute und den Status aller VPN-Tunnel in einem bestimmten Projekt und einer bestimmten Region auflisten möchten, senden Sie eine GET-Anfrage mit der Methode vpnTunnels.list:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels
    
  • Wenn Sie die Attribute und den Status eines bestimmten Tunnels in einem bestimmten Projekt und einer bestimmten Region auflisten möchten, senden Sie eine GET-Anfrage mit der Methode vpnTunnels.get:

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

Klassische VPN-Tunnel prüfen

Mit diesem Verfahren können Sie den Status von Tunneln auf einem klassischen VPN-Gateway prüfen.

Console

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

    Zu VPN

  2. Rufen Sie den VPN-Tunnelstatus und den BGP-Sitzungsstatus auf.

  3. Klicken Sie zum Anzeigen von Tunneldetails auf den Namen eines Tunnels.

  4. Klicken Sie unter Logs für Logging-Logs auf Ansehen.

  5. Sie können auch die mit diesem Tunnel verknüpfte BGP-Sitzung ändern.

gcloud

Der Status des klassischen VPN-Tunnels wird ähnlich wie bei HA VPN geprüft.

Ersetzen Sie in den aufgeführten Befehlen Folgendes:

  • PROJECT_ID: die Projekt-ID
  • GW_NAME: der Name des Gateways
  • REGION: die Region, in der sich das Gateway oder der Tunnel befindet
  • NAME: der Name des Tunnels

Führen Sie die folgenden Schritte aus, um den Tunnelstatus aufzurufen:

  1. Bestimmen Sie den Namen und die Region des VPN-Tunnels, dessen Status Sie prüfen müssen. Sie können den Tunnel mit einer der folgenden Methoden ermitteln:

    1. Option 1: Geben Sie den folgenden Befehl ein, um alle VPN-Tunnel in Ihrem Projekt aufzulisten:

      gcloud compute vpn-tunnels list
        --project=PROJECT_ID
      
    2. Option 2: Wenn Sie den Namen des VPN-Gateways kennen, das den Tunnel enthält, führen Sie den folgenden Befehl aus, um die Liste der dem Gateway zugeordneten Tunnel abzurufen:

      gcloud compute target-vpn-gateways describe GW_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(tunnels)'
      
  2. Beschreiben Sie den Tunnel, um seinen Status zu ermitteln. Führen Sie dazu den folgenden Befehl aus. Es werden die grundlegende Statusmeldung und eine detailliertere Nachricht zurückgegeben: Für eine vollständige Auflistung können Sie die Option --format weglassen.

    gcloud compute vpn-tunnels describe NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(status,detailedStatus)'
    

API

Zum Ansehen der Tunneldetails können Sie einen der folgenden API-Aufrufe verwenden:

  • Wenn Sie die Attribute und den Status aller VPN-Tunnel in einem bestimmten Projekt und einer bestimmten Region auflisten möchten, senden Sie eine GET-Anfrage mit der Methode vpnTunnels.list:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels
    
  • Wenn Sie die Attribute und den Status eines bestimmten Tunnels in einem bestimmten Projekt und einer bestimmten Region auflisten möchten, senden Sie eine GET-Anfrage mit der Methode vpnTunnels.get:

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

Klassische VPN-Weiterleitungsregeln prüfen

Mit diesem Verfahren können Sie die Weiterleitungsregeln prüfen, die Sie für Ihr klassisches VPN-Gateway erstellt haben.

Console

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

    Zu VPN

  2. Klicken Sie auf einen Gateway-Namen.

  3. Auf der Seite VPN-Details werden die von Ihnen erstellten Weiterleitungsregeln aufgelistet.

gcloud

Führen Sie den folgenden Befehl aus, um die Weiterleitungsregeln für ein klassisches VPN-Gateway in einer bestimmten Region aufzurufen:

gcloud compute target-vpn-gateways describe GW_NAME
    --region=REGION \
    --project=PROJECT_ID

API

Verwenden Sie die Methode targetVpnGateways.get, um die Weiterleitungsregeln für ein klassisches VPN-Gateway in einer bestimmten Region aufzurufen. Ersetzen Sie RESOURCE_ID durch den Namen des Gateways.

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

Nachrichten zum Tunnelstatus interpretieren

Verwenden Sie die folgende Tabelle, um Mitteilungen zum Tunnelstatus von der Google Cloud Console oder der Google Cloud CLI zu interpretieren.

Status Detaillierte Statusmeldung Hinweise
Ressourcen werden zugewiesen Ressourcen werden zugewiesen. Der VPN-Tunnel wird demnächst gestartet. Der Ausgangszustand für einen neu erstellten Cloud VPN-Tunnel.
Warten auf vollständige Konfiguration Warten auf die Routenkonfiguration. Routen oder Routingkonfiguration werden vorbereitet.
Erster Handshake Handshake mit Peer aus unbekanntem Grund unterbrochen. Wird noch einmal versucht. Phase 1-Verhandlung (IKE SA) mit dem Peer-VPN erfolgt. Kann mindestens einmal gescheitert sein.
Etabliert Tunnel ist aktiv. Der Tunnel ist geöffnet und Routen wurden konfiguriert.
Keine eingehenden Pakete Keine eingehenden Pakete von Peer. Es wird kein Traffic vom Peer-VPN-Gateway empfangen.

Hochverfügbarkeitsstatus für HA VPN-Gateways prüfen

Verwenden Sie die Google Cloud Console, den Befehl compute vpn-gateways get-status oder die Methode vpnGateways.getStatus, um den Hochverfügbarkeits-Konfigurationsstatus für Tunnel auf einem HA VPN-Gateway zu prüfen.

Die Ausgabe zeigt den Hochverfügbarkeits-Redundanzanforderungsstatus für VPN-Tunnel an, die jedem Peer-Gateway zugeordnet sind, mit dem das HA VPN-Gateway verbunden ist.

Das Peer-Gateway kann ein anderes HA VPN-Gateway oder ein externes VPN-Gateway sein. Wenn mehrere Peer-Gateways mit dem HA VPN-Gateway verbunden sind, werden mehrere Konfigurationsstatus der Hochverfügbarkeit angezeigt (ein Status pro Peer-Gateway).

Die Befehlsausgabe gibt die richtige Tunnelmenge und -abdeckung auf folgende Weise an:

  • VPN-Gateways, die mit angemessener Redundanz (Abdeckung) konfiguriert sind, haben den Status:
    HighAvailabilityRedundancyRequirementState: CONNECTION_REDUNDANCY_MET.
  • VPN-Gateways, die nicht mit angemessener Redundanz konfiguriert sind, haben den Status:
    HighAvailabilityRedundancyRequirementState: CONNECTION_REDUNDANCY_NOT_MET.
  • Wenn nicht genügend Tunnel zwischen Ihrem HA VPN-Gateway und einem anderen HA VPN-Gateway oder einem Peer-Gateway konfiguriert sind, wird in der Befehlsausgabe folgender Status angezeigt:
    redundancyUnsatisfiedReason: INCOMPLETE_TUNNELS_COVERAGE.

Weitere Informationen finden Sie unter Logs und Messwerte anzeigen.

Console

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

    Zu VPN

  2. Klicken Sie auf Gateway-Name, um Gateway-Details für das Gateway und seine Tunnel aufzurufen. Bei HA VPN-Gateways können Sie auch den Hochverfügbarkeitsstatus für das Gateway aufrufen.

gcloud

Führen Sie den folgenden Befehl aus, um den Tunnelstatus für das HA VPN-Gateway aufzurufen. Dabei gilt:

  • GW_NAME: der Name des HA VPN-Gateways
  • REGION: die Region, in der sich das Gateway befindet.
gcloud compute vpn-gateways get-status GW_NAME \
    --region=REGION

Das folgende Beispiel für eine Befehlsausgabe zeigt Informationen für ein HA VPN-Gateway, das mit einem Peer-Gateway mit zwei Schnittstellen verbunden ist:

  peerGateways:
  — peerExternalGateway: peer-gw
  tunnels:
  — localGatewayInterface: 0
    peerGatewayInterface: 0
    tunnelUrl:
    https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
    regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-0
  — localGatewayInterface: 1
    peerGatewayInterface:1
    tunnelUrl:
    https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
    regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-1
    HighAvailabilityRedundancyRequirementState:
      state: CONNECTION_REDUNDANCY_MET

Das folgende Beispiel für eine Befehlsausgabe bezieht sich auf zwei HA VPN-Gateways, die miteinander verbunden sind. Führen Sie bei dieser Art von Konfiguration den Befehl für jeden HA VPN-Gateway-Namen aus.

  • Der abgerufene Status für ha-vpn-gw-a zeigt die Verbindung zu ha-vpn-gw-b an:

    peerGateways:
    — peerGcpGateway: ha-vpn-gw-b
    tunnels:
    — localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0
    — localGatewayInterface: 1
      peerGatewayInterface: 1
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_MET
    
  • Der abgerufene Status für ha-vpn-gw-b zeigt die Verbindung zu ha-vpn-gw-a an:

    peerGateways:
    — peerGcpGateway: ha-vpn-gw-a
    tunnels:
    — localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
    — localGatewayInterface: 1
      peerGatewayInterface: 1
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_MET
    

Das folgende Beispiel für eine Befehlsausgabe bezieht sich auf ein HA VPN-Gateway, das mit einem virtuellen AWS-Gateway mit zwei Verbindungen und vier IP-Adressen verbunden ist:

  peerGateways:
  - peerExternalGateway: peer-gw
  tunnels:
   - localGatewayInterface: 0
     peerGatewayInterface: 0
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-0-ip0
   - localGatewayInterface: 0
     peerGatewayInterface: 1
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-0-ip1
   - localGatewayInterface: 1
     peerGatewayInterface: 2
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-1-ip0
   - localGatewayInterface: 1
     peerGatewayInterface: 3
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-1-ip1
     HighAvailabilityRedundancyRequirementState:
       state: CONNECTION_REDUNDANCY_MET

Das folgende Beispiel für eine Befehlsausgabe bezieht sich auf zwei HA VPN-Gateways, die über einen einzelnen Tunnel miteinander verbunden sind. Diese Konfiguration erfüllt nicht die SLA für eine Verfügbarkeit von 99,99 %:

  peerGateways:
    - peerGcpGateway: ha-vpn-gw-a
    tunnels:
    - localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_NOT_MET
      detailedStatus:
        redundancyUnsatisfiedReason: INCOMPLETE_TUNNELS_COVERAGE

API

Führen Sie die Methode vpnGateways.getStatus aus, um eine GET-Anfrage zu senden und den Status eines bestimmten HA VPN-Gateways in einem bestimmten Projekt und einer bestimmten Region aufzurufen:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnGateways/GATEWAY_NAME/getStatus

BGP-Status prüfen

Bei Tunneln, die dynamisches Routing mit BGP verwenden, können Sie den Cloud Router-Status prüfen, um Details wie den Status der BGP-Sitzungen eines Routers oder die vom Cloud Router beworbenen Routen einzusehen.

Nächste Schritte

  • Unter Erweiterte Konfigurationen finden Sie Szenarien mit Hochverfügbarkeit und hohem Durchsatz bzw. Szenarien mit mehreren Subnetzen.
  • Informationen zur Behebung häufiger Probleme bei der Verwendung von Cloud VPN finden Sie unter Fehlerbehebung.