Cloud Router

Atualizações dinâmicas de rota do Border Gateway Protocol (BGP) entre a rede Virtual Private Cloud (VPC) do Google Cloud Platform (GCP) e sua rede local são ativadas pelo Google Cloud Router. Na versão inicial, o Cloud Router é compatível com o BGP apenas no caso da VPN do Cloud.

O Cloud Router funciona com redes legadas e redes Virtual Private Cloud (VPC).

Este documento abrange apenas o uso do Cloud Router e de rotas dinâmicas com VPN. Consulte a documentação da VPN do Cloud para usar a VPN com rotas estáticas e para ver informações gerais sobre VPN.

Para detalhes da configuração da VPN entre a VPC e outros fornecedores ou provedores, consulte os Guias de interoperabilidade da VPN.

Antes de começar

Visão geral

Use VPNs para conectar, de forma segura, suas redes locais a redes VPC. Sem o Cloud Router, é necessário configurar suas VPNs usando rotas estáticas. Com o Cloud Router, as VPNs do Cloud são compatíveis com roteamento dinâmico.

É estabelecido um peering entre o Cloud Router e o gateway da VPN ou roteador com troca de informações de topologia via BGP. As alterações da topologia de rede se propagam automaticamente entre a rede VPC e sua rede local, eliminando assim a necessidade de configurar rotas estáticas para os túneis VPN do Cloud.

O Cloud Router é um serviço de nuvem do Google totalmente distribuído e gerenciado. Ele é projetado com os princípios da Rede definida por software (SDN, na sigla em inglês) e fornecido na pilha de virtualização de rede definida por software do Google.

Os benefícios do Cloud Router são resumidos a seguir:

  • Ativa roteamento dinâmico para VPNs. Esse tipo de roteamento é um requisito essencial para grandes organizações com VPNs de porte empresarial.
  • O serviço dispensa a configuração de rotas estáticas para túneis VPN. Na realidade, o roteamento dinâmico com o BGP permite descobrir alterações na topologia de rede de modo automático, rápido e interoperável.
  • Com o Cloud Router, não é necessário reiniciar os túneis VPN em caso de alterações na topologia. Como resultado, o Cloud Router permite alterar a topologia de rede de forma contínua, sem interrupções do tráfego.

Problemas de VPN sem o Cloud Router

Sem o Cloud Router, só é possível configurar a VPN usando rotas estáticas. O uso de rotas estáticas apresenta as seguintes desvantagens:

  • Uma alteração na configuração de rede em qualquer lado de um túnel VPN exige a criação e eliminação manual das rotas estáticas correspondentes a essas alterações. Além disso, as alterações nas rotas estáticas têm convergência lenta.
  • Antes da criação do túnel VPN para uso de rotas estáticas, é necessário especificar a lista de prefixos de IP nos dois lados do túnel. Isso significa que, sempre que for necessário alterar as rotas, o túnel VPN deverá ser atualizado (excluído e recriado) com as novas rotas. Isso interrompe o tráfego existente.
  • Não há nenhum método padrão para configurar rotas estáticas. Os códigos usados variam de acordo com o fornecedor.
Diagrama de uma rede legada (clique para ampliar)
VPN sem Cloud Router (clique para ampliar)

Exemplo: sua rede combinada é formada pela rede do Google Cloud e 29 sub-redes (uma por rack) na rede de mesmo nível do outro lado do túnel VPN. Neste exemplo, imagine que sua empresa esteja crescendo de tal forma que você precise adicionar uma nova sub-rede de máquinas a cada semana. Nesta semana, você está adicionando a sub-rede 10.0.30.0/24, conforme mostra o diagrama acima.

Nesse cenário, a VPN com base em rota estática exige as seguintes alterações:

  1. É necessário adicionar as rotas estáticas ao Google Cloud Platform para alcançar a nova sub-rede de mesmo nível.
  2. É preciso eliminar e recriar o túnel VPN para incluir a nova sub-rede de mesmo nível

Para evitar as alterações nas configurações das rotas estáticas e dos túneis VPN descritas acima, implante um Cloud Router. O Cloud Router realiza o pareamento com o gateway da VPN usando o BGP para trocar informações de topologia. As alterações na topologia da rede do Google Cloud Platform se propagam automaticamente para sua rede e vice-versa por meio do BGP. Assim, é possível evitar a configuração de rotas estáticas para os túneis VPN do Cloud.

Cloud Router para VPNs com redes legadas

Com a inclusão do Cloud Router em suas implantações de VPN, as redes de terminal (locais) e do Google Cloud Platform podem se detectar automaticamente por meio do BGP.

Diagrama de uma rede legada (clique para ampliar)
Cloud Router para VPNs com redes legadas (clique para ampliar)

Exemplo: partindo do exemplo anterior, para realizar a propagação automática das alterações na configuração de rede sem reconfigurar rotas estáticas e reiniciar o túnel VPN a cada alteração, configure o túnel VPN para usar o roteamento dinâmico. A opção de roteamento dinâmico usa um Cloud Router para criar uma sessão do BGP com o gateway da VPN de mesmo nível, supondo que ele seja compatível com o BGP. A maioria dos roteadores locais é compatível com VPN e BGP no mesmo roteador físico.

A sessão do BGP é usada por um roteador para enviar informações sobre alterações locais a outro roteador. Para configurar o BGP, atribua um endereço IP adicional a cada extremidade do túnel VPN. Esses dois endereços IP devem ser endereços IP de link local pertencentes ao intervalo de endereços IP 169.254.0.0/16. Eles não fazem parte do espaço de endereços IP em nenhum dos lados e são usados exclusivamente na configuração dos BGP de mesmo nível para criar uma sessão de BGP.

