Nota

Massimizza la larghezza di banda di IPSec utilizzando Oracle Interconnect for Microsoft Azure

Introduzione

La crittografia è importante e questo tutorial vi mostrerà come abilitare la crittografia nelle nostre regioni interconnesse che abbiamo con Microsoft Azure in tutto il mondo.

Questa interconnessione ridondante si basa su circuiti virtuali privati, che sono a bassa latenza di rete prevedibile su una connessione privata con ExpressRoute da Microsoft Azure e FastConnect dal lato di Oracle Cloud Infrastructure (OCI). Questi circuiti virtuali privati non vengono cifrati per impostazione predefinita.

Questa esercitazione utilizzerà Oracle Interconnect for Microsoft Azure (Oracle Interconnect for Azure), aggiungerà crittografia dai tunnel IPSec e mostrerà anche come massimizzare la larghezza di banda sui tunnel IPSec poiché questo può essere un fattore limitante per alcuni casi d'uso.

Nota: IPSec in cima a OCI FastConnect non è limitato a questa Oracle Interconnect for Azure, può essere utilizzato su qualsiasi OCI FastConnect. L'abbiamo utilizzato solo per questo tutorial.

Obiettivi

Crea tunnel crittografati tramite l'interconnessione Microsoft Azure/OCI per convalidare la possibile larghezza di banda della rete su tunnel IPSec combinati. Per individuare la posizione in cui è possibile eseguire questa operazione, vedere Interconnessione per Azure.

Tali connessioni si basano su Microsoft Azure ExpressRoute e OCI FastConnect. Quando creano queste interconnessioni, utilizzano un circuito virtuale privato che è accettabile per la maggior parte dei clienti nella maggior parte dei casi, ma alcuni clienti richiedono la crittografia sui collegamenti di rete e questo tutorial è per quelli.

Creeremo 8 tunnel IPSec su un circuito virtuale per utilizzare la larghezza di banda completa sulla connessione cifrata poiché i tunnel IPSec potrebbero non raggiungere la stessa larghezza di banda per tunnel del circuito virtuale sottostante.

Questa opzione con traffico cifrato su un circuito virtuale privato dedicato può essere applicata anche alla nostra interconnessione a Google Cloud e alle connessioni FastConnect tra on-premise e OCI, ma la configurazione varierà.

Progettazione di reti logiche

Esistono opzioni per consentire solo il traffico cifrato IPSec sulla connessione o consentire sia il traffico non cifrato che quello cifrato sullo stesso circuito virtuale. In questo tutorial, consentiremo sia sull'interconnessione, ma consentiremo solo al traffico cifrato di raggiungere VCN1 e al traffico non cifrato di raggiungere VCN2 in OCI, sia dall'origine in Microsoft Azure.

Nelle implementazioni del mondo reale, l'opzione per consentire solo il traffico IPSec su un circuito virtuale potrebbe essere più appropriata per i clienti che hanno requisiti rigorosi per consentire solo il traffico crittografato.

Progettazione di reti logiche

Larghezza di banda con IPSec

I tunnel IPSec crittografano e decifrano il traffico il più velocemente possibile, ma sono vincolati a crittografare i protocolli degli algoritmi supportati dai due endpoint che costruiscono i tunnel ed è necessario che i cicli della CPU crittografino/decifrino, il che a sua volta limiterà la quantità di traffico che può passare il tunnel al secondo. Per superare questo limite per tunnel, è possibile creare diversi tunnel e fare uso di Equal Cost Multi-Pathing (ECMP), che può instradare i pacchetti su diversi tunnel se entrambe le estremità supportano ECMP.

Nota: un singolo flusso di rete utilizzerà un solo tunnel. Per utilizzare ECMP è necessario distribuire il carico a diversi endpoint/porte, che normalmente è il caso nel mondo reale. Diversi endpoint su un lato si connettono a diversi endpoint sull'altro lato.

ECMP abilitato sul traffico IPSEC

Impostazione di rete dettagliata

