Questa pagina descrive le specifiche a cui deve attenersi una sessione VPN Border Gateway Protocol (BGP) e come creare una sessione VPN BGP.
La VPN air-gapped Google Distributed Cloud (GDC) supporta il routing dinamico utilizzando una sessione BGP IPv4 per ogni tunnel VPN. La sessione BGP consente ai peer BGP nella rete remota e nell'organizzazione GDC di annunciare le route tra loro.
Prima di iniziare
Per creare una sessione BGP VPN, devi disporre dei ruoli di identità e accesso necessari:
- Amministratore VPN: dispone delle autorizzazioni di lettura e scrittura su tutte le risorse correlate alla VPN. Chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Amministratore VPN (
vpn-admin
). - Visualizzatore VPN: dispone di autorizzazioni di lettura su tutte le risorse correlate alla VPN. Chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Visualizzatore VPN (
vpn-viewer
). - Per ulteriori informazioni, vedi Definizioni dei ruoli.
Specifiche della sessione BGP VPN
Il peer BGP nell'organizzazione supporta un intervallo keepalive BGP di 30 secondi, con un timer di attesa di 90 secondi.Per ogni sessione BGP, gli indirizzi IPv4 devono soddisfare i seguenti requisiti:
- Ogni indirizzo IPv4 BGP deve appartenere alla stessa subnet
/30
che rientra nell'intervallo169.254.0.0/16
. - Ogni indirizzo IPv4 BGP è il primo o il secondo host della subnet
/30
. Il primo e l'ultimo indirizzo IP della subnet sono riservati agli indirizzi di rete e di broadcast. - Ogni intervallo di indirizzi BGP per ogni sessione BGP deve essere univoco tra tutte le sessioni BGP VPN per l'organizzazione.
L'autenticazione MD5 non è supportata. Si tratta di un metodo per verificare l'integrità e l'autenticità dei dati utilizzando l'algoritmo di hashing MD5.
Crea una sessione BGP VPN
Per creare una sessione BGP per il tunnel VPN:
Crea un oggetto
VPNBGPPeer
nel cluster di amministrazione dell'organizzazione nello spazio dei nomi della piattaforma: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
Sostituisci quanto segue:
MANAGEMENT_API_SERVER
: il percorso kubeconfig del server API zonale. Se non hai ancora generato un file kubeconfig per il server API nella zona di destinazione, consulta Accedi per i dettagli.VPN_BGP_PEER_NAME
: il nome del peer BGP VPN.REMOTE_PEER_NAME
: il nome del peer BGP nella rete remota.REMOTE_PEER_IP
: l'indirizzo IPv4 BGP della subnet/30
del peer BGP nella rete remota.REMOTE_PEER_ASN
: il numero di sistema autonomo (ASN) configurato per la rete remota.LOCAL_PEER_NAME
: un nome per il peer BGP nell'organizzazione GDC.LOCAL_PEER_IP
: l'indirizzo IPv4 BGP della subnet/30
del peer BGP nell'organizzazione GDC.LOCAL_PEER_ASN
: l'ASN configurato per l'organizzazione GDC.
Verifica che l'oggetto
VPN_BGP_PEER_NAME
sia stato riconciliato correttamente esaminando il campoStatus
. Visualizza i dettagli dell'oggettoVPNBGPPeer
:kubectl --kubeconfig MANAGEMENT_API_SERVER describe -n platform vpnbgppeer VPN_BGP_PEER_NAME
Esamina l'output, che deve essere simile all'esempio seguente:
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 ```
VPNBGPPeer
deve essere collegato a un VPNTunnel
. Gestiamo questo passaggio in Crea un tunnel VPN.