É necessário configurar dois endereços IP de link local, ambos a partir da mesma sub-rede. Além disso, configure uma máscara de rede. Após a realização dessas alterações nos dois lados do túnel, uma sessão do BGP será estabelecida. Nesse ponto, a configuração é semelhante à da figura acima.

Cloud Router para VPNs com redes VPC

Com as redes VPC são permitidos a segmentação regional do espaço IP da rede em prefixos (sub-redes) e o controle dos prefixos aos quais um endereço IP interno da instância da VM é alocado. Para evitar o gerenciamento estático dessas sub-redes, incluindo a obrigação de adicionar e remover rotas estáticas relacionadas à VPN, ative o roteamento dinâmico das VPNs usando o Cloud Router. Um roteador do Cloud é associado a uma rede VPC de uma região específica e anuncia todas as sub-redes regionais para o gateway peer via BGP. O roteador do Cloud também aprende as rotas do peer usando o BGP e seleciona a melhor rota para alcançar os prefixos associados.

Este exemplo mostra o Cloud Router com redes VPC de modo personalizado. Com redes VPC no modo automático, o prefixo /20 da região é anunciado automaticamente pelo Cloud Router.

Cloud Router para VPNs com rede VPC (clique para ampliar)
Cloud Router para VPNs com rede VPC (clique para ampliar)

Exemplo: semelhante ao exemplo anterior para redes legadas, neste exemplo descreve-se o Cloud Router com funcionalidade VPN para uma topologia com rede VPC. Suponhamos que você tem duas sub-redes em sua rede VPC (Teste, Produção) e 29 sub-redes (uma por rack) do outro lado do túnel VPN no datacenter. Você tem um túnel VPN que conecta sua rede VPC com o datacenter.

Você quer executar as duas alterações a seguir na configuração:

  1. Criar uma nova sub-rede no Google Cloud para teste.
  2. Adicionar um novo rack de máquinas para lidar com o tráfego crescente e, assim sendo, uma nova sub-rede no datacenter.

Para propagação automática das alterações de configuração da rede sem precisar alterar a VPN e a configuração de rota estática a cada mudança nas sub-redes, configure o roteamento dinâmico para o túnel VPN. O roteamento dinâmico é habilitado com o uso do Cloud Router para criar uma sessão do BGP, sendo que o gateway da VPN de mesmo nível também é compatível com o BGP. Com a adição do Cloud Router à VPN, é possível descobrir sub-redes automaticamente via BGP.

Assim como acontece com as redes legadas, para configurar o BGP é necessário atribuir um endereço IP adicional a cada extremidade do túnel VPN. Esses dois endereços IP devem ser endereços de link local pertencentes ao intervalo 169.254.0.0/16. Eles não fazem parte do seu espaço de endereços IP e serão utilizados exclusivamente para criar uma sessão do BGP.

Cada Cloud Router pertence a uma rede e região únicas. Apenas sessões do BGP para sub-redes especificadas nos túneis VPN dessa rede e região específica da VPC são processadas por ele. Se a rede VPC tem túneis VPN em várias regiões, é necessário criar um Cloud Router em cada região que precisa de roteamento dinâmico. Um Cloud Router pode ser usado para vários gateways da VPN, assim como vários túneis para a mesma rede/região em que ele está.

No exemplo acima com redes VPC, depois de ativar o roteamento dinâmico para o gateway da VPN do Cloud com o Cloud Router e adicionar a nova sub-rede ao Google Cloud para teste, além de um novo rack no datacenter, as novas sub-redes são anunciadas para o outro lado sem interrupções e o envio e recebimento de tráfego é iniciado imediatamente pelas instâncias nessas sub-redes. O Cloud Router para VPNs com roteamento dinâmico é uma opção atraente para uso com sub-redes. Além disso, ele é essencial para topologias com grande número de sub-redes, comuns em grandes organizações e empresas.

Ativar o Graceful Restart para encaminhamento ininterrupto

A maioria dos gateways da VPN de clientes é compatível com um recurso do BGP chamado Graceful Restart, mas talvez seja preciso ativá-lo. O Graceful Restart também pode ser configurado em um roteador separado quando o gateway VPN não é compatível com o BGP. Ele permite que o dispositivo do BGP de mesmo nível fique off-line e, em seguida, se recupere dentro do período de Graceful Restart, que é de dois minutos para o Cloud Router. Isso ocorre sem interrupção do tráfego. Esse recurso protege contra interrupções quando os agentes do BGP precisam de atualizações de software e outros tipos de manutenção, ou em caso de falhas temporárias. Ative o Graceful Restart no dispositivo do BGP se ele for compatível com esse recurso. O Graceful Restart é ativado por padrão no Cloud Router.

Graceful Restart e Cloud Router (clique para ampliar)
Graceful Restart e Cloud Router (clique para ampliar)

No exemplo mostrado acima, se o Cloud Router precisar de uma atualização de manutenção e o Graceful Restart estiver ativado para o gateway da VPN de mesmo nível, o Cloud Router ficará on-line novamente dentro do período de Graceful Restart após ser atualizado, sem causar interrupção no tráfego.

Redundância para gateways da VPN não compatíveis com Graceful Restart

Se o gateway de mesmo nível não tiver Graceful Restart, um erro em qualquer lado da sessão do BGP causará uma falha e interromperá o tráfego. As rotas são removidas dos dois lados quando o tempo limite do BGP é excedido. No caso do Cloud Router, esse limite é de 60 segundos. O tráfego da VPN roteado dinamicamente não passará mais pelo túnel. As rotas estáticas configuradas para o túnel continuarão a ser atendidas.