L'immagine seguente mostra l'impostazione della rete sia in Microsoft Azure che in OCI. Il lato Microsoft Azure è costituito da una normale configurazione hub / spoke in cui i gateway di rete si trovano nell'hub vNet ed è sottoposto a peering con spoke vNET (qui chiamato azure-vNET) che fungono da fonte durante l'esecuzione di questi test. Sul lato OCI, l'impostazione con IPSec su OCI FastConnect richiede la creazione di tabelle di instradamento separate per il circuito virtuale e il collegamento IPSec.

Configurazione di rete dettagliata

Flusso di traffico

Per consentire solo il traffico cifrato tra Microsoft Azure vNET e VCN1 e consentire il traffico non cifrato a VCN2, in OCI sono disponibili tabelle di instradamento separate per VCN1 e VCN2 e:

Il flusso di traffico è mostrato nell'immagine seguente.

Impostazione di rete dettagliata incluso il flusso di traffico di rete

Prerequisiti

Task 1: Preparazione

Ecco alcune informazioni che è bene sapere quando si esegue la configurazione della preparazione.

Gateway ExpressRoute di Microsoft Azure

Abbiamo utilizzato SKU a prestazioni ultra poiché volevamo abilitare FastPath per ridurre al minimo la latenza di rete tra Microsoft Azure e OCI e avevamo bisogno di avere una larghezza di banda di almeno 5Gbps. Per informazioni sulle differenze tra SKU dei gateway ExpressRoute, vedere https://learn.microsoft.com/en-us/azure/expressroute/expressroute-about-virtual-network-gateways.

Gateway VPN di Microsoft Azure

Abbiamo scelto un gateway VPN SKU in grado di gestire il traffico che intendiamo attraversare. VpnGw4 supporta il throughput 5Gbps e il circuito virtuale di interconnessione che distribuiremo è anche 5Gbps. Per ulteriori informazioni, vedere Informazioni sulle SKU del gateway VPN. Quando si tratta di gateway VPN, una cosa importante è abilitare l'IP privato. Non è stato possibile abilitare l'IP privato durante la distribuzione dal portale Microsoft Azure, quindi era necessario creare prima il gateway VPN con l'IP pubblico e quindi abilitare gli IP privati dopo la distribuzione.

Abilita IP privato in VNG per VPN

In OCI, gli allegati VCN1 e VCN2 devono utilizzare tabelle di instradamento diverse.

L'installazione in questa fase deve essere come di seguito.

Punto di inizio

Task 2: Creazione tabelle di instradamento e Importazione distribuzioni instradamento

Creare queste tabelle di instradamento e importare le distribuzioni di instradamento. Tenerli tutti vuoti.

  1. Vai alla console OCI, vai a Networking, Connettività cliente, gateway di instradamento dinamico, DRG e fai clic sul tuo DRG.

  2. Creare le seguenti tabelle di instradamento e importare le distribuzioni di instradamento.

    • tabella di instradamento VCN1.
    • tabella di instradamento VCN2.
    • Tabella di instradamento del circuito virtuale.
    • Tabella di instradamento IPSec.
    • VCN1 instradamenti di importazione.
    • VCN2 instradamenti di importazione.
    • Instradamenti di importazione del circuito virtuale.
    • IPSec instradamenti di importazione.

    Lasciare vuote tutte le tabelle di instradamento e importare le distribuzioni di instradamento.

Task 3: Assegna correzioni distribuzione instradamento importazione a ogni tabella di instradamento

Fare clic su ciascuno dei nomi delle tabelle di instradamento, Modifica, selezionare Abilita importazione distribuzione instradamento, quindi fare clic sul menu a discesa per selezionare la distribuzione instradamento importazione corretta. Per VCN1, abilitiamo anche ECMP.

Mapping

Dopo la modifica, l'assegnazione dovrebbe essere simile alla seguente:

Assegnazione

Task 4: Crea Oracle Interconnect per Azure

Seguire questa documentazione: Impostazione di una connessione.

Un'eccezione è che la documentazione non spiega le nuove funzionalità per consentire solo il traffico IPSec o consentire tutto il traffico.

Interconnessione

Poiché prevediamo di consentire sia il traffico cifrato che quello non cifrato sul circuito virtuale in questa esercitazione, è necessario scegliere Tutto il traffico, mentre il resto è lo stesso.

