Nesta página, você entenderá como criar um gateway da VPN clássica e um túnel usando o roteamento dinâmico, que usa o Border Gateway Routing Protocol (BGP).
Com o roteamento dinâmico, você não especifica seletores de tráfego locais ou remotos. Em vez disso, um Cloud Router é usado. As informações de rota são trocadas dinamicamente.
Antes de configurar o Cloud VPN, consulte Práticas recomendadas para o Cloud VPN.
Requisitos
Requisitos e diretrizes gerais
- Revise informações sobre como o roteamento dinâmico funciona no Google Cloud.
- Verifique se o gateway da VPN de peering é compatível com o BGP.
- Para ver exemplos de topologias, consulte a página Topologias de VPN clássica.
Como criar Cloud Routers
Ao configurar um novo gateway de VPN de alta disponibilidade, você pode criar um novo Cloud Router ou usar um Cloud Router que já esteja usando com os túneis do Cloud VPN ou anexos da VLAN atuais. No entanto, o Cloud Router que você usa não precisa gerenciar uma sessão do BGP para um anexo da VLAN associado a uma conexão de Interconexão por parceiro devido aos requisitos específicos do ASN dos anexos.
Antes de começar
A configuração dos seguintes itens no Google Cloud facilita a configuração do Cloud VPN:
-
Faça login na sua conta do Google.
Se você ainda não tiver uma, inscreva-se.
-
No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.
- Instale e inicialize o SDK do Cloud..
- Se você estiver usando comandos
gcloud
, defina o ID do projeto com o comando a seguir. As instruções do gcloud nesta página presumem que você tenha definido o ID do projeto antes de emitir comandos.
gcloud config set project PROJECT_ID
É possível também ver um ID do projeto que já foi definido:
gcloud config list --format='text(core.project)'
Como criar rede e sub-rede de nuvem privada virtual personalizadas
Antes de criar um gateway e um túnel de VPN clássica, é preciso criar uma rede de nuvem privada virtual e, pelo menos, uma sub-rede na região onde o gateway da VPN clássica residirá.
- Para criar uma rede VPC de modo personalizado (recomendado), consulte Como criar uma rede de modo personalizado.
- Para criar sub-redes, consulte Como trabalhar com sub-redes.
Como criar um gateway e um túnel
O assistente de configuração da VPN é a única opção de console para criar um gateway de VPN clássica. O assistente inclui todas as etapas de configuração necessárias para criar um gateway de VPN clássica, túneis, sessões do BGP e um recurso de gateway de VPN externa. No entanto, é possível concluir algumas etapas depois. Por exemplo, configuração de sessões do BGP.
O botão Criar gateway de VPN é compatível apenas com a criação de gateways de HA VPN.
Console
Configure o gateway
- Acesse a página VPN no Console do Google Cloud.
Acesse a página VPN- Se você estiver criando um gateway pela primeira vez, selecione o botão Criar conexão VPN.
- Selecione o assistente de configuração de VPN.
- Selecione o botão de opção VPN clássica.
- Clique em Continuar.
- Na página Criar uma conexão de VPN, especifique as seguintes configurações
de gateway:
- Nome: o nome do gateway da VPN. Não é possível alterá-lo posteriormente.
- Descrição: se quiser, adicione uma descrição.
- Rede: especifique uma rede de VPC atual em que o túnel e o gateway da VPN serão criados.
- Região: os gateways e túneis do Cloud VPN são objetos regionais. Escolha uma região do Google Cloud onde o gateway será localizado. Instâncias e outros recursos em diferentes regiões usam o túnel para o tráfego de saída sujeito à ordem das rotas. Para um melhor desempenho, localize o gateway e o túnel na mesma região que os recursos relevantes do Google Cloud.
- Endereço IP: crie ou escolha um endereço IP externo
regional atual.
Configurar túneis
- Forneça as seguintes informações na seção Túneis para o novo item de túnel:
- Nome: o nome do túnel da VPN. Não é possível alterá-lo posteriormente.
- Descrição: se quiser, insira uma descrição.
- Endereço IP de peering remoto: especifique o endereço IP externo do gateway de VPN de peering.
- Versão do IKE: escolha a versão do IKE adequada compatível com o gateway da VPN de peering. O IKEv2 tem preferência se for compatível com o dispositivo de peering.
- Chave secreta compartilhada: forneça uma chave pré-compartilhada usada para autenticação. A senha secreta do túnel do Cloud VPN precisa corresponder àquela usada ao configurar o túnel de contrapartida no gateway da VPN de peering. Siga estas instruções para gerar uma senha secreta com criptografia forte.
- Opções de roteamento: selecione Dinâmico (BGP).
- Cloud Router: se ainda não o fez, crie um novo
Cloud Router especificando as opções conforme indicado abaixo. Outra opção é
usar um Cloud Router atual, se ele
não estiver gerenciando uma sessão do BGP para um anexo de interconexão
associado a uma Interconexão por parceiro.
Caso seja escolhido um Cloud Router atual, ainda assim você criará
uma nova sessão do BGP, mas o ASN do Google será o mesmo. Para criar um novo
Cloud Router, especifique os seguintes detalhes:
- Nome: o nome do Cloud Router. Não é possível alterá-lo posteriormente.
- Descrição: se quiser, insira uma descrição.
- ASN do Google: escolha um ASN particular (em inglês) (64512 a 65534, 4200000000 a 4294967294). Ele é usado para todas as sessões do BGP gerenciadas pelo Cloud Router. Não é possível alterar o ASN posteriormente.
- Clique em Salvar e continuar.
- Sessão do BGP: clique no ícone de lápis e especifique os
detalhes a seguir. Quando terminar, clique em Salvar e continuar:
- Nome: o nome da sessão do BGP. Não é possível alterá-lo posteriormente.
- ASN de peering: um ASN público ou particular (em inglês) (64512 a 65534, 4200000000 a 4294967294) usado pelo gateway da VPN de peering.
- Prioridade de rota divulgada: (opcional) a prioridade básica que o Cloud Router usa ao divulgar as rotas "para o Google Cloud". Para mais informações, consulte Métricas de rota. Seu gateway de VPN de peering importa esses valores como MED.
- IP do BGP do Cloud Router e IP do peering do BGP: os dois endereços IP da interface do BGP
precisam ser endereços IP link-local pertencentes a
um CIDR
/30
comum do bloco169.254.0.0/16
. Cada IP do BGP define o respectivo IP link-local usado para trocar informações de rotas. Por exemplo,169.254.1.1
e169.254.1.2
pertencem a um bloco/30
comum.
- Caso seja preciso criar mais túneis no mesmo gateway, clique em Adicionar túnel e repita a etapa anterior. É possível adicionar mais túneis posteriormente.
- Clique em Criar
gcloud
Nos comandos a seguir, substitua:
PROJECT_ID
pelo código do projeto;NETWORK
pelo nome da rede do Google Cloud.REGION
pela região do Google Cloud em que você precisa criar o gateway e o túnel.- Opcional: a
--target-vpn-gateway-region
é a região do gateway de VPN clássica para operar. Seu valor precisa ser igual a--region
. Se não for especificada, esta opção será definida automaticamente. Ela modifica o valor padrão da propriedade compute/region para esta invocação de comando. GW_NAME
pelo nome do gateway;GW_IP_NAME
por um nome para o IP externo usado pelo gateway.
Conclua a seguinte sequência de comandos para criar um gateway do Google Cloud:
Crie os recursos para o gateway do Cloud VPN:
Crie o objeto de gateway da VPN de destino.
gcloud compute target-vpn-gateways create GW_NAME \ --network NETWORK \ --region REGION \ --project PROJECT_ID
Reserve um endereço IP estático externo regional:
gcloud compute addresses create GW_IP_NAME \ --region REGION \ --project PROJECT_ID
Observe o endereço IP para usá-lo ao configurar o gateway da VPN de peering:
gcloud compute addresses describe GW_IP_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(address)'
Crie três regras de encaminhamento. Essas regras instruem o Google Cloud a enviar o tráfego ESP (IPsec), UDP 500 e UDP 4500 para o gateway.
gcloud compute forwarding-rules create fr-GW_NAME-esp \ --ip-protocol ESP \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp500 \ --ip-protocol UDP \ --ports 500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \ --ip-protocol UDP \ --ports 4500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
Se ainda não tiver feito isso, conclua o comando a seguir para criar um Cloud Router. Substitua as opções conforme indicado abaixo. Outra opção é usar um Cloud Router atual, desde que ele não esteja gerenciando uma sessão do BGP para um anexo de interconexão associado a uma Interconexão por parceiro.
- Substitua
ROUTER_NAME
por um nome para o Cloud Router. - Substitua
GOOGLE_ASN
por um ASN particular (em inglês) (64512 a 65534, 4200000000 a 4294967294). O ASN do Google é usado para todas as sessões do BGP no mesmo Cloud Router e não é possível alterá-lo depois.
gcloud compute routers create ROUTER_NAME \ --asn GOOGLE_ASN \ --network NETWORK \ --region REGION \ --project PROJECT_ID
- Substitua
Crie o túnel do Cloud VPN com os seguintes detalhes:
- Substitua
TUNNEL_NAME
por um nome para o túnel. - Substitua
ON_PREM_IP
pelo endereço IP externo do gateway de VPN de peering. - Substitua
IKE_VERS
por1
para IKEv1 ou2
para IKEv2. - Substitua
SHARED_SECRET
pela chave secreta compartilhada. A senha secreta do túnel do Cloud VPN precisa corresponder àquela usada ao configurar o túnel de contrapartida no gateway da VPN de peering. Siga estas instruções para gerar uma senha secreta com criptografia forte. Substitua
ROUTER_NAME
pelo nome do Cloud Router desejado para gerenciar rotas para o túnel do Cloud VPN. O Cloud Router precisa existir antes de você criar o túnel.gcloud compute vpn-tunnels create TUNNEL_NAME \ --peer-address ON_PREM_IP \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --router ROUTER_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
- Substitua
Configure uma sessão do BGP para o Cloud Router criando uma interface e um terminal do BGP. Escolha um dos seguintes métodos:
Para permitir que o Google Cloud escolha automaticamente os endereços IP link-local do BGP, faça isto:
Adicione uma nova interface ao Cloud Router. Substitua
INTERFACE_NAME
para fornecer um nome para a interface.gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --region REGION \ --project PROJECT_ID
Adicione um par BGP à interface. Substitua
PEER_NAME
por um nome para o peering ePEER_ASN
pelo ASN configurado para o gateway de VPN de peering.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --region REGION \ --project PROJECT_ID
Liste os endereços IP do BGP escolhidos pelo Cloud Router. Caso você tenha adicionado uma nova interface a um Cloud Router atual, os endereços IP do BGP para a nova interface precisarão ser listados com o maior número de índice. O endereço IP de peering é o IP do BGP que você precisa usar para configurar o gateway da VPN de peering.
gcloud compute routers get-status ROUTER_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(result.bgpPeerStatus[].ipAddress, \ result.bgpPeerStatus[].peerIpAddress)'
A saída esperada para um Cloud Router que gerencia um único túnel do Cloud VPN (índice
0
) tem a seguinte aparência, em queGOOGLE_BGP_IP
representa o IP do BGP da interface do Cloud Router eON_PREM_BGP_IP
representa o IP do BGP de peering.result.bgpPeerStatus[0].ipAddress: GOOGLE_BGP_IP result.bgpPeerStatus[0].peerIpAddress: ON_PREM_BGP_IP
Para atribuir manualmente os endereços IP do BGP associados à interface do BGP do Google Cloud e ao peering, faça isto:
Escolha um par de endereços IP link-local do BGP em um bloco
/30
no intervalo169.254.0.0/16
. Atribua um desses endereços IP do BGP ao Cloud Router no próximo comando substituindoGOOGLE_BGP_IP
. O outro endereço IP do BGP é usado para o gateway de VPN de peering. Você precisa configurar seu dispositivo para usar esse endereço e substituirON_PREM_BGP_IP
no último comando abaixo.Adicione uma nova interface ao Cloud Router. Especifique um nome para a interface substituindo
INTERFACE_NAME
.gcloud compute routers add-interface ROUTER_NAME \ --interface-name INTERFACE_NAME \ --vpn-tunnel TUNNEL_NAME \ --ip-address GOOGLE_BGP_IP \ --mask-length 30 \ --region REGION \ --project PROJECT_ID
Adicione um par BGP à interface. Substitua
PEER_NAME
por um nome para o peering ePEER_ASN
pelo ASN configurado para o gateway de VPN de peering.gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name PEER_NAME \ --peer-asn PEER_ASN \ --interface INTERFACE_NAME \ --peer-ip-address ON_PREM_BGP_IP \ --region REGION \ --project PROJECT_ID
Próximas etapas
É preciso concluir as seguintes etapas antes de usar um novo túnel e gateway do Cloud VPN:
- Defina o gateway da VPN de peering e configure o túnel
correspondente. Consulte estas páginas:
- Guias de interoperabilidade de VPN, para orientações específicas quanto à configuração de determinados dispositivos da VPN.
- Para parâmetros gerais de configuração, consulte Como configurar o gateway de VPN de peering.
- Configure regras de firewall no Google Cloud e na rede de peering, conforme necessário. Consulte a página Regras de firewall para sugestões.
- Verifique o status do túnel, incluindo as regras de encaminhamento.
Como aplicar uma restrição de política da organização que restringe os endereços IP dos gateways de VPN de peering
É possível criar uma restrição de política da organização do Google Cloud que defina um conjunto de endereços IP permitidos ou negados para fazer o peering de gateways de VPN por meio da VPN clássica ou de túneis de VPN de alta disponibilidade. Essa restrição contém uma lista de permissões ou uma lista de negações desses endereços IP em peering, que entra em vigor para os túneis do Cloud VPN criados após a aplicação da restrição. Para mais detalhes, consulte a visão geral do Cloud VPN.
Permissões necessárias
Para definir uma restrição de IP de peering no nível da organização ou do projeto, primeiro você precisa receber o papel
de Administrador de políticas da organização
(orgpolicy.policyAdmin
) para sua organização.
Como definir restrições
Para criar uma política da organização e associá-la a uma organização, pasta ou projeto, use os exemplos listados nas próximas seções e siga as etapas em Como usar restrições.
Como restringir a conectividade de endereços IP de peering específicos por meio de um túnel do Cloud VPN
Para permitir apenas endereços IP de peering específicos, execute as seguintes etapas:
- Encontre o ID da organização digitando o seguinte comando:
gcloud organizations list
A resposta ao comando terá a seguinte aparência:
DISPLAY NAME ID example-organization 29252605212
-
Crie um arquivo JSON que defina sua política. Forneça uma política como um arquivo JSON, como no exemplo a seguir:
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allowedValues": [ "100.1.1.1", ], } }
-
Use o comando
set-policy
do gcloud Resource Manager para definir a política da organização, passando o arquivo JSON e usando o ORGANIZATION_ID que você encontrou na etapa anterior.
Como restringir a conectividade de qualquer IP de peering por meio de um túnel do Cloud VPN
Para proibir a criação de qualquer novo túnel do Cloud VPN, siga as etapas neste exemplo de restrição.
- Encontre o ID da organização ou o ID do nó na hierarquia de recursos em que você quer definir uma política.
-
Crie um arquivo JSON como o exemplo a seguir.
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allValues": "DENY" } }
-
Transmita o arquivo JSON inserindo o mesmo comando que você usaria para restringir endereços IP de peering específicos.