Se o gateway do terminal não for compatível com Graceful Restart, a implantação de dois gateways de mesmo nível, com um túnel cada, criará redundância e failover. Você também precisa de dois gateways da VPN do Cloud, um para cada túnel. Essa configuração permite desconectar um túnel e dispositivos para realizar atualizações ou manutenção de software. Ela também oferece proteção em caso de falha de um desses gateways de mesmo nível, pois mantém as rotas ativas e o tráfego fluindo pelo túnel no outro gateway.

No diagrama abaixo, a caixa representa o Cloud Router com dois endereços IP. Esses dois endereços são interfaces de Ethernet separadas dentro da mesma tarefa do Cloud Router. Cada interface é usada para uma sessão individual do BGP com um BGP par separado. Neste caso de uso específico, como esses túneis VPN são criados para produzir redundância, as duas sessões do BGP trocam exatamente o mesmo conjunto de prefixos de rota, mas com próximo saltos (hops) diferentes que apontam para túneis VPN distintos.

Redundância sem Graceful Restart (clique para ampliar)
Redundância sem Graceful Restart (clique para ampliar)

Configurar a VPN com o Cloud Router

Neste exemplo, a rede é uma rede VPC de modo personalizado.

Cloud Router para VPNs com rede VPC (clique para ampliar)
Cloud Router para VPNs com rede VPC (clique para ampliar)

Criar o gateway da VPN, o túnel VPN e um Cloud Router

Console


Clique em Criar um Cloude Router antes da VPN para criar um Cloud Router, e use-o ao criar uma VPN. Clique em Criar um Cloud Router como parte do fluxo da VPN para criar um Cloud Router como parte do fluxo de trabalho da VPN.

Criar Cloud Router antes da VPNVPN

Use este procedimento se você pretende criar primeiro o Cloud Router e depois uma VPN.

  1. Vá para a página "Criar Cloud Router" no Google Cloud Platform Console.
    Vá para a página "Roteadores".
  2. Crie um Cloud Router na região onde você quer que o gateway da VPN e os túneis fiquem.
    • Nome: o nome do Cloud Router. Esse nome é exibido no console e usado pela ferramenta de linha de comando gcloud para fazer referência ao roteador. Exemplo: my-router.
    • Rede VPC: a rede que contém as instâncias que o gateway da VPN servirá. Exemplo: my-network.
    • Região: a região onde você deseja localizar o Cloud Router e o gateway da VPN. Normalmente, é a região que contém as instâncias que você deseja alcançar. Exemplo: asia-east1.
    • ASN do Google: o ASN particular (64512-65534, 4200000000-4294967294) para o roteador que está sendo configurado. Pode ser qualquer ASN privado que você não esteja usando como um ASN de mesmo nível na mesma região e rede. Exemplo: 65001.
  3. Seu novo roteador é exibido na página de listagem do Cloud Router. Na coluna Gateway da VPN do novo roteador, clique em Configurar.
  4. Preencha os campos do gateway da VPN:
    • Nome: o nome do gateway da VPN. Esse nome é exibido no console e usado pela ferramenta de linha de comando gcloud para fazer referência ao gateway. Exemplo: my-vpn.
    • Rede VPC: a rede VPC que contém o Cloud Router e as instâncias que o gateway da VPN servirá. Exemplo: my-network.
    • Região: a região onde você deseja criar o gateway da VPN. É a mesma região do Cloud Router. Essa é a região que contém as instâncias que você deseja alcançar. Exemplo: asia-east1.
    • Endereço IP: selecione um endereço IP externo estático. Se não houver um endereço IP externo estático, crie um.
  5. Preencha os campos de pelo menos um túnel:
    • Endereço IP de mesmo nível: o endereço IP público do gateway de mesmo nível. Esse é o endereço IP público do gateway da VPN de mesmo nível, não aquele que você está configurando no momento.
    • Versão IKE: é preferível usar IKEv2, mas IKEv1 é aceitável se o gateway de mesmo nível não for compatível com outra versão.
    • Chave secreta compartilhada: string de caracteres usada para estabelecer a criptografia desse túnel. Insira a mesma chave secreta compartilhada nos dois gateways da VPN. Se o dispositivo do gateway da VPN no lado de mesmo nível do túnel não gerar uma chave automaticamente, crie uma.
    • Opções de roteamento: selecione Dinâmico (BGP).
    • Roteador do Cloud: selecione my-router.
    • Sessão do BGP: clique no ícone do "lápis" e preencha os campos a seguir. Quando terminar, clique em Salvar e continuar.
      • Nome: bgp-peer1
      • ASN do peer: use seu ASN público ou qualquer ASN particular (64512-65534, 4200000000-4294967294) que ainda não esteja usando no peer ou na rede VPC. Exemplo: 65002.
      • Endereço IP do BGP do Google: os dois endereços IP da interface do BGP devem ser endereços IP de link local pertencentes à mesma sub-rede /30 em 169.254.0.0/16. Exemplo: 169.254.1.1.
      • Endereço IP do par do BGP: consulte a explicação do endereço IP do BGP do Google. Exemplo: 169.254.1.2.
  6. Clique em Criar para criar o gateway e iniciar todos os túneis, embora os túneis se conectem somente após a configuração do roteador de mesmo nível.
    Esta etapa cria automaticamente as regras de encaminhamento necessárias para o gateway e os túneis.

Criar um Cloud Router como parte do fluxo da VPN