Task 5: Specifica tabelle di instradamento per OCI FastConnect e VCN

Poiché per impostazione predefinita è necessario utilizzare le tabelle di instradamento generate automaticamente per ogni allegato, è necessario modificarle in base a quelle create.

Nome collegamento Tavola di instradamento DRG
FastConnect Allegato VC Tabella di instradamento circuito virtuale
Allegato VCN1 Tabella di instradamento VCN1
Allegato VCN2 Tabella di instradamento VCN2

A tale scopo, è necessario modificare gli allegati. Fare clic su ciascun collegamento, Modifica e Mostra opzioni avanzate, quindi selezionare la tabella di instradamento DRG per ciascun collegamento.

Tabella di instradamento DRG per il collegamento VCN

La VCN deve essere simile alla seguente:

Collegamenti VCN - tabelle di instradamento

Il circuito virtuale dovrebbe essere così:

Collegamenti VCN - tabelle di instradamento

Task 6: Crea tunnel IPSec VPN

La connessione VPN da sito a sito OCI utilizza un indirizzo IP all'estremità remota (CPE (Customer-Premises Equipment) dal punto di vista OCI) e utilizza un indirizzo IP per tunnel all'estremità principale OCI. Per la sessione BGP (Border Gateway Protocol), dobbiamo modificare l'impostazione un po 'per utilizzare entrambi i tunnel per ciascuna delle quattro connessioni VPN che configureremo.

  1. Ottieni l'indirizzo IP privato VPN di Microsoft Azure Virtual Network Gateway (VNG).

    Per visualizzare l'IP privato per il gateway VPN sul lato Microsoft Azure, devi fare clic su Visualizza altro. Questo verrà utilizzato per terminare la VPN sul lato Microsoft Azure.

    privato IP 1

    Poi mostrerà l'indirizzo IP privato.

    privato IP 2

  2. Crea IP BGP in Microsoft Azure VNG.

    Crea un IP BGP APIPA personalizzato 4x nel gateway VPN Microsoft Azure, uno per ogni connessione VPN dal lato OCI.

    APIPA BGP

  3. Crea dispositivo CPE in OCI. Ora conosciamo l'IP CPE privato sul sito Microsoft Azure, che verrà utilizzato per tutti i tunnel VPN, creeremo una rappresentazione virtuale del dispositivo CPE in Microsoft Azure, in OCI, con l'IP privato e dovremo abilitare Consenti IPSec su FastConnect. Per abilitare questa opzione, passare a Networking, Connettività cliente e fare clic su Apparecchiature locali del cliente.

    Crea CPE

  4. Crea VPN Site-to-Site in OCI.

    Andare a Networking, Connettività cliente, VPN da sito a sito e fare clic su Crea connessione IPSec.

    Poiché abbiamo abilitato IPSec su OCI FastConnect nel CPE, saranno mostrate nuove opzioni che dobbiamo specificare.

    • IP Oracle head end (IP separato per ogni tunnel, vedere la tabella seguente per questa impostazione).
    • Circuito virtuale associato (stesso per tutti i tunnel).
    • Tabella di instradamento per il tunnel IPSec (lo stesso vale per tutti i tunnel in questo esempio).

    IPSec su impostazioni FC

    Utilizzeremo questi IP privati head end sul lato OCI durante la creazione dei tunnel IPSec.

    IP CPE Azure Nome connessione VPN Nome tunnel OCI IP privato headend OCI
      VPN1 Tunnel1 192.168.1.1
      VPN1 Tunnel2 192.168.1.2
      VPN2 Tunnel3 192.168.1.3
    10.30.0.6 VPN2 Tunnel4 192.168.1.4
      VPN3 Tunnel5 192.168.1.5
      VPN3 Tunnel6 192.168.1.6
      VPN4 Tunnel7 192.168.1.7
      VPN4 Tunnel8 192.168.1.8

    Dal lato OCI, questa è la configurazione utilizzata per l'impostazione BGP:

    Nome connessione VPN Nome tunnel IP BGP APIPA Azure OCI APIPA BGP IP
    VPN1 Tunnel1 169.254.21.5/31 169.254.21.4/31
    VPN1 Tunnel2 169.254.21.5/30 169.254.21.6/30
    VPN2 Tunnel3 169.254.21.9/31 169.254.21.8/31
    VPN2 Tunnel4 169.254.21.9/30 169.254.21.10/30
    VPN3 Tunnel5 169.254.21.13/31 169.254.21.12/31
    VPN3 Tunnel6 169.254.21.13/30 169.254.21.14/30
    VPN4 Tunnel7 169.254.21.17/31 169.254.21.16/31
    VPN4 Tunnel8 169.254.21.17/30 169.254.21.18/30

    Per stabilire una connessione VPN a Microsoft Azure, utilizzare la documentazione standard, a partire da Crea connessione IPSec e ricordare la configurazione speciale precedente per IPSec su OCI FastConnect. Per ulteriori informazioni, vedere Connessione VPN ad Azure.

    Devi farlo per tutte le 4 connessioni VPN (8 tunnel).

