Neste tutorial, pressupomos que você esteja familiarizado com os conceitos básicos de redes de nuvem privada virtual (VPC), protocolo de gateway de borda (BGP), redes privadas virtuais (VPNs) e túneis de IPsec.
O Google Cloud oferece um serviço de VPN de alta disponibilidade para conectar sua rede VPC a ambientes em execução fora do Google Cloud, como no local ou na AWS por meio de uma conexão VPN IPsec. A VPN de alta disponibilidade fornece um SLA de 99,99% de disponibilidade de serviço quando configurada com base nas práticas recomendadas do Google. Para mais informações, consulte o Contrato de nível de serviço (SLA) do Cloud VPN.
Visão geral da arquitetura
A arquitetura descrita nesta página inclui os seguintes componentes:
- Cloud Router: um serviço do Google Cloud totalmente distribuído e gerenciado para fornecer roteamento dinâmico usando o BGP para suas redes VPC.
- Gateway de VPN de alta disponibilidade: um gateway de VPN gerenciado pelo Google em execução no Google Cloud. Cada gateway de VPN de alta disponibilidade é um recurso regional que tem duas interfaces, cada uma com os próprios endereços IP externos: interface 0 e 1.
- Túneis de VPN: conexões do gateway de VPN de alta disponibilidade para o gateway de VPN de peering na AWS por meio do qual o tráfego criptografado passa.
- Gateway de VPN de peering: dois endpoints de VPN site a site da AWS, que podem ser de um gateway particular virtual da AWS ou de um gateway de trânsito da AWS. Para mais informações, consulte O que é a VPN site a site da AWS?
Cada uma das conexões de gateway de VPN de peering vem com dois túneis pré-configurados para apontar para um único gateway de cliente, que, neste caso, é uma interface de VPN de alta disponibilidade do Google Cloud. Com essa configuração, o número mínimo de túneis para atender ao SLA de disponibilidade de serviço de 99,99% é quatro.
As opções de roteamento e a largura de banda combinada nos túneis de VPN variam de acordo com a opção VPN site a site usada no AWS:
Gateway de transporte público: se você criar o gateway de transporte público da AWS sem a preferência do BGP, o ECMP distribuirá o tráfego igualmente entre túneis ativos.
Para usar a conectividade VPN em várias redes de nuvem privada virtual do Google, use uma rede VPC de conectividade para escalonar uma arquitetura hub and spoke com várias redes VPC.
Para mais informações sobre os gateways de trânsito da AWS, consulte O que são os gateways de trânsito da Amazon VPC?.
Gateway particular virtual: se você usar um gateway particular virtual da AWS, apenas um túnel em todas as conexões no gateway será selecionado. Para usar mais de um túnel, use um gateway de trânsito da AWS para que o multicaminho de custo igual (ECMP) esteja disponível.
Para detalhes sobre a prioridade da rota de VPN com a AWS, consulte Opções de roteamento de VPN site a site.
Para mais informações sobre gateways privados virtuais da AWS, consulte Opções de túnel para sua conexão VPN site a site.
O diagrama a seguir mostra a arquitetura.
Objetivos
- Crie uma rede VPC no Google Cloud.
- Crie um gateway de VPN de alta disponibilidade e o Cloud Router no Google Cloud.
- Crie gateways de clientes na AWS.
- Crie uma conexão VPN com roteamento dinâmico na AWS.
- Crie um gateway de VPN externo e túneis de VPN no Google Cloud.
- Verifique e teste a conexão VPN entre as redes VPC no Google Cloud e na AWS.
Exemplo de módulo do Terraform
É possível usar o módulo gcp-to-aws-ha-vpn-terraform-module
para provisionar a VPN de alta disponibilidade entre o Google Cloud e a AWS.
Custos
Neste tutorial, há componentes faturáveis do Google Cloud, entre eles:
Para ver uma estimativa dos custos dos componentes do Google Cloud, use a calculadora de preços do Google Cloud.
Neste tutorial, há componentes faturáveis do Amazon Web Services, incluindo:
- Gateway da AWS Transit
- VPN site a site da AWS
Para ter uma estimativa dos custos dos componentes da AWS, use a calculadora de preços dessa solução.
Antes de começar
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, activate Cloud Shell.
-
Verifique se você tem os papéis administrativos necessários para configurar os componentes de rede:
- Administrador de rede:
compute.networkAdmin
- Administrador de segurança:
compute.securityAdmin
- Administrador do Compute:
compute.admin
Para mais informações sobre os objetivos desses papéis, consulte Papéis do IAM para funções de jobs relacionados a redes.
- Administrador de rede:
Criar o gateway de VPN de alta disponibilidade e o Cloud Router no Google Cloud
Nesta seção, você cria uma rede VPC, um gateway de VPN de alta disponibilidade e um Cloud Router no Google Cloud.
No Cloud Shell, verifique se você está trabalhando no projeto do Google Cloud criado ou selecionado.
gcloud config set project YOUR_PROJECT_ID export PROJECT_ID=`gcloud config list --format="value(core.project)"`
Substitua
YOUR_PROJECT_ID
pelo ID do projeto do Google Cloud.Para criar uma rede VPC personalizada com uma única sub-rede, use o comando
gcloud compute networks create
:gcloud compute networks create NETWORK \ --subnet-mode SUBNET_MODE \ --bgp-routing-mode BGP_ROUTING_MODE
Substitua:
NETWORK
: o nome da redeSUBNET_MODE
: o modo de sub-redeBGP_ROUTING_MODE
: o modo de roteamento do BGP
Por exemplo, o comando a seguir cria uma rede VPC personalizada chamada
gc-vpc
com uma única sub-rede:gcloud compute networks create gc-vpc \ --subnet-mode custom \ --bgp-routing-mode global
Para criar uma sub-rede para hospedar as VMs de teste, use o comando
gcloud compute networks subnets create
:gcloud compute networks subnets create SUBNET_NAME \ --network NETWORK \ --region SUBNET_REGION \ --range IP_ADDRESS_RANGE
Substitua:
SUBNET_NAME
: o nome da sub-redeSUBNET_REGION
: a região em que a sub-rede será criada.IP_ADDRESS_RANGE
: o intervalo de endereços IP da sub-redePor exemplo, o comando a seguir cria uma sub-rede chamada
subnet-east4
na rede VPCgc-vpc
.
gcloud compute networks subnets create subnet-east4 \ --network gc-vpc \ --region us-east4 \ --range 10.1.1.0/24
Para criar um gateway de VPN de alta disponibilidade, use o comando
gcloud compute vpn-gateways create
:gcloud compute vpn-gateways create HA_VPN_GATEWAY_NAME \ --network NETWORK \ --region REGION
Substitua
HA_VPN_GATEWAY_NAME
pelo nome do gateway de VPN de alta disponibilidade.Para criar um Cloud Router, use o comando
gcloud compute routers create
:gcloud compute routers create ROUTER_NAME \ --region REGION \ --network NETWORK \ --asn GOOGLE_ASN \ --advertisement-mode custom \ --set-advertisement-groups all_subnets
Substitua:
ROUTER_NAME
: o nome do seu Cloud Router.GOOGLE_ASN
: o ASN particular (número de sistema autônomo) do Cloud Router que você está criando. Pode ser qualquer ASN privado no intervalo64512-65534
ou4200000000-4294967294
que você ainda não esteja usando como um ASN de mesmo nível na mesma região e rede.
Por exemplo, o comando a seguir cria um Cloud Router chamado
cloud-router
.gcloud compute routers create cloud-router \ --region us-east4 \ --network gc-vpc \ --asn 65534 \ --advertisement-mode custom \ --set-advertisement-groups all_subnets
Para criar um gateway de VPN com duas interfaces, anote os endereços IP externo. Você vai precisar desses endereços ao configurar o ambiente na AWS.
Criar gateways e conexões VPN na AWS
Nesta seção, você criará gateways de clientes, um gateway de destino e conexões de VPN com roteamento dinâmico.
Você executa comandos da AWS usando a interface de linha de comando da AWS.
Para criar dois gateways de cliente usando o seguinte comando da AWS, use o comando
create-customer-gateway
AWS CLI:aws ec2 create-customer-gateway --type ipsec.1 --public-ip INTERFACE_0_IP_ADDRESS --bgp-asn GOOGLE_ASN aws ec2 create-customer-gateway --type ipsec.1 --public-ip INTERFACE_1_IP_ADDRESS --bgp-asn GOOGLE_ASN
Substitua
INTERFACE_0_IP_ADDRESS
eINTERFACE_1_IP_ADDRESS
pelos endereços IP externo da etapa final da seção anterior.Para criar um gateway de destino e anexá-lo à sua VPC da Amazon, faça o seguinte:
O gateway de destino pode ser um gateway particular virtual ou um gateway de trânsito. Para mais informações, consulte Criar um gateway de destino.
Gateway particular virtual
Crie um gateway particular virtual com um ASN específico da AWS usando o comando
create-vpn-gateway
da AWS CLI:aws ec2 create-vpn-gateway --type ipsec.1 --amazon-side-asn AWS_SIDE_ASN
Substitua
AWS_SIDE_ASN
pelo ASN do lado da AWS.Esse comando será semelhante ao exemplo a seguir:
aws ec2 create-vpn-gateway --type ipsec.1 --amazon-side-asn 65001
Anexe o gateway particular virtual à rede VPC usando o comando
attach-vpn-gateway
da AWS CLI:aws ec2 attach-vpn-gateway --vpn-gateway-id VPN_GATEWAY_ID --vpc-id VPC_ID
Gateway de transporte público
Crie um gateway de trânsito usando o comando
create-transit-gateway
da AWS CLI:aws ec2 create-transit-gateway --description TRANSIT_GATEWAY_DESCRIPTION \ --options=AmazonSideAsn=65001,AutoAcceptSharedAttachments=enable,DefaultRouteTableAssociation=enable,DefaultRouteTablePropagation=enable,VpnEcmpSupport=enable,DnsSupport=enable
Substitua
TRANSIT_GATEWAY_DESCRIPTION
por uma descrição do gateway de transporte público.Anexe a rede VPC ao gateway de trânsito usando o comando
create-transit-gateway-vpc-attachment
da AWS CLI:aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --vpc-id VPC_ID \ --subnet-ids "SUBNET_ID"
Substitua:
TRANSIT_GATEWAY_ID
: o ID do gateway de transporte públicoVPC_ID
: o ID da VPCSUBNET_ID
: os IDs de uma ou mais sub-redes.
Para criar uma conexão VPN com roteamento dinâmico, faça o seguinte:
O método para criar uma conexão VPN com roteamento dinâmico é diferente se o gateway de destino é um gateway privado virtual ou um gateway de trânsito. Para mais informações, consulte Criar uma conexão VPN.
Gateway particular virtual
Crie uma conexão VPN com roteamento dinâmico entre o gateway particular virtual e os gateways do cliente e aplique tags à conexão da VPN:
aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_1 \ --vpn-gateway-id VPN_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T1_IP,PreSharedKey=SHARED_SECRET_1},{TunnelInsideCidr=AWS_T2_IP,PreSharedKey=SHARED_SECRET_2}]' aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_2 \ --vpn-gateway-id VPN_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T3_IP,PreSharedKey=SHARED_SECRET_3},{TunnelInsideCidr=AWS_T4_IP,PreSharedKey=SHARED_SECRET_4}]'
Substitua:
CUSTOMER_GATEWAY_1
: gateway do Google Cloud VPN, interface 0CUSTOMER_GATEWAY_2
: gateway do Google Cloud VPN, interface 1AWS_T1_IP
: endereço IP interno do gateway virtual virtual para a conexão 1, túnel 1AWS_T2_IP
: endereço IP interno do gateway particular virtual da conexão 1, túnel 2AWS_T3_IP
: endereço IP interno do gateway particular virtual da conexão 2, túnel 1AWS_T4_IP
: endereço IP interno do gateway particular virtual para a conexão 2, túnel 2SHARED_SECRET_1
: chave pré-compartilhada para conexão 1, túnel 1SHARED_SECRET_2
: chave pré-compartilhada para conexão 1, túnel 2SHARED_SECRET_3
: chave pré-compartilhada para conexão 2, túnel 1SHARED_SECRET_4
: chave pré-compartilhada para conexão 2, túnel 2
Gateway de transporte público
Crie uma conexão VPN com roteamento dinâmico entre o gateway do transporte público e os gateways do cliente:
aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_1 \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T1_IP,PreSharedKey=SHARED_SECRET_1},{TunnelInsideCidr=AWS_T2_IP,PreSharedKey=SHARED_SECRET_2}]' aws ec2 create-vpn-connection \ --type ipsec.1 \ --customer-gateway-id CUSTOMER_GATEWAY_2 \ --transit-gateway-id TRANSIT_GATEWAY_ID \ --options TunnelOptions='[{TunnelInsideCidr=AWS_T3_IP,PreSharedKey=SHARED_SECRET_3},{TunnelInsideCidr=AWS_T4_IP,PreSharedKey=SHARED_SECRET_4}]'
Substitua:
CUSTOMER_GATEWAY_1
: gateway do Google Cloud VPN, interface 0CUSTOMER_GATEWAY_2
: gateway do Google Cloud VPN, interface 1TRANSIT_GATEWAY_ID
: o ID do gateway de trânsito associado à conexão VPN.AWS_T1_IP
: endereço IP interno do gateway virtual virtual para a conexão 1, túnel 1AWS_T2_IP
: endereço IP interno do gateway particular virtual da conexão 1, túnel 2AWS_T3_IP
: endereço IP interno do gateway particular virtual da conexão 2, túnel 1AWS_T4_IP
: endereço IP interno do gateway particular virtual para a conexão 2, túnel 2SHARED_SECRET_1
: chave pré-compartilhada para conexão 1, túnel 1SHARED_SECRET_2
: chave pré-compartilhada para conexão 1, túnel 2SHARED_SECRET_3
: chave pré-compartilhada para conexão 2, túnel 1SHARED_SECRET_4
: chave pré-compartilhada para conexão 2, túnel 2CUSTOMER_GATEWAY_1
: gateway do Google Cloud VPN, interface 0CUSTOMER_GATEWAY_2
: gateway do Google Cloud VPN, interface 1TRANSIT_GATEWAY_ID
: o ID do gateway de trânsito associado à conexão VPN.AWS_T1_IP
: endereço IP interno do gateway virtual virtual para a conexão 1, túnel 1AWS_T2_IP
: endereço IP interno do gateway particular virtual da conexão 1, túnel 2AWS_T3_IP
: endereço IP interno do gateway particular virtual da conexão 2, túnel 1AWS_T4_IP
: endereço IP interno do gateway particular virtual para a conexão 2, túnel 2SHARED_SECRET_1
: chave pré-compartilhada para conexão 1, túnel 1SHARED_SECRET_2
: chave pré-compartilhada para conexão 1, túnel 2SHARED_SECRET_3
: chave pré-compartilhada para conexão 2, túnel 1SHARED_SECRET_4
: chave pré-compartilhada para conexão 2, túnel 2
A AWS reserva alguns intervalos CIDR, então não é possível usar valores nesses intervalos em endereços IP (
AWS_T1_IP
,AWS_T2_IP
,AWS_T3_IP
AWS_T4_IP
). Para informações sobre quais blocos CIDR a AWS reserva, consulte Opções de túnel para conexão VPN site a site.Use esses comandos para criar quatro túneis no Google Cloud.
Faça o download do arquivo de configuração para as duas conexões VPN.
Nas próximas etapas, você vai usar valores do arquivo de configuração que você fez o download para criar e configurar recursos no lado do Google Cloud.
Crie túneis de VPN e interfaces do Cloud Router no Google Cloud
Nesta seção, você usa as informações da conexão de VPN da AWS criada na seção anterior para criar um gateway de VPN externo, túneis de VPN e interfaces do Cloud Router no Google Cloud.
Ao configurar túneis do Cloud VPN para a AWS, use o protocolo IKEv2 e selecione apenas um conjunto de cifras IKE para garantir o estabelecimento do túnel. Por exemplo, selecione um algoritmo de criptografia, um algoritmo de integridade e um grupo Diffie-Hellman (DH) da Fase 1 e da Fase 2. Os conjuntos de transformação padrão da AWS criam um payload de associação de segurança (SA) grande, o que pode causar a fragmentação de IP dos pacotes IKE. O Cloud VPN não oferece suporte a pacotes IKE fragmentados.
No Cloud Shell, crie um gateway de VPN externo com quatro interfaces para os endereços IP externos da AWS.
Antes de criar o gateway de VPN externo, verifique se os endereços IP externos da AWS correspondem aos valores no arquivo de configuração que você fez o download. Não é possível modificar esses endereços IP depois de criar o gateway de VPN externo. Se os endereços não corresponderem, a conexão do túnel de VPN de alta disponibilidade não poderá ser estabelecida.
gcloud compute external-vpn-gateways create PEER_GATEWAY_NAME --interfaces \ 0=AWS_GW_IP_1,1=AWS_GW_IP_2,2=AWS_GW_IP_3,3=AWS_GW_IP_4
Substitua:
AWS_GW_IP_1
: endereço IP externo para gateway particular virtual para conexão 1, túnel 1AWS_GW_IP_2
: endereço IP externo para gateway particular virtual para conexão 1, túnel 2AWS_GW_IP_3
: endereço IP externo para o gateway particular virtual na conexão 2, túnel 1AWS_GW_IP_4
: endereço IP externo para gateway particular virtual para conexão 2, túnel 2
Crie quatro túneis de VPN.
Túnel 1:
gcloud compute vpn-tunnels create tunnel-1 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 0 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_1 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 0
Túnel 2:
gcloud compute vpn-tunnels create tunnel-2 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 1 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_2 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 0
Túnel 3:
gcloud compute vpn-tunnels create tunnel-3 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 2 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_3 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 1
Túnel 4:
gcloud compute vpn-tunnels create tunnel-4 \ --peer-external-gateway PEER_GATEWAY_NAME \ --peer-external-gateway-interface 3 \ --region REGION \ --ike-version 2 \ --shared-secret SHARED_SECRET_4 \ --router ROUTER_NAME \ --vpn-gateway HA_VPN_GATEWAY_NAME \ --interface 1
Substitua:
PEER_GATEWAY_NAME
: um nome do gateway de peering externo criado na etapa 1.REGION
: a região do Google Cloud em que você cria o túnelSHARED_SECRET
: sua chave pré-compartilhada (PSK), que precisa corresponder à chave pré-compartilhada para o túnel do parceiro criado no gateway de par. Para gerar uma chave pré-compartilhada forte, consulte Gerar uma chave pré-compartilhada forte.ROUTER_NAME
: o nome do gateway do Cloud Router que você criou na seção Criar o gateway de VPN de alta disponibilidade e o Cloud Router no Google Cloud.HA_VPN_GATEWAY_NAME
: o nome do gateway de VPN de alta disponibilidade criado na seção Criar o gateway de VPN de alta disponibilidade e o Cloud Router no Google Cloud.
Crie quatro interfaces do Cloud Router.
Nos comandos a seguir, substitua cada marcador
GOOGLE_BGP_IP_TUNNEL
pelo endereço IP do túnel no lado do Google Cloud. Encontre os valores nos arquivos de configuração da VPN da AWS como o endereço do gateway de cliente para cada túnel. Cada um desses endereços precisa estar no intervalo CIDR/30
dentro do intervalo de rede169.254.0.0/16
.Interface 1 do Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-1 \ --vpn-tunnel tunnel-1 \ --ip-address GOOGLE_BGP_IP_TUNNEL_1 \ --mask-length 30 \ --region REGION
Interface 2 do Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-2 \ --vpn-tunnel tunnel-2 \ --ip-address GOOGLE_BGP_IP_TUNNEL_2 \ --mask-length 30 \ --region REGION
Interface 3 do Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-3 \ --vpn-tunnel tunnel-3 \ --ip-address GOOGLE_BGP_IP_TUNNEL_3 \ --mask-length 30 \ --region REGION
Interface 4 do Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name int-4 \ --vpn-tunnel tunnel-4 \ --ip-address GOOGLE_BGP_IP_TUNNEL_4 \ --mask-length 30 \ --region REGION
Adicione pares do BGP.
Nos comandos a seguir, substitua
PEER_ASN
pelo ASN da parte da AWS da sessão do BGP.Conexão da AWS 1, túnel 1:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn1-tunn1 \ --peer-asn PEER_ASN \ --interface int-1 \ --peer-ip-address AWS_T1_IP \ --region REGION
Conexão da AWS 1, túnel 2:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn1-tunn2 \ --peer-asn PEER_ASN \ --interface int-2 \ --peer-ip-address AWS_T2_IP \ --region REGION
Conexão 2 da AWS, túnel 1:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn2-tunn1 \ --peer-asn PEER_ASN \ --interface int-3 \ --peer-ip-address AWS_T3_IP \ --region REGION
Conexão 2 da AWS, túnel 2:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name aws-conn2-tunn2 \ --peer-asn PEER_ASN \ --interface int-4 \ --peer-ip-address AWS_T4_IP \ --region REGION
Verificar a configuração
No Cloud Shell, verifique o status do Cloud Router:
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --format='flattened(result.bgpPeerStatus[].name, result.bgpPeerStatus[].ipAddress, result.bgpPeerStatus[].peerIpAddress)'
O resultado será assim:
result.bgpPeerStatus[].peerIpAddress)' result.bgpPeerStatus[0].ipAddress: 169.254.171.18 result.bgpPeerStatus[0].name: aws-conn1-tunn1 result.bgpPeerStatus[0].peerIpAddress: 169.254.171.17 result.bgpPeerStatus[1].ipAddress: 169.254.156.154 result.bgpPeerStatus[1].name: aws-conn1-tunn2 result.bgpPeerStatus[1].peerIpAddress: 169.254.156.153 result.bgpPeerStatus[2].ipAddress: 169.254.123.38 result.bgpPeerStatus[2].name: aws-conn2-tunn1 result.bgpPeerStatus[2].peerIpAddress: 169.254.123.37 result.bgpPeerStatus[3].ipAddress: 169.254.48.186 result.bgpPeerStatus[3].name: aws-conn2-tunn2 result.bgpPeerStatus[3].peerIpAddress: 169.254.48.185
Liste todos os túneis:
gcloud compute vpn-tunnels list
O resultado será assim:
NAME REGION GATEWAY PEER_ADDRESS tunnel-1 us-east4 ha-vpn-gw 34.205.x.x tunnel-2 us-east4 ha-vpn-gw 52.203.x.x tunnel-3 us-east4 ha-vpn-gw 3.208.x.x tunnel-4 us-east4 ha-vpn-gw 52.204.x.x
Verifique o status do túnel:
gcloud compute vpn-tunnels describe tunnel-1 \ --region REGION \ --format='flattened(status,detailedStatus)'
O resultado será assim:
detailed_status: Tunnel is up and running. status: ESTABLISHED
Liste rotas dinâmicas aprendidas pelo Cloud Router:
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --format="flattened(result.bestRoutes)"
O resultado será assim:
result.bestRoutes[0].creationTimestamp: 2021-01-19T20:42:07.366-08:00 result.bestRoutes[0].destRange: 10.2.2.0/24 result.bestRoutes[0].kind: compute#route result.bestRoutes[0].nextHopIp: 169.254.171.17 result.bestRoutes[0].priority: 100 result.bestRoutes[1].creationTimestamp: 2021-01-19T20:42:07.366-08:00 result.bestRoutes[1].destRange: 10.2.2.0/24 result.bestRoutes[1].kind: compute#route result.bestRoutes[1].nextHopIp: 169.254.156.153 result.bestRoutes[1].priority: 100 result.bestRoutes[2].creationTimestamp: 2021-01-19T20:56:26.588-08:00 result.bestRoutes[2].destRange: 10.2.2.0/24 result.bestRoutes[2].kind: compute#route result.bestRoutes[2].nextHopIp: 169.254.123.37 result.bestRoutes[2].priority: 100 result.bestRoutes[3].creationTimestamp: 2021-01-19T20:56:26.588-08:00 result.bestRoutes[3].destRange: 10.2.2.0/24 result.bestRoutes[3].kind: compute#route result.bestRoutes[3].nextHopIp: 169.254.48.185 result.bestRoutes[3].priority: 100
Testar a conexão VPN
Crie VMs de teste em cada lado dos túneis para testar solicitações de ping.
Verifique se você tem regras de firewall da VPC para permitir o tráfego ICMP.
Para instruções sobre como criar VMs do Compute Engine, consulte Criar e iniciar uma instância do Compute Engine.
Para instruções sobre como criar instâncias do EC2 na AWS, consulte Iniciar uma instância do Amazon EC2.
Teste a conexão usando o comando
ping
.- Se o teste
ping
falhar, acesse os registros no Google Cloud e os registros da VPN Site-to-Site da AWS. As mensagens de erro nos registros podem ajudar a identificar o problema. Para saber como resolver problemas com sua conexão de VPN, consulte os seguintes recursos:
- Se o teste
Avalie a largura de banda entre as máquinas de teste usando o iperf.
Lado do servidor:
iperf3 -s
Lado do cliente:
iperf3 -c SERVER_IP_ADDRESS -P NUMBER_OF_PARALLEL_SESSIONS
Limpar
Exclua os recursos do Google Cloud e do AWS que você criou durante este tutorial.
Excluir o projeto do Google Cloud
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, exclua o projeto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Excluir recursos da AWS
- Excluir uma conexão VPN site a site
- Excluir o gateway de trânsito.
- Encerrar instâncias do Amazon EC2
A seguir
- Saiba mais sobre o Google Cloud VPN.
- Saiba mais sobre práticas recomendadas e arquiteturas de referência para o design da VPC.