Use este procedimento se você ainda não tiver um Cloud Router e quiser criá-lo como parte do fluxo de trabalho da VPN.

  1. Vá para a página "Criar VPN" no Google Cloud Platform Console.
    Vá para a página "VPN".
  2. Preencha os campos do gateway da VPN:
    • Nome: o nome da VPN. Esse nome é exibido no console e usado pela ferramenta de linha de comando gcloud para fazer referência à VPN. Exemplo: my-vpn.
    • Rede VPC: a rede VPC que contém as instâncias que o gateway da VPN servirá. Exemplo: my-network.
    • Região: a região onde você deseja criar o gateway da VPN. Precisa ser da mesma região do Cloud Router. Essa é a região que contém as instâncias que você deseja alcançar. Exemplo: asia-east1.
    • Endereço IP: selecione um endereço IP externo estático. Se não houver um endereço IP externo estático, clique em Novo endereço IP estático para criar um.
  3. Preencha os campos de pelo menos um túnel:
    • Endereço IP de mesmo nível: o endereço IP público do gateway de mesmo nível. Esse é o endereço IP público do gateway de mesmo nível da VPN, não aquele que você está configurando no momento.
    • Versão IKE: é preferível usar IKEv2, mas IKEv1 é aceitável quando o gateway de mesmo nível não é compatível com outra versão.
    • Chave secreta compartilhada: string de caracteres usada para estabelecer a criptografia desse túnel. Insira a mesma chave secreta compartilhada nos dois gateways da VPN. Se o dispositivo do gateway da VPN no lado de mesmo nível do túnel não gerar uma chave automaticamente, crie uma.
    • Opções de roteamento: selecione Dinâmico (BGP).
    • Cloud Router: selecione Criar Cloud Router e preencha os campos a seguir. Quando terminar, clique em Salvar e continuar.
      • Nome: o nome do Cloud Router. Esse nome é exibido no console e usado pela ferramenta de linha de comando gcloud para fazer referência ao roteador. Exemplo: my-router.
      • ASN do Google: o ASN particular (64512-65534, 4200000000-4294967294) do roteador que está sendo configurado. Pode ser qualquer ASN privado que você não esteja usando. Exemplo: 65001.
    • Sessão do BGP: clique no ícone do "lápis" e preencha os campos a seguir. Quando terminar, clique em Salvar e continuar.
      • Nome: bgp-peer1
      • ASN do peer: o ASN particular (64512-65534, 4200000000-4294967294) do roteador que está sendo configurado. Pode ser qualquer ASN privado que você não esteja usando. Exemplo: 65002.
      • Endereço IP do BGP do Google: os dois endereços IP da interface do BGP devem ser endereços IP de link local pertencentes à mesma sub-rede /30 em 169.254.0.0/16. Exemplo: 169.254.1.1.
      • Endereço IP do par do BGP: consulte a explicação do endereço IP do BGP do Google. Exemplo: 169.254.1.2.
  4. Clique em Criar para criar o gateway, o Cloud Router e os túneis, embora os túneis se conectem somente após a configuração do roteador de mesmo nível.
    Esta etapa cria automaticamente as regras de encaminhamento necessárias para o gateway e os túneis. Após a criação de uma sessão do terminal do BGP que usa o Google Cloud Platform Console, a interface de Cloud Router é criada automaticamente para esse terminal.

