Observação:

Maximize a largura de banda IPSec usando o Oracle Interconnect for Microsoft Azure

Introdução

A criptografia é importante e este tutorial mostrará como ativar a criptografia em nossas regiões interconectadas que temos com o Microsoft Azure em todo o mundo.

Essa interconexão redundante é baseada em circuitos virtuais privados, que são baixa latência de rede previsível em uma conexão privada com ExpressRoute do Microsoft Azure e FastConnect do lado da Oracle Cloud Infrastructure (OCI). Esses circuitos virtuais privados não são criptografados por padrão.

Este tutorial usará o Oracle Interconnect for Microsoft Azure (Oracle Interconnect for Azure), adicionando criptografia de túneis IPSec e também mostrará como maximizar a largura de banda nos túneis IPSec, pois isso pode ser um fator de limitação para alguns casos de uso.

Observação: IPSec no topo do OCI FastConnect não se limita a este Oracle Interconnect for Azure, ele pode ser usado em qualquer OCI FastConnect. Acabamos de usá-lo para este tutorial.

Objetivos

Crie túneis criptografados pela interconexão do Microsoft Azure/OCI para validar uma possível largura de banda de rede em túneis IPSec combinados. Para localizar o local em que isso é possível, consulte Interconexão para Azure.

Essas conexões são baseadas no Microsoft Azure ExpressRoute e no OCI FastConnect. Ao criar essas interconexões, elas estão usando um circuito virtual privado que é aceitável para a maioria dos clientes na maioria dos casos, mas alguns clientes exigem criptografia nos links de rede, e este tutorial é para esses.

Criaremos 8 túneis IPSec em um circuito virtual para utilizar toda a largura de banda na conexão criptografada, pois os túneis IPSec podem não atingir a mesma largura de banda por túnel que o circuito virtual subjacente.

Essa opção com tráfego criptografado em um circuito virtual privado dedicado também pode ser aplicada à nossa interconexão com o Google Cloud e às conexões FastConnect entre o local e a OCI, mas a configuração variará.

Design de Rede Lógica

Há opções para permitir apenas tráfego criptografado IPSec na conexão ou permitir tráfego criptografado e não criptografado no mesmo circuito virtual. Neste tutorial, vamos permitir que ambos na interconexão, mas só o tráfego criptografado chegue a VCN1 e o tráfego não criptografado chegue a VCN2 na OCI, ambos da origem no Microsoft Azure.

Em implementações do mundo real, a opção de permitir apenas tráfego IPSec em um circuito virtual pode ser mais apropriada para clientes que tenham requisitos rígidos para permitir apenas tráfego criptografado.

Design de Rede Lógica

Largura de banda com IPSec

Os túneis IPSec criptografam e decriptografam o tráfego o mais rápido possível, mas estão vinculados a protocolos de algoritmos de criptografia suportados pelos dois pontos finais que compilam os túneis e são necessários ciclos de CPU para criptografar/descriptografar, o que, por sua vez, limitará a quantidade de tráfego que pode passar pelo túnel por segundo. Para superar este limite por túnel, é possível criar vários túneis e fazer uso de Equal Cost Multi-Pathing (ECMP), que pode rotear pacotes sobre vários túneis se ambas as extremidades suportarem ECMP.

Observação: Um único fluxo de rede usará apenas um túnel. Para usar o ECMP, você precisa distribuir a carga para diferentes endpoints/portas, o que normalmente é o caso no mundo real. Vários endpoints de um lado se conectam a vários endpoints do outro lado.

ECMP Ativado no tráfego IPSEC

Configuração Detalhada da Rede

A imagem a seguir mostra a configuração de rede no Microsoft Azure e na OCI. O lado do Microsoft Azure consiste em uma configuração normal de hub/spoke em que os gateways de rede estão localizados no hub vNet e são pareados com vNET spoke (aqui chamado azure-vNET) que atuam como fonte ao fazer esses testes. No OCI, a configuração com IPSec no OCI FastConnect exige que criemos tabelas de roteamento separadas para circuito virtual e anexo IPSec.