Task 7: Creare un gateway di rete locale (LNG) in Microsoft Azure

LNG è la rappresentazione virtuale dell'endpoint VPN in OCI. Creare 8 LNG con i parametri come mostrato nella tabella seguente.

GNL

I parametri per tutto il GNL sono riportati nella tabella. Durante la creazione del GNL, questi parametri sono stati utilizzati (abilita le impostazioni BGP).

Nome Indirizzo IP endpoint Numero ASN Indirizzo IP del peer BGP
OCI1 192.168.1.1 31.898 169.254.21.4
OCI2 192.168.1.2 31.898 169.254.21.6
OCI3 192.168.1.3 31.898 169.254.21.8
OCI4 192.168.1.4 31.898 169.254.21.10
OCI5 192.168.1.5 31.898 169.254.21.12
OCI6 192.168.1.6 31.898 169.254.21.14
OCI7 192.168.1.7 31.898 169.254.21.16
OCI8 192.168.1.8 31.898 169.254.21.18

L'immagine seguente mostra una rappresentazione visiva di ogni connessione VPN.

Rappresentazione della connessione VPN

Task 8: Creare una connessione tra vng-VPN e ogni GNL in Microsoft Azure

  1. Andare alla pagina VPN da sito a sito, fare clic su Mostra e Copia per copiare il segreto condiviso (PSK) dalla console OCI per ogni tunnel.

    Connessione VPN 2

  2. In Microsoft Azure, vai su vng-VPN e crea una connessione a ciascuno dei GNL.

    Connessione VPN 3

  3. Incollare il segreto condiviso nella console di Microsoft Azure per ogni connessione e fare clic sul menu a discesa per selezionare l'indirizzo BGP corretto, VNG e Local Network Gateway. IP BGP utilizzati nel task 6.

    Connessione VPN 4

    Dopo questo, tutte le gallerie dovrebbero salire entro un paio di minuti. Verifica in Microsoft Azure:

    Connessione VPN 5

    Verifica in OCI:

    Connessione VPN 6

Task 9: Test della connessione

È ora di vedere come funziona. Testeremo la larghezza di banda da una VM Microsoft Azure alle VM in OCI, le VM 4x vengono posizionate all'interno di una VCN che consente solo il traffico IPSec e una VM in un'altra VCN che consente il traffico non cifrato tramite Microsoft Azure ExpressRoute/OCI FastConnect.

Le VM su entrambi i lati hanno un numero di memorie centrali sufficiente per gestire questa larghezza di banda di rete. Utilizzeremo il protocollo TCP come scenario di test poiché la maggior parte delle applicazioni utilizza tale protocollo.

Comprendiamo che la latenza di rete avrà un impatto sulla larghezza di banda, ma poiché volevamo catturare la differenza tra con e senza IPSec, non sarà evidente. L'obiettivo qui non è quello di mostrare la larghezza di banda massima, è quello di capire l'impatto di avere la crittografia IPSec in cima a un'interconnessione rispetto al solo utilizzo dell'interconnessione senza crittografia.