gcloud


  1. Escolha ou crie uma rede VPC. Neste exemplo, você está criando uma rede VPC de modo personalizado.

    gcloud compute networks create my-network \
      --mode custom
    
    NAME       MODE   IPV4_RANGE GATEWAY_IPV4
    my-network custom
    
  2. Especifique o prefixo de sub-rede para sua primeira sub-rede. Este exemplo mostra a atribuição de 10.21.0.0/16 à região asia-east1.

    gcloud compute networks subnets create subnet-1 \
        --network my-network \
        --region asia-east1 \
        --range 10.21.0.0/16
    
    NAME     REGION      NETWORK    RANGE
    subnet-1 asia-east1  my-network 10.21.0.0/16
    
  3. Crie um gateway de VPN na região desejada. Geralmente, é a região que contém as instâncias que você quer alcançar. Esta etapa cria um gateway de VPN virtual não configurado chamado my-vpn na sua rede VPC.

    gcloud compute target-vpn-gateways create my-vpn \
        --project [PROJECT_ID] \
        --region asia-east1 \
        --network my-network
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/targetVpnGateways/my-vpn].
    NAME   NETWORK    REGION
    my-vpn my-network asia-east1
    
  4. Reserve um endereço IP estático na rede VPC e região onde você criou o gateway da VPN. Anote o endereço criado para usar em etapas futuras. Posteriormente, o endereço numérico será mostrado como IP-ADDRESS.

    gcloud compute addresses create vpn-static-ip \
        --project [PROJECT_ID] \
        --region asia-east1
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/addresses/address1].
    NAME          REGION       ADDRESS         STATUS
    vpn-static-ip asia-east1   IP-ADDRESS      RESERVED
    
  5. Crie regras de encaminhamento do tráfego ESP, UDP:500 e UDP:4500 para o gateway da VPN do Cloud. Use o endereço IP estático IP-ADDRESS reservado anteriormente. Esta etapa gera regras de encaminhamento chamadas de fr-esp, fr-udp500 e fr-udp4500.

    Primeiro, crie a regra fr-esp:

    gcloud compute forwarding-rules create fr-esp \
        --project [PROJECT_ID] \
        --region asia-east1 \
        --address IP-ADDRESS \
        --target-vpn-gateway my-vpn \
        --ip-protocol ESP
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/forwardingRules/fr-esp].
    NAME   REGION       IP-ADDRESS      IP_PROTOCOL TARGET
    fr-esp asia-east1   IP-ADDRESS      ESP         asia-east1/targetVpnGateways/my-vpn
    

    Crie fr-udp500:

    gcloud compute forwarding-rules create fr-udp500 \
        --project [PROJECT_ID] \
        --region asia-east1 \
        --address IP-ADDRESS \
        --target-vpn-gateway my-vpn \
        --ip-protocol UDP \
        --ports 500
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/forwardingRules/fr-udp500].
    NAME      REGION       IP-ADDRESS      IP_PROTOCOL TARGET
    fr-udp500 asia-east1   IP-ADDRESS      UDP         asia-east1/targetVpnGateways/my-vpn
    

    Crie fr-udp4500:

    gcloud compute forwarding-rules create fr-udp4500 \
         --project [PROJECT_ID] \
         --region asia-east1 \
         --address IP-ADDRESS \
         --target-vpn-gateway my-vpn \
         --ip-protocol UDP \
         --ports 4500
    
     Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/forwardingRules/fr-udp4500].
     NAME       REGION       IP-ADDRESS      IP_PROTOCOL TARGET
     fr-udp4500 asia-east1   IP-ADDRESS      UDP         asia-east1/targetVpnGateways/my-vpn
    
  6. Crie um Cloud Router na região em que você criou o gateway da VPN. Neste exemplo é usado um ASN 65001 como ASN do Cloud Router, mas é possível usar qualquer ASN particular (64512-65534, 4200000000-4294967294) que você não esteja usando na rede peer.

    gcloud compute --project [PROJECT_ID] routers create my-router \
      --region asia-east1 \
      --network my-network \
      --asn 65001
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].
    NAME      REGION     NETWORK
    my-router asia-east1 my-network
    
  7. Crie um túnel VPN no gateway da VPN do Cloud que aponte para o endereço IP externo PEER-GW-EXT-IP do gateway da VPN de mesmo nível. Forneça também a chave secreta compartilhada para o túnel VPN, o nome do Cloud Router e a versão IKE. Use a versão 1 se o gateway de mesmo nível não for compatível com a versão IKE 2 (recomendada).
    Após a execução desse comando, os recursos serão alocados para esse túnel VPN, mas ele ainda não conseguirá transferir o tráfego.

    gcloud compute --project [PROJECT_ID] vpn-tunnels create tunnel1 \
      --region asia-east1 \
      --ike-version 2 \
      --target-vpn-gateway my-vpn \
      --peer-address PEER-GW-EXT-IP \
      --shared-secret SHAREDSECRET \
      --router my-router
    
    Created [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/vpnTunnels/tunnel1].
    NAME       REGION     GATEWAY      PEER_ADDRESS
    tunnel1    asia-east1 my-vpn       PEER-GW-EXT-IP
    
  8. Atualize a configuração do Cloud Router para adicionar uma interface virtual (--interface-name) para o par do BGP. O endereço IP da interface BGP deve ser um endereço IP de link local pertencente ao mesmo intervalo de endereço IP 169.254.0.0/16 e deve pertencer à mesma sub-rede do endereço da interface do roteador do peer. O tamanho recomendado da máscara de rede é 30. Verifique se cada túnel tem um par único de IPs. Como alternativa, você pode deixar --ip-address e --mask-length em branco e fazer o mesmo com --peer-ip-address na próxima etapa. Assim, os endereços IP serão gerados automaticamente.

    gcloud compute --project [PROJECT_ID] routers add-interface my-router \
      --interface-name if-1 \
      --ip-address 169.254.1.1 \
      --mask-length 30 \
      --vpn-tunnel tunnel1 \
      --region asia-east1
    
    Updated [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].
    
  9. Atualize a configuração do Cloud Router para adicionar o par do BGP à interface. Este exemplo usa 65002 para o ASN de mesmo nível. Use o ASN público ou o ASN privado (64512 - 65534, 4200000000 - 4294967294) que ainda não estiver usando na rede de mesmo nível. O endereço IP da interface do terminal do BGP deve ser um endereço de link local que pertença ao intervalo 169.254.0.0/16. Ele deve pertencer à mesma sub-rede que a interface do lado do Google Cloud Platform. Verifique se cada túnel tem um par único de IPs.

    gcloud compute --project [PROJECT_ID] routers add-bgp-peer my-router \
      --peer-name bgp-peer1 \
      --interface if-1 \
      --peer-ip-address 169.254.1.2 \
      --peer-asn 65002 \
      --region asia-east1
    
    Updated [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].
    
  10. Veja os detalhes do Cloud Router e confirme configurações dele.

    gcloud compute --project [PROJECT_ID] routers describe my-router \
      --region asia-east1
    
    bgp:
     asn: 65001
    bgpPeers:
    - interfaceName: if-bgp-peer1
      ipAddress: 169.254.1.1
      name: bgp-peer1
      peerAsn: 65002
      peerIpAddress: 169.254.1.2
    creationTimestamp: '2015-10-19T14:31:52.639-07:00'
    id: '4047683710114914215'
    interfaces:
    - ipRange: 169.254.1.1/30
      linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/vpnTunnels/tunnel1
      name: if-bgp-peer1
    kind: compute#router
    name: my-router
    network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/my-network
    region: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1
    selfLink: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router
    

Configurar regras de firewall

Configure as regras de firewall do Google Cloud Platform para permitir o tráfego de entrada a partir das sub-redes da rede de mesmo nível. Além disso, configure o firewall de rede de mesmo nível para permitir o tráfego de entrada a partir dos prefixos do Compute Engine. Para configurar as regras de firewall do Google Cloud Platform, execute o comando a seguir. É recomendável configurar um intervalo suficientemente amplo para abranger as atualizações futuras do BGP.

Configurar as regras de firewall do Google Cloud Platform

Console


  1. Acesse a página Regras do firewall.
  2. Clique em Criar regra do firewall.
  3. Preencha os seguintes campos:
    • Nome: vpnrule1
    • Rede VPC: my-network
    • Filtro de origem: IP ranges.
    • Intervalos de IPs de origem: os intervalos de mesmo nível que devem ser aceitos a partir do gateway da VPN de mesmo nível
    • Portas e protocolos permitidos: tcp;udp;icmp
  4. Clique em Criar.