Configuração de Rede Detalhada

Fluxo de Tráfego

Para permitir apenas tráfego criptografado entre o Microsoft Azure vNET e o VCN1 e permitir tráfego não criptografado para o VCN2, temos tabelas de roteamento separadas para o VCN1 e o VCN2 no OCI e:

O fluxo de tráfego é mostrado na imagem a seguir.

Configuração de rede detalhada, incluindo fluxo de tráfego de rede

Pré-requisitos

Tarefa 1: Preparação

Aqui estão algumas informações que é bom saber ao fazer a configuração de preparação.

Gateway do Microsoft Azure ExpressRoute

Usamos SKU de ultra desempenho, pois queríamos ativar o FastPath para minimizar a latência de rede entre o Microsoft Azure e a OCI e precisávamos ter uma largura de banda de pelo menos 5Gbps. Para obter informações sobre diferenças entre SKUs de Gateways ExpressRoute, consulte https://learn.microsoft.com/en-us/azure/expressroute/expressroute-about-virtual-network-gateways.

Gateway de VPN do Microsoft Azure

Escolhemos uma SKU de gateway VPN que pode lidar com o tráfego que planejamos enviar. O VpnGw4 suporta o throughput do 5Gbps e o circuito virtual de interconexão que implantaremos também é 5Gbps. Para obter mais informações, consulte Sobre SKUs de gateway VPN. Quando se trata de gateway de VPN, uma coisa importante é ativar IP privado. Não foi possível ativar o IP privado durante a implantação no portal do Microsoft Azure, portanto, era necessário criar o Gateway de VPN com IP público primeiro e depois ativar IPs privados após a implantação.

Ativar IP privado no VNG para VPN

No OCI, os anexos VCN1 e VCN2 precisam usar diferentes tabelas de roteamento.

A instalação deve, neste estágio, ser como abaixo.

Ponto Inicial

Tarefa 2: Criar Tabelas de Roteamento e Importar Distribuições de Rota

Crie essas tabelas de roteamento e importe as distribuições de rota. Mantenha todos vazios.

  1. Vá para a Console do OCI, navegue até Networking, Conectividade do Cliente, Gateway de Roteamento Dinâmico, DRG e clique no DRG.

  2. Crie as tabelas de roteamento a seguir e importe as distribuições de rota.

    • VCN1 tabela de roteamento.
    • VCN2 tabela de roteamento.
    • Tabela de roteamento do circuito virtual.
    • Tabela de roteamento IPSec.
    • VCN1 rotas de importação.
    • VCN2 rotas de importação.
    • Rotas de importação do Circuito Virtual.
    • IPSec rotas de importação.

    Deixe todas as tabelas de roteamento e importe as distribuições de rota vazias.

Tarefa 3: Atribuir Distribuição de Rota de Importação Correta a Cada Tabela de Roteamento

Clique em cada um dos nomes da tabela de roteamento, Editar, selecione Ativar distribuição de rota de importação e clique no menu drop-down para selecionar a distribuição de rota de importação correta. Para VCN1, também ativamos o ECMP.

Mapeamento

Após a edição, a atribuição deverá ter esta aparência:

Designação

Tarefa 4: Criar o Oracle Interconnect for Azure

Siga esta documentação: Configurando uma Conexão.

Uma exceção é que a documentação não explica os novos recursos para permitir apenas tráfego IPSec ou permitir todo tráfego.

Interconexão

Como planejamos permitir tráfego criptografado e não criptografado no circuito virtual neste tutorial, precisamos escolher Todo o tráfego, o restante é o mesmo.

Tarefa 5: Especificar Tabelas de Roteamento para OCI FastConnect e VCNs

Como o padrão é usar as tabelas de roteamento geradas automaticamente para cada anexo, precisamos alterá-las para as que criamos.

Nome do Anexo Tabela DRG Route
FastConnect Anexo de Remuneração Variável Tabela de roteamento do Circuito Virtual
VCN1 anexo VCN1 tabela de roteamento
VCN2 anexo VCN2 tabela de roteamento