Il motivo per cui abbiamo 4 VM sul lato OCI per il traffico IPSec è che un tunnel VPN non può saturare il circuito virtuale 5Gbps che abbiamo per l'interconnessione, quindi useremo ECMP per distribuire il traffico attraverso diversi tunnel VPN agli endpoint, ognuno dei quali ha IP e porte diversi a cui risponde. Questo è normalmente il caso anche nel mondo reale, molti endpoint di origine parlano con molti endpoint di destinazione.

Impostazione test 1

Per i test della larghezza di banda, utilizzeremo iperf3: https://iperf.fr/

Server sul lato OCI (lato ascolto):

OCI VM1_a = $ iperf3 -s -p 5201
OCI VM1_b = $ iperf3 -s -p 5202
OCI VM1_c = $ iperf3 -s -p 5203
OCI VM1_d = $ iperf3 -s -p 5204
OCI VM2   = $ iperf3 -s -p 5201

Task 9.1: testare la larghezza di banda sul circuito virtuale

Eseguire il comando seguente per eseguire il test della larghezza di banda massima sul circuito virtuale, dalla VM Microsoft Azure a OCI VM2.

$ iperf3 -c <OCIVM2 IP> -p 5201
Summary output:
[ ID]   Interval         Transfer     Bitrate         Retr
[  6]   0.00-10.00  sec  6.13 GBytes  5.27 Gbits/sec  336296  sender
[  6]   0.00-10.04  sec  6.12 GBytes  5.24 Gbits/sec          receiver

Possiamo vedere che abbiamo utilizzato la larghezza di banda 5Gbps per il circuito virtuale, raggiungendo 5.24Gbps.

Test 9.2: testare la larghezza di banda combinata IPSec utilizzando ECMP

Eseguire il comando seguente per eseguire il test della larghezza di banda massima sui tunnel IPSec, dalla VM Microsoft Azure alle VM 4x su OCI allo stesso tempo.

$ iperf3 -c <OCIVM1_a IP> -p 5201 & iperf3 -c <OCIVM1_b IP> -p 5202 &
iperf3 -c <OCIVM1_c IP> -p 5203 & iperf3 -c <OCIVM1_d IP> -p 5204 &

Questa è una delle prove che abbiamo fatto.

[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.81 GBytes  1.56 Gbits/sec  4018   sender
[  5]   0.00-10.04  sec  1.81 GBytes  1.55 Gbits/sec         receiver

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.24 GBytes  1.07 Gbits/sec  32114  sender
[  5]   0.00-10.04  sec  1.24 GBytes  1.06 Gbits/sec         receiver

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.08 GBytes   931 Mbits/sec  1016   sender
[  5]   0.00-10.04  sec  1.08 GBytes   921 Mbits/sec         receiver

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.78 GBytes  1.53 Gbits/sec  63713  sender
[  5]   0.00-10.04  sec  1.78 GBytes  1.52 Gbits/sec         receiver

Il riepilogo delle esecuzioni di questo test è 5.05Gbps (1,55 + 1,06 + 0,92 + 1,52). Se prendiamo una media durante le esecuzioni dei test abbiamo ottenuto 4.51Gbps.

Risultato larghezza di banda 1

Quindi possiamo utilizzare quasi tutta la larghezza di banda della rete con la cifratura IPsec su un circuito virtuale OCI FastConnect.

Task 9.3: testare la larghezza di banda utilizzando un tunnel IPSec

Ci sono casi in cui l'ECMP non può essere utilizzato (non supportato su altre estremità), quindi abbiamo misurato quale larghezza di banda possiamo ottenere da un solo tunnel IPSec. Da una VM su Microsoft Azure a una VM su OCI.

Ecco la tabella di riepilogo che mostra una larghezza di banda di rete abbastanza buona per un tunnel crittografato IPSec.

Risultato larghezza di banda 1 tunnel

Ora abbiamo dimostrato che il cliente che desidera cifrare il traffico di rete su un collegamento FastConnect OCI utilizzando la cifratura IPSec può utilizzare diversi tunnel VPN e aumentare la larghezza di banda totale per il traffico IPSec oltre un solo tunnel VPN, ottenendo quasi la stessa larghezza di banda totale del circuito virtuale sottostante.

Conferme

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Oracle Learning Explorer.

Per la documentazione del prodotto, visitare Oracle Help Center.