Se há mais de um intervalo de rede do peer, forneça uma lista separada por vírgulas no campo Intervalos IP de origem (10.10.4.0/24,10.10.6.0/24).

gcloud


gcloud compute --project [PROJECT_ID] firewall-rules create vpnrule1 \
    --network my-network \
    --allow tcp,udp,icmp \
    --source-ranges PEER-SOURCE-RANGE

Se você tiver mais de um intervalo de rede de mesmo nível, forneça uma lista separada por vírgulas no campo --source-ranges (--source-ranges 10.10.4.0/24,10.10.6.0/24).

Com essa regra é permitido tráfego TCP, UDP e ICMP de todas as portas para todas as máquinas na rede VCP, desde que o tráfego esteja vindo de intervalos de origem do peer. Se você pretende restringir os destinos válidos para o tráfego da VPN, consulte as instruções sobre firewalls para ver informações sobre como criar regras mais específicas.

Configurar regras para firewall de mesmo nível

Configure o firewall de mesmo nível com os intervalos que você espera receber do gateway da VPN do Cloud. É uma boa ideia configurar um intervalo suficientemente amplo para abranger as atualizações futuras do BGP.

Configure também o firewall de mesmo nível para permitir o tráfego TCP de entrada com a porta de origem ou de destino 179. Essa é a porta usada para os avisos do BGP.

Configurar o gateway de mesmo nível para a sessão do BGP

Procure os ASNs e os endereços IP do Cloud, bem como as conexões de roteador de mesmo nível. Em seguida, configure o gateway de mesmo nível.

Console


  1. Abra a lista de Cloud Routers.
  2. Clique no nome do seu Cloud Router.
  3. Anote os valores de ASN do Google, ASN do terminal, Endereço IP do BGP do Google e Endereço IP do par do BGP.

gcloud


gcloud compute --project [PROJECT_ID] routers describe my-router --region asia-east1
bgp:
 asn: 65001
bgpPeers:
- interfaceName: if-bgp-peer1
  ipAddress: 169.254.1.1
  name: bgp-peer1
  peerAsn: 65002
  peerIpAddress: 169.254.1.2
creationTimestamp: '2015-10-19T14:31:52.639-07:00'
id: '4047683710114914215'
interfaces:
- ipRange: 169.254.1.1/30
  linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/vpnTunnels/tunnel1
  name: if-bgp-peer1
kind: compute#router
name: my-router
network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/my-network
region: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1
selfLink: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router

Anote as informações de asn, ipAddress, peerAsn e peerIpAddress.

Configurar gateway de mesmo nível para o túnel

Para ver as configurações de gateway da VPN de mesmo nível, consulte Configurar o gateway da VPN de mesmo nível na documentação da VPN.

Verificar o status do túnel

Console


Abra a lista de VPNs e procure um círculo verde com uma marca de seleção. Isso significa que o túnel foi criado. Se houver um ponto de exclamação em um círculo vermelho, o túnel ainda está sendo criado ou já apresentou uma falha. Clique no link Registro para ver as informações atualizadas sobre o túnel.

gcloud


gcloud compute --project [PROJECT_ID] vpn-tunnels describe tunnel1 \
    --region asia-east1
creationTimestamp: '2015-10-19T14:33:45.449-07:00'
description: ''
detailedStatus: 'Initial handshake. More info: https://console.developers.google.com/[PROJECT_ID]/507356250768/logs?service=compute.googleapis.com&key1=targetVpnGateway&key2=4189032514050383796'
id: '2196766647665614678'
ikeVersion: 2
kind: compute#vpnTunnel
name: tunnel1
peerIp: PEER-GW-EXT-IP
region: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1
router: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router
selfLink: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/vpnTunnels/tunnel1
sharedSecret: SHAREDSECRET
sharedSecretHash: AH6QHyVoninNYieomeYx95HBlKl8
status: FIRST_HANDSHAKE
targetVpnGateway: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/targetVpnGateways/my-vpn

Um Status ESTABLISHED significa que o túnel está ativo. Para ter acesso a uma lista de status intermediários e de erro, consulte Verificar o status do seu túnel na documentação da VPN.

Conferir o status de um Cloud Router e de sessões do BGP

Console


  1. Abra a lista de roteadores e procure um círculo verde com uma marca de seleção na coluna Sessões do BGP. Isso significa que a sessão foi criada. Se houver um ponto de exclamação em um círculo vermelho, a sessão ainda está sendo criada ou já apresentou uma falha. Clique no link Registro para ver as informações atualizadas. Se houver um círculo vermelho com um ponto de exclamação, aguarde alguns instantes e recarregue a página. Pode demorar um pouco até a sessão aparecer.
  2. Abra a lista de roteadores. Clique em Dinâmica para ver as rotas dinâmicas coletadas pelos Cloud Routers na rede.

gcloud


gcloud compute --project [PROJECT_ID] routers get-status my-router \
   --region asia-east1
kind: compute#routerStatusResponse
Result:
  bestRoutes:
  - destRange: 10.0.1.0/24
    kind: compute#route
    nextHopIp: 169.254.1.1
    priority: 100
  - destRange: 10.0.2.0/24
    kind: compute#route
    nextHopIp: 169.254.1.1
    priority: 100
 bgpPeerStatus:
 - advertisedRoutes:
  - destRange: 10.21.0.0/16
    kind: compute#route
    nextHopIp: 169.254.1.2
    priority: 100
  - destRange: 192.168.1.0/24
    kind: compute#route
    nextHopIp: 169.254.1.2
    priority: 100
  ipAddress: 169.254.1.1
  name: bgp-peer1
  numLearnedRoutes: 0
  peerIpAddress: 169.254.1.2
  state: Established
  status: UP
  uptime: '10'