Para fazer isso, precisamos editar os anexos. Clique em cada um dos anexos, em Editar e em Mostrar opções avançadas. Em seguida, selecione a tabela de roteamento do DRG para cada um.

Tabela de roteamento do DRG para anexo de VCN

A VCN deverá ter esta aparência:

Anexos de VCN - tabelas de roteamento

O circuito virtual deve ter esta aparência:

Anexos de VCN - tabelas de roteamento

Tarefa 6: Criar Túneis IPSec VPN

A conexão VPN Site a Site do OCI usa um endereço IP na extremidade remota (CPE (Customer-Premises Equipment) da perspectiva do OCI) e usa um endereço IP por túnel no head-end do OCI. Para a sessão BGP (Border Gateway Protocol), precisamos ajustar um pouco a configuração para fazer uso de ambos os túneis para cada uma das quatro conexões VPN que vamos configurar.

  1. Obtenha o endereço IP privado da VPN do Microsoft Azure Virtual Network Gateway (VNG).

    Para ver o IP privado do gateway de VPN no Microsoft Azure, clique em Veja mais. Isso será usado para encerrar a VPN no Microsoft Azure.

    IP privado 1

    Em seguida, ele mostrará o endereço IP privado.

    IP privado 2

  2. Criar IP BGP no Microsoft Azure VNG.

    Crie o IP BGP APIPA personalizado 4x no gateway de VPN do Microsoft Azure, um para cada conexão VPN do OCI.

    APIPA BGP

  3. Criar dispositivo CPE no OCI. Agora que conhecemos o IP CPE privado no site do Microsoft Azure, que será usado para todos os túneis de VPN, criaremos uma representação virtual do dispositivo CPE no Microsoft Azure, na OCI, com o IP privado e precisaremos ativar a opção Permitir IPSec em FastConnect. Para ativar essa opção, vá para Networking, Customer Connectivity e clique em Customer-premises equipment.

    Criar CPE

  4. Criar uma VPN Site a Site no OCI.

    Vá para Networking, Conectividade do Cliente, VPN Site a Site e clique em Criar conexão IPSec.

    Como ativamos o IPSec pelo OCI FastConnect no CPE, haverá novas opções mostradas que precisamos especificar.

    • IP do head-end da Oracle (IP separado para cada túnel; consulte a tabela a seguir para esta configuração).
    • Circuito virtual associado (o mesmo para todos os túneis).
    • Tabela de roteamento para o túnel IPSec (o mesmo para todos os túneis neste exemplo).

    IPSec sobre definições FC

    Usaremos esses IPs privados head-end no lado da OCI ao criar túneis IPSec.

    Azure CPE IP Nome da conexão VPN Nome do túnel do OCI IP privado do OCI Headend
      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

    No OCI, esta é a configuração usada para a configuração do BGP:

    Nome da conexão VPN Nome do túnel Azure APIPA BGP IP 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

    Para estabelecer conexão de VPN com o Microsoft Azure, use a documentação padrão, começando em Criar Conexão IPSec e lembre-se da configuração especial acima para IPSec no OCI FastConnect. Para obter mais informações, consulte Conexão VPN com o Azure.

    Precisa fazer isso para todas as 4 conexões VPN (8 túneis).

Tarefa 7: Criar Gateway de Rede Local (LNG) no Microsoft Azure

GNL é a representação virtual do ponto final da VPN na OCI. Crie 8 GNL com os parâmetros mostrados na tabela a seguir.

GNL

Os parâmetros para todo o GNL são mostrados na tabela. Ao criar GNL, esses parâmetros foram usados (ativar configurações de BGP).

Nome Endereço IP do ponto final Número ASN Endereço IP do par 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

A imagem a seguir mostra uma representação visual de cada conexão VPN.

Representação da Conexão VPN

