VPN-BGP-Sitzung erstellen

Auf dieser Seite werden die Spezifikationen beschrieben, die für eine VPN-BGP-Sitzung (Border Gateway Protocol) gelten müssen, und es wird erläutert, wie Sie eine VPN-BGP-Sitzung erstellen.

GDC-VPN mit Air Gap unterstützt dynamisches Routing über eine IPv4-BGP-Sitzung für jeden VPN-Tunnel. Über die BGP-Sitzung können die BGP-Peers im Remote-Netzwerk und in der GDC-Organisation Routen gegenseitig bewerben.

Hinweise

Zum Erstellen einer VPN-BGP-Sitzung benötigen Sie die erforderlichen Identitäts- und Zugriffsrollen:

  • VPN-Administrator: Hat Lese- und Schreibberechtigungen für alle VPN-bezogenen Ressourcen. Bitten Sie Ihren IAM-Administrator der Organisation, Ihnen die Rolle „VPN-Administrator“ (vpn-admin) zuzuweisen.
  • VPN-Betrachter: Hat Leseberechtigungen für alle VPN-bezogenen Ressourcen. Bitten Sie Ihren IAM-Administrator der Organisation, Ihnen die Rolle „VPN Viewer“ (vpn-viewer) zuzuweisen.
  • Weitere Informationen finden Sie unter Rollendefinitionen.

Spezifikationen für VPN-BGP-Sitzungen

Der BGP-Peer in der Organisation unterstützt ein BGP-Keepalive-Intervall von 30 Sekunden mit einem Hold-Timer von 90 Sekunden.Für jede BGP-Sitzung müssen die IPv4-Adressen die folgenden Anforderungen erfüllen:

  • Jede BGP-IPv4-Adresse muss zum selben /30-Subnetz gehören, das in den Bereich 169.254.0.0/16 passt.
  • Jede BGP-IPv4-Adresse ist der erste oder zweite Host des Subnetzes /30. Die erste und die letzte IP-Adresse des Subnetzes sind für Netzwerk- und Broadcastadressen reserviert.
  • Jeder BGP-Adressbereich für jede BGP-Sitzung muss unter allen VPN-BGP-Sitzungen für die Organisation eindeutig sein.

Die MD5-Authentifizierung wird nicht unterstützt. Dies ist eine Methode zur Überprüfung der Integrität und Authentizität von Daten mithilfe des MD5-Hashing-Algorithmus.

VPN-BGP-Sitzung erstellen

So erstellen Sie eine BGP-Sitzung für den VPN-Tunnel:

  1. Erstellen Sie im Administratorcluster der Organisation im Plattform-Namespace ein VPNBGPPeer-Objekt:

    kubectl --kubeconfig MANAGEMENT_API_SERVER create -n platform -f - <<EOF
    apiVersion: networking.gdc.goog/v1
    kind: VPNBGPPeer
    metadata:
      name: VPN_BGP_PEER_NAME
    spec:
      remote:
        name: REMOTE_PEER_NAME
        ip: REMOTE_PEER_IP
        asn: REMOTE_PEER_ASN
      local:
        name: LOCAL_PEER_NAME
        ip: LOCAL_PEER_IP
        asn: LOCAL_PEER_ASN
    EOF
    

    Ersetzen Sie Folgendes:

    • MANAGEMENT_API_SERVER: Der kubeconfig-Pfad des zonalen API-Servers. Wenn Sie noch keine kubeconfig-Datei für den API-Server in Ihrer Zielzone generiert haben, lesen Sie die Informationen unter Anmelden.
    • VPN_BGP_PEER_NAME: der Name des VPN-BGP-Peers.
    • REMOTE_PEER_NAME: Der Name für den BGP-Peer im Remote-Netzwerk.
    • REMOTE_PEER_IP: die BGP-IPv4-Adresse aus dem /30-Subnetz des BGP-Peers im Remote-Netzwerk.
    • REMOTE_PEER_ASN: Die für das Remote-Netzwerk konfigurierte ASN (Autonomous System Number).
    • LOCAL_PEER_NAME: Ein Name für den BGP-Peer in der GDC-Organisation.
    • LOCAL_PEER_IP: die BGP-IPv4-Adresse aus dem /30-Subnetz des BGP-Peers in der GDC-Organisation.
    • LOCAL_PEER_ASN: Die für die GDC-Organisation konfigurierte ASN.
  2. Prüfen Sie, ob das VPN_BGP_PEER_NAME-Objekt korrekt abgeglichen wurde, indem Sie das Feld Status untersuchen. Rufen Sie die Details des VPNBGPPeer-Objekts ab:

    kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpnbgppeer VPN_BGP_PEER_NAME
    

    Die Ausgabe sollte in etwa so aussehen:

      Status:
        Conditions:
          Last Transition Time:  2024-05-10T00:26:13Z
          Message:               Ready
          Observed Generation:   1
          Reason:                Ready
          Status:                True
          Type:                  ValidIPs
          Last Transition Time:  2024-05-10T00:26:00Z
          Message:               Used by 0 VPNTunnels, must be used by a single VPNTunnel
          Observed Generation:   1
          Reason:                GetResourceFailed
          Status:                False
          Type:                  TunnelsAttached
          Last Transition Time:  2024-05-10T00:26:00Z
          Message:               TunnelsAttached or ValidIPs Condition not Ready.
          Observed Generation:   1
          Reason:                Unknown
          Status:                False
          Type:                  Reconciled
          Last Transition Time:  2024-05-10T00:26:01Z
          Message:               ValidIPs or Reconciled Condition not Ready.
          Observed Generation:   1
          Reason:                Unknown
          Status:                False
          Type:                  AdvertisedRoutesReady
          Last Transition Time:  2024-05-10T00:26:13Z
          Message:               Ready
          Observed Generation:   1
          Reason:                Ready
          Status:                True
          Type:                  ReceivedRoutesValid
          Last Transition Time:  2024-05-10T00:26:01Z
          Message:               TunnelsAttached Condition not Ready.
          Observed Generation:   1
          Reason:                Unknown
          Status:                False
          Type:                  ReceivedRoutesReady
          Last Transition Time:  2024-05-10T00:26:01Z
          Message:               Condition "TunnelsAttached" is not ready.
          Observed Generation:   1
          Reason:                NotReady
          Status:                False
          Type:                  Ready
      ```
    

Der VPNBGPPeer muss an einen VPNTunnel angehängt werden. Dieser Schritt wird unter VPN-Tunnel erstellen behandelt.

Nächste Schritte