network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/my-network

Operações adicionais do Cloud Router

Listar Cloud Routers

Para listar todos os Cloud Routers em um projeto, execute o comando a seguir.

Console


Lista de Cloud Routers

gcloud


gcloud compute --project [PROJECT_ID] routers list
NAME      REGION     NETWORK
my-router asia-east1 my-network

Para restringir a lista a apenas uma região, especifique --region.

Excluir recursos do Cloud Router

Para instruções sobre como excluir recursos diferentes dos listados, consulte Como excluir um túnel e Como excluir um gateway.

Remover um peer do BGP

Console


No console do Google Cloud Platform, a exclusão de um túnel exclui automaticamente o peer do BGP e a interface do Cloude Router para esse peer.

gcloud


gcloud compute --project [PROJECT_ID] routers remove-bgp-peer my-router \
    --peer-name bgp-peer1 \
    --region asia-east1
Updated [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].

Remover uma interface do BGP

Console


Se você estiver usando o Console, a interface será removida após a remoção do par do BGP. Consulte Remover um par do BGP.

gcloud


gcloud compute --project [PROJECT_ID] routers remove-interface my-router \
    --interface-name if-1 \
    --region asia-east1
Updated [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].

Excluir um Cloud Router

Não é possível excluir um roteador que está sendo usado por um túnel VPN. Primeiro, exclua o túnel e, em seguida, exclua o roteador. Você pode excluir um roteador que ainda tenha pares do BGP, desde que nenhum túnel esteja usando o roteador.

Console


  1. Vá para a lista de Cloud Routers.
  2. Marque a caixa de seleção ao lado do Cloud Router que você deseja excluir.
  3. Clique em Delete.

gcloud


gcloud compute --project [PROJECT_ID] routers delete my-router \
    --region asia-east1
Deleted [https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/asia-east1/routers/my-router].

Registros

Os tipos de mensagens a seguir podem aparecer no Google Cloud Logging.

Para ver registros do Cloud Router, abra a lista de Cloud Routers e clique emVer na coluna de Registros.

Os registros do Cloud Router têm o seguinte formato:

[Event Type]: [Log Text]

Algumas entradas dos registros referem-se ao "código de roteador do BGP". Um código de roteador do BGP é atribuído ao roteador automaticamente com base no endereço IP de uma das interfaces dele.

Eventos do Router

Os eventos do Router estão relacionados ao próprio Google Cloud Router.

Entradas do registro de informações

  • Evento do Router: tarefa do Router ativada
  • Evento do Router: tarefa do Router desativada

Eventos do BGP

Os eventos do BGP estão relacionados a uma sessão e configuração do BGP.

Entradas do registro de informações

  • Evento do BGP: configuração adicionada com sucesso para pares: [LIST_OF_PEERS]
  • Evento do BGP: pareamento do BGP com [PEER] surgiu há X segundos
  • Evento do BGP: pareamento do BGP com [PEER] falhou
  • Evento do BGP: código de roteador do BGP definido como: [BGP_ROUTER_ID]

Eventos de rota

Os eventos de rota estão relacionados a anúncios de rota entre os dois pares do BGP.

Entradas do registro de informações

  • Evento de rota: divulgação de prefixo para pares: [PREFIX]
  • Evento de rota: retirada de prefixo de pares: [PREFIX]
  • Evento de rota: próximos saltos (hops) [LIST_OF_NEXTHOPS] do prefixo [PREFIX] recebidos pelo Cloud Router
  • Evento de rota: próximos saltos (hops) [LIST_OF_NEXTHOPS] do prefixo [PREFIX] excluídos do Cloud Router

Entradas do registro de erro

  • Evento de rota: rota de queda: [PREFIX], máximo de rotas permitidas MAX_ROUTES já no Datapath
    Se você receber esse erro, reduza o número de prefixos anunciados do roteador de mesmo nível para o valor [MAX_ROUTES].

Métricas

O Cloud Router publica métricas de monitoramento do Stackdriver. Consulte a Lista de métricas publicadas para o Cloud Router.

Visualizar as métricas por meio da API

Acesse essas métricas por meio do API Explorer.

Visualizar as métricas por meio de painéis do Stackdriver

Também é possível criar um painel personalizado no Stackdriver usando essas métricas.

Para criar um painel personalizado no Stackdriver, faça o seguinte:

  1. Vá para "Criar painel" no Google Cloud Platform Console.
    Vá para a página "Criar Painel".
  2. Substitua Untitled Dashboard por um nome apropriado.
  3. Clique em Adicionar gráfico.
  4. No menu suspenso Tipo de recurso, selecione Cloud Router.
  5. Altere o Título do gráfico, se desejar.
  6. Selecione uma ou mais métricas no menu suspenso Tipo de métrica.
    Agora, um gráfico com as métricas de todos os Cloud Routers deve estar visível.
  7. Use os controles de Filtro para restringir a visualização somente a determinados roteadores ou sessões.

Algumas métricas estão relacionadas ao Cloud Router e outras referem-se a uma sessão do BGP em um determinado Cloud Router. As métricas do Cloud Router são mostradas como router-name. Já as métricas das sessões do BGP são mostradas como router-name(bgp-name).

Ciclos de upgrade do Cloud Router