Tarefa 8: Criar Conexão entre o vng-VPN e cada GNL no Microsoft Azure

  1. Vá para a página VPN Site a Site, clique em Mostrar e Copiar para copiar o Segredo compartilhado (PSK) da console do OCI para cada túnel.

    Conexão VPN 2

  2. No Microsoft Azure, acesse vng-VPN e crie conexão com cada um dos GNL.

    Conexão VPN 3

  3. Cole o segredo compartilhado na console do Microsoft Azure para cada conexão e clique no menu drop-down para selecionar o endereço BGP, VNG e Gateway de Rede Local corretos. Os IPs BGP que usamos na Tarefa 6.

    Conexão VPN 4

    Depois disso, todos os túneis devem subir dentro de alguns minutos. Verifique no Microsoft Azure:

    Conexão VPN 5

    Verificar no OCI:

    Conexão VPN 6

Tarefa 9: Testar a Conexão

Agora é hora de ver como isso funciona. Testaremos a largura de banda de uma VM do Microsoft Azure para VMs na OCI. As VMs 4x são colocadas em uma VCN que só permite tráfego IPSec e uma VM em outra VCN que permitem tráfego não criptografado por meio do Microsoft Azure ExpressRoute/OCI FastConnect.

As VMs de ambos os lados têm núcleos suficientes para lidar com essa largura de banda de rede. Usaremos o protocolo TCP como cenário de teste, já que a maioria dos aplicativos usa esse protocolo.

Entendemos que a latência de rede afetará a largura de banda, mas como queríamos capturar a diferença entre com e sem IPSec, isso não será perceptível. O objetivo aqui não é mostrar a largura de banda máxima, é entender o impacto de ter criptografia IPSec em cima em uma interconexão em comparação com apenas usar a interconexão sem criptografia.

O motivo para ter 4 VMs no lado da OCI para o tráfego IPSec é que um túnel VPN não pode saturar o circuito virtual 5Gbps que temos para interconexão, portanto, usaremos o ECMP para distribuir o tráfego por meio de diferentes túneis VPN para seus pontos finais, aos quais cada um tem IPs e portas diferentes aos quais responde. Este é normalmente o caso no mundo real também, muitos endpoints de origem falam com muitos endpoints de destino.

Configuração de Teste 1

Para testes de largura de banda, usaremos iperf3: https://iperf.fr/

Servidor no OCI (lado da escuta):

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

Tarefa 9.1: Testar a Largura de Banda no Circuito Virtual

Execute o comando a seguir para testar a largura de banda máxima no circuito virtual, da VM do Microsoft Azure ao 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

Podemos ver que utilizamos a largura de banda 5Gbps para o circuito virtual, obtendo 5.24Gbps.

Teste 9.2: Teste a largura de banda IPSec combinada usando ECMP

Execute o comando a seguir para testar a largura de banda máxima em túneis IPSec, da VM do Microsoft Azure a VMs 4x no OCI ao mesmo 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 &

Esta é uma das provas que fizemos.

[ 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

O resumo para esta execução de teste é 5.05Gbps (1,55 + 1,06 + 0,92 + 1,52). Se obtivermos uma média nas execuções de teste, teremos 4.51Gbps.

Resultado da largura de banda 1

Assim, podemos utilizar quase toda a largura de banda da rede com criptografia IPsec em um circuito virtual OCI FastConnect.

Tarefa 9.3: Testar a Largura de Banda usando um Túnel IPSec

Há casos em que o ECMP não pode ser usado (não suportado em outra extremidade), portanto, medimos qual largura de banda podemos obter de apenas um túnel IPSec. Uma VM no Microsoft Azure para uma VM na OCI.

Aqui está a tabela de resumo mostrar uma largura de banda de rede bastante boa para um túnel criptografado IPSec.

Resultado da largura de banda 1 túnel

Agora mostramos que o cliente que gostaria de criptografar o tráfego de rede em um link do OCI FastConnect usando a criptografia IPSec pode utilizar vários túneis VPN e aumentar a largura de banda total para tráfego IPSec além de apenas um túnel VPN, obtendo quase a mesma largura de banda total do circuito virtual subjacente.

Confirmações

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal do Oracle Learning YouTube. Além disso, acesse education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.