O upgrade do Cloud Router é feito periodicamente. Esse processo leva menos de 60 segundos, e o Cloud Router fica indisponível durante o upgrade. O temporizador de espera do BGP determina o tempo durante o qual as rotas coletadas são preservadas quando o roteador BGP de mesmo nível não está disponível. Esse temporizador assume o menor valor nos dois lados. O Cloud Router usa um valor de 60 segundos para o temporizador de espera do BGP. Recomendamos que você defina o temporizador de espera do BGP para 60 segundos ou mais (o valor padrão é de três minutos). Os dois roteadores preservarão as rotas durante os upgrades e o tráfego continuará a fluir.

Durante os ciclos de manutenção com apenas um gateway da VPN, o uso do Cloud Router adiciona cerca de 20 segundos ao tempo de recuperação do túnel. Isso ocorre porque a sessão do BGP é redefinida e as rotas devem ser coletadas novamente. Normalmente, o tempo de recuperação do gateway da VPN é de cerca de um minuto. Quando há gateways da VPN redundantes, o tráfego não é afetado, porque apenas um gateway da VPN é desativado por vez.

Solução de problemas

Se o tráfego não estiver passando pelo túnel depois que você concluir as etapas, faça as verificações a seguir:

  • Verifique se as configurações do dispositivo de mesmo nível (no roteador do BGP local) e as configurações do Cloud Router estão corretas.
  • Verifique o status do Cloud Router. Verifique se o state da sessão do BGP é ESTABLISHED.
  • Verifique se o status do túnel é ESTABLISHED. Se não for, consulte Solução de problemas da VPN para ajudar a descobrir o problema.

Cotas e limites

  • Em cada projeto, é possível configurar:
    • no máximo 10 Cloud Routers;
    • no máximo cinco Cloud Routers por região e por rede;
    • Configure um máximo de 64 interfaces, peers de BGP e túneis VPN em todos os roteadores em uma região, em determinada rede VPC. Eles podem estar todos em um roteador ou ser distribuídos em vários;
    • no máximo 100 rotas por Cloud Router.
  • O Cloud Router só programará as rotas coletadas na região em que estiver configurado.
  • Os prefixos aprendidos são limitados a 100 por região por rede em todos os Cloud Routers naquela rede VPC. Apenas as melhores rotas para cada prefixo são programadas, com base na métrica da rota; assim, se o mesmo prefixo for coletado em vários túneis, apenas as melhores rotas serão programadas para esse prefixo.

Recomendações

  • Habilite o Graceful Restart no dispositivo par do BGP.
  • Se o Graceful Restart não for compatível ou não estiver ativado em seu dispositivo, configure dois dispositivos de mesmo nível com um túnel cada para criar redundância.
  • Para conseguir máxima confiabilidade, configure túneis e gateways da VPN do Cloud redundantes da maneira mostrada em Redundância para gateways da VPN não compatíveis com Graceful Restart, mesmo se o dispositivo de mesmo nível for compatível com o Graceful Restart.
  • Para conectar sua rede local a vários projetos do GCP usando o roteamento dinâmico, use VPC compartilhado e VPN com o Cloud Router. Crie uma rede de projetos host de VPC compartilhada e conecte-a à sua rede local. Em seguida, compartilhe essa rede com projetos de serviço que exigem acesso à rede local. Os projetos de serviço podem usar o Cloud Router e a VPN no projeto host para se comunicar com a rede local. O Cloud Router não é compatível com propagação de rota para outros Cloud Routers. Por exemplo, não é possível criar uma rede hub e spoke no GCP.

Perguntas frequentes

  • Posso conectar um Cloud Router a vários gateways da VPN do Cloud na mesma região?

    • Sim, essa é a configuração ideal recomendada quando você tem várias instâncias de gateways da VPN na mesma região do Cloud Router.
  • A documentação indica que o Cloud Router só pode programar rotas coletadas na região em que está. Quero que meus dispositivos da VPN locais se conectem a instâncias do Google Cloud Platform em mais de uma região. Como posso fazer isso?

    • Se você precisar que os dispositivos da VPN de mesmo nível se conectem a instâncias em mais de uma região, crie um Cloud Router, um túnel e um gateway da VPN do Google em cada região.
  • Qual é a recomendação para o Graceful Restart do BGP no dispositivo local?

    • Ative o Graceful Restart no dispositivo do BGP.
    • O Graceful Restart é ativado por padrão para o Cloud Router.
  • De quanto tempo é o período de Graceful Restart?

    • O BGP do Cloud Router tem um período de Graceful Restart de aproximadamente dois minutos.
  • Vocês recomendam a implantação redundante de dispositivos de mesmo nível com um túnel mesmo que eles já tenham o Graceful Restart ativado?

    • Se você quiser ter o máximo de alta disponibilidade, implante dispositivos de mesmo nível redundantes com um túnel cada, mesmo se o Graceful Restart estiver ativado. Isso vai proteger você no caso de falhas não transitórias, como ocorre quando um dos dispositivos de mesmo nível ou um dos túneis falha, mas não volta a funcionar.
  • O Cloud Router funciona com redes VPC?

    • Sim, o Cloud Router funciona com redes VPC e redes legadas.
  • Onde posso encontrar detalhes sobre como configurar a VPN do Cloud e o Cloud Router com outros gateways da VPN?

  • Qual é o código do meu roteador do BGP?

    • Algumas entradas do registro referem-se ao "código de roteador do BGP". Esse código é atribuído ao roteador automaticamente com base no endereço IP de uma das interfaces dele.
  • Posso configurar uma rota estática para o mesmo prefixo de uma rota dinâmica coletada pelo Cloud Router?

    • Sim, é possível realizar essa configuração. Nesses casos, uma métrica é usada para selecionar a melhor rota. Caso as duas tenham a mesma métrica, a rota estática é usada.

Monitore seus recursos de onde você estiver

Instale o app do Google Cloud Console para ajudar você a gerenciar seus projetos.

Enviar comentários sobre…

Compute Engine Documentation