O Centro de conectividade de rede permite-lhe usar um dispositivo virtual de rede de terceiros para estabelecer a conetividade entre um site externo e os recursos de rede da sua nuvem virtual privada (VPC). Para estabelecer a conetividade desta forma, usa a funcionalidade do dispositivo de encaminhamento.
O dispositivo de router é um dos vários tipos de raios suportados para o Network Connectivity Center. Para informações sobre o Network Connectivity Center, consulte a vista geral do Network Connectivity Center. Para mais informações sobre o dispositivo Router, consulte a vista geral do dispositivo Router.
Configuração de exemplo
Na topologia seguinte, um site externo liga-se a duas redes VPC através de um spoke de dispositivo de router.
A VM que aloja a instância do dispositivo de router tem uma interface em cada rede VPC. A instância do dispositivo de router mantém sessões do protocolo de gateway de fronteira (BGP) com os Cloud Routers em ambas as redes.
Cada Cloud Router tem duas interfaces. A interface do dispositivo de encaminhamento em cada rede estabelece uma relação de pares com ambas as interfaces do Cloud Router adequado, num total de quatro sessões de peering.
Tarefas necessárias
Para configurar a configuração de exemplo, certifique-se de que cumpre os pré-requisitos para realizar este procedimento e, em seguida, conclua as tarefas necessárias:
Crie a máquina virtual (VM) do Compute Engine que funciona como uma instância de dispositivo de encaminhamento. Pode criar a VM através de uma solução de parceiros suportada ou da sua própria imagem personalizada.
Certifique-se de que a instância do dispositivo de router está acessível ao tráfego BGP através da porta TCP 179. Para o tornar acessível, pode ter de criar regras de firewall.
Crie dois raios, um em cada rede de VPC. Cada spoke usa a mesma instância do dispositivo de router que o respetivo recurso de apoio.
Configure dois Cloud Routers, um em cada rede de VPC. Para cada Cloud Router, esta tarefa inclui as seguintes subtarefas:
Crie um Cloud Router na mesma região que a instância do dispositivo de router.
Crie duas interfaces em cada Cloud Router.
Configure a interligação BGP em cada Cloud Router.
Configure a interligação BGP na instância do dispositivo de encaminhamento.
A forma como conclui estas tarefas pode variar significativamente. Por exemplo, se criar uma instância de dispositivo de encaminhamento através de uma solução de parceiros, algumas das tarefas posteriores podem ser automatizadas para si.
Antes de começar
Antes de começar, reveja as secções seguintes.
Crie ou selecione um projeto
Para facilitar a configuração do Network Connectivity Center, comece por identificar um projeto válido.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
Se estiver a usar a CLI do Google Cloud, defina o ID do projeto com o comando
gcloud config set
.gcloud config set project PROJECT_ID
Substitua
PROJECT_ID
pelo seu ID do projeto exclusivo.As instruções da CLI gcloud nesta página pressupõem que definiu o ID do projeto.
Para confirmar que definiu o ID do projeto corretamente, use o comando
gcloud config list
.gcloud config list --format='text(core.project)'
Na Google Cloud consola, aceda à página Centro de conetividade de rede.
Clique em Ativar.
- Nome:
subnet-a
- Região:
us-central1
- Intervalo:
10.1.3.0/24
- Nome:
subnet-b
- Região:
us-central1
- Intervalo:
192.168.10.0/24
NAME
: o nome da sub-rede que contém a VM do dispositivo de encaminhamento, por exemplo,subnet-a
ousubnet-b
NETWORK
: a rede que contém a sub-rede, por exemplo,network-a
ounetwork-b
REGION
: a região que contém a sub-rede, por exemplo,us-central1
RANGE
: o intervalo de IP da sub-rede na notação CIDR, por exemplo,10.1.3.0/24
ou192.168.10.0/24
Uma solução fornecida por um parceiro do Network Connectivity Center suportado
Uma imagem personalizada, como uma imagem que criou
- Vista geral das imagens
- Práticas recomendadas para famílias de imagens
- Criar, eliminar e descontinuar imagens personalizadas
Se quiser seguir as convenções de nomenclatura usadas na configuração de exemplo, use os seguintes valores:
- Nome:
router-app-a
- Região:
us-central1
- Zona:
us-central1-a
- Nome:
Para selecionar uma imagem, aceda à área Disco de arranque da página, clique em Alterar e navegue até à imagem adequada para a VM.
Expanda Opções avançadas e, de seguida, expanda Redes. Use os seguintes valores:
- Em Encaminhamento de IP, selecione Ativar.
- Em Interfaces de rede, crie duas interfaces: uma em
network-a
e outra emnetwork-b
. Para criar cada interface, selecione a rede adequada e, de seguida, clique em Adicionar uma interface de rede. Preencha os seguintes campos:- Selecione a sub-rede onde quer localizar a instância do dispositivo de router, por exemplo,
subnet-a
ousubnet-b
. - Em IP interno principal, selecione o endereço IP interno RFC 1918 reservado que quer usar, por exemplo,
10.1.3.8
ou192.168.10.3
. - Em Nível de serviço de rede, selecione Premium. Esta opção maximiza a medida em que o tráfego usa a rede da Google.
- Selecione a sub-rede onde quer localizar a instância do dispositivo de router, por exemplo,
INSTANCE_NAME
: o nome da VM que funciona como uma instância de dispositivo de encaminhamento, por exemplo,router-app-a
ourouter-app-b
PROJECT
: o nome do projeto que contém as VMs do dispositivo de encaminhamento, por exemplo,my-project
ZONE
: a zona em que a VM está localizada, por exemplo,us-west1-a
Google CloudMACHINE_TYPE
: o recurso de tipo de máquina a usar para a VM, por exemplo,n1-standard-2
NETWORK_TIER
: quando criar as VMs do dispositivo de router, defina o nível de rede comopremium
; esta escolha maximiza a extensão em que o tráfego usa a rede da GoogleSUBNET
: a sub-rede atribuída à interface de rede principal da VM, por exemplo,subnet-a-1
INTERNAL_IP_ADDRESS
: o endereço IP interno RFC 1918 atribuído à interface da VM que se liga ao Cloud Router, por exemplo,10.0.1.10
IMAGE_PROJECT
: o nome do projeto que contém a imagem especificada no campoimage
, por exemplo,debian-cloud
IMAGE
: o nome da imagem a instalar, por exemplo,debian-10-buster-v20210217
PROJECT
: o nome do projeto que contém as VMs do dispositivo de encaminhamento, por exemplo,my-project
ZONE
: a zona em que a VM está localizada, por exemplo,us-west1-a
Google CloudMACHINE_TYPE
: o recurso de tipo de máquina a usar para a VM, por exemplo,zones/us-west1-a/machineTypes/n1-standard-2
INSTANCE_NAME
: o nome da VM, por exemplo,router-app-a
ourouter-app-b
REGION
: a região que contém a VM, por exemplo,us-west1
SUBNET
: a sub-rede atribuída à interface de rede principal da VM, por exemplo,regions/us-west1/subnetworks/subnet-a-1
INTERNAL_IP_ADDRESS
: o endereço IP interno RFC 1918 atribuído à VM; configure o endereço para a interface da VM que se liga ao Cloud Router, por exemplo,10.0.1.10
NETWORK_TIER
: quando criar as VMs do dispositivo de router, defina o nível de rede comopremium
; esta escolha maximiza a extensão em que o tráfego usa a rede da GoogleIMAGE_PROJECT
: o nome do projeto que contém a imagem especificada quando cria a VM, por exemplo,debian-cloud
IMAGE
: o nome da imagem a usar ao criar a VM, por exemplo,debian-10-buster-v20210217
Na Google Cloud consola, aceda à página Centro de conetividade de rede.
No menu do projeto, selecione um projeto.
Introduza um Nome do hub.
Introduza uma Descrição opcional.
Valide o ID do projeto. Se o ID do projeto estiver incorreto, selecione um projeto diferente através do menu na parte superior do ecrã.
Clique em Continuar.
A consola apresenta um formulário que lhe permite criar um spoke. Para o preencher já, siga os passos descritos no artigo Crie um spoke do dispositivo Router.
Clique em Concluído.
HUB_NAME
: o nome do novo hubDESCRIPTION
: texto opcional que descreve o hubKEY
: a chave no par de chave-valor para o texto da etiqueta opcionalVALUE
: o valor no par de chave-valor para o texto da etiqueta opcionalPROJECT_ID
: o ID do projeto que contém o novo hubHUB_NAME
: o nome do novo hubDESCRIPTION
: texto opcional que descreve o hubKEY
: a chave no par de chave-valor para o texto da etiqueta opcionalVALUE
: o valor no par de chave-valor para o texto da etiqueta opcionalNa Google Cloud consola, aceda à página Centro de conetividade de rede.
No menu do projeto, selecione um projeto.
Clique no separador Spokes.
Clique em Adicionar raios.
No formulário Novo raio, defina o Tipo de raio como Dispositivo de encaminhamento.
Introduza um nome do raio, por exemplo,
spoke-a
ouspoke-b
Opcionalmente, introduza uma Descrição.
Selecione o campo Região para o novo spoke.
Em Transferência de dados de site para site, selecione Desativar.
Na lista pendente Rede de VPC, selecione uma rede.
- Em Anexe instâncias ao spoke, use a lista pendente
para selecionar um dispositivo de encaminhamento, por exemplo,
router-app-a
. - Para adicionar mais instâncias de dispositivo de encaminhamento a este spoke, clique em Adicionar instância e repita o passo anterior.
- Quando terminar, clique em Concluído e continue para guardar o raio.
- Para adicionar os segundos raios, clique em Adicionar raio e comece o processo novamente, começando por introduzir um Nome do raio.
- Quando terminar de adicionar raios, clique em Criar. A página Centro de conectividade de rede é atualizada para mostrar detalhes sobre os spokes que criou.
NAME
: o nome do spoke, por exemplo,spoke-a
HUB_URI
: o URI do hub ao qual está a anexar o spokeDESCRIPTION
: texto opcional que descreve o raioROUTER_APPLIANCE_URI
: o URI da instância do dispositivo router, por exemplo:https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
IP_ADDRESS
: o endereço IP interno da instância do dispositivo de encaminhamento, na rede VPC adequada, por exemplo,10.1.3.8
ou192.168.10.3
REGION
: a Google Cloud região onde quer localizar o spoke, por exemplo,us-central1
KEY
: a chave no par de chave-valor para o texto da etiqueta opcionalVALUE
: o valor no par de chave-valor para o texto da etiqueta opcionalPor exemplo, o seguinte comando cria um spoke de dispositivo de encaminhamento que usa
router-app-a
como os respetivos recursos subjacentes. Este comando faz referência à instância do dispositivo de encaminhamento através da respetiva interfacenetwork-a
:gcloud network-connectivity spokes linked-router-appliances create spoke-a \ --hub=my-hub \ --description="Test spoke 1" \ --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=10.1.3.8 \ --region=us-central1 \
Por exemplo, o seguinte comando cria um spoke de dispositivo de encaminhamento que usa
router-app-a
como os respetivos recursos subjacentes. Este comando faz referência à instância do dispositivo de encaminhamento através da respetiva interfacenetwork-b
:gcloud network-connectivity spokes linked-router-appliances create spoke-b \ --hub=my-hub \ --description="Test spoke 1" \ --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=192.168.10.3\ --region=us-central1 \
PROJECT_ID
: o ID do projetoREGION
: a Google Cloud região onde quer localizar o spoke, por exemplo,us-west1
SPOKE_NAME
: o nome que quer dar ao raioHUB_URI
: o URI do hub ao qual está a associar o spoke, por exemplo:http://networkconnectivity.googleapis.com/v1/projects/PROJECT_NAME/locations/global/hubs/HUB_NAME
KEY
: a chave no par de chave-valor para o texto da etiqueta opcionalVALUE
: o valor no par de chave-valor para o texto da etiqueta opcionalROUTER_APPLIANCE_URI
: o URI da instância do dispositivo router, por exemplo:https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
IP_ADDRESS
: o endereço IP interno da instância do dispositivo de encaminhamento para a rede VPC adequada, por exemplo,10.1.3.8
ou192.168.10.3
BOOLEAN
: um valor que determina se a transferência de dados de site para site está ativada para este spoke; para este exemplo de utilização, defina a opção comofalse
Por exemplo, para criar um raio que use
router-app-a
para a interface emnetwork-a
, o corpo do seu pedido deve ser estruturado da seguinte forma:{ "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub", "labels": { "environment" : "test" }, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a", "ipAddress": "10.1.3.8", }, ], "siteToSiteDataTransfer": false } }
Para criar um raio que use
router-app-a
para a interface emnetwork-b
, o corpo do seu pedido deve ser estruturado da seguinte forma:{ "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub", "labels": { "environment" : "test" }, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a", "ipAddress": "192.168.10.3", }, ], "siteToSiteDataTransfer": false } }
Use a página Cloud Router, conforme descrito em Crie um Cloud Router.
Use a página Network Connectivity Center. A vantagem desta abordagem é que permite criar o router, as interfaces e as sessões BGP ao mesmo tempo. Para mais informações sobre como concluir todos estes passos em conjunto, consulte o artigo Configurar a interligação BGP no Cloud Router.
NAME
: o nome do Cloud Router, por exemplo,cloud-router-a
oucloud-router-b
REGION
: a região que contém o Cloud Router, por exemplo,us-central1
NETWORK
: a rede VPC que contém o Cloud Router, por exemplo,network-a
ounetwork-b
ASN
: o número do sistema autónomo (ASN) para o router na nuvem. Este ASN tem de ser um ASN privado de 16 ou 32 bits, conforme definido na RFC 6996. Por exemplo,65000
PROJECT_ID
: o ID do projeto do Cloud Router, por exemplo,my-project
PROJECT_ID
: o ID do projeto do Cloud Router, por exemplo,my-project
REGION
: a região que contém o Cloud Router, por exemplo,us-central1
NAME
: o nome do Cloud Router, por exemplo,cloud-router-a
oucloud-router-b
NETWORK
: o URI da rede VPC que contém o Cloud Router, por exemplo,/global/networks/network-a
ou/global/networks/network-b
ASN
: o número do sistema autónomo (ASN) para o router na nuvem. Este ASN tem de ser um ASN privado de 16 ou 32 bits, conforme definido na RFC 6996. Por exemplo,65000
- Para
cloud-router-a
, crie duas interfaces emsubnet-a
. - Para
cloud-router-b
, crie duas interfaces emsubnet-b
. Para cada Cloud Router, crie a primeira interface:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=FIRST_INTERFACE_NAME \ --ip-address=FIRST_INTERFACE_IP_ADDRESS \ --subnetwork=SUBNET \ --region=REGION \ --project=PROJECT_ID
Substitua o seguinte:
ROUTER_NAME
: o nome do Cloud Router a atualizar, por exemplo,cloud-router-a
oucloud-router-b
FIRST_INTERFACE_NAME
: o nome da interface, por exemplo,interface-1
FIRST_INTERFACE_IP_ADDRESS
: o endereço IP interno RFC 1918 a usar para a primeira interface; se não especificar um valor, a Google tenta encontrar um endereço livre no intervalo de endereços IP principal da sub-redeSUBNET
: a sub-rede que contém a interface do Cloud Router e a interface da instância do dispositivo do router correspondenteREGION
: a Google Cloud região onde o Cloud Router está, por exemplo,us-central1
PROJECT_ID
: o ID do projeto do Cloud Router, por exemplo,my-project
Para cada router na nuvem, crie a segunda interface:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=SECOND_INTERFACE_NAME \ --ip-address=SECOND_INTERFACE_IP_ADDRESS \ --subnetwork=SUBNET \ --redundant-interface=FIRST_INTERFACE_NAME \ --region=REGION \ --project=PROJECT_ID
Substitua o seguinte:
ROUTER_NAME
: o nome do Cloud Router a atualizar, por exemplo,cloud-router-a
oucloud-router-b
SECOND_INTERFACE_NAME
: o nome da interface, por exemplo,interface-2
SECOND_INTERFACE_IP_ADDRESS
: o endereço IP interno RFC 1918 a usar para a segunda interface; se não especificar um valor, a Google tenta encontrar um endereço livre no intervalo de endereços IP principal da sub-redeSUBNET
: a sub-rede que contém as duas interfaces do Cloud Router e a interface da instância do dispositivo do router correspondenteFIRST_INTERFACE_NAME
: o nome da interface que criou no passo 1REGION
: a Google Cloud região onde o Cloud Router está, por exemplo,us-central1
PROJECT_ID
: o ID do projeto do Cloud Router, por exemplo,my-project
Exemplos de comandos para
cloud-router-a
O seguinte comando cria a primeira interface em
cloud-router-a
:gcloud compute routers add-interface cloud-router-a \ --interface-name=interface-1 \ --ip-address=10.1.3.14 \ --subnetwork=subnet-a \ --region=us-central1 \ --project=my-project
O comando seguinte cria a segunda interface em
cloud-router-a
:gcloud compute routers add-interface cloud-router-a \ --interface-name=interface-2 \ --ip-address=10.1.3.15 \ --subnetwork=subnet-a \ --redundant-interface=interface-1 \ --region=us-central1 \ --project=my-project
Exemplos de comandos para
cloud-router-b
O seguinte comando cria a primeira interface em
cloud-router-b
:gcloud compute routers add-interface cloud-router-b \ --interface-name=interface-1 \ --ip-address=192.168.10.14 \ --subnetwork=subnet-b \ --region=us-central1 \ --project=my-project
O comando seguinte cria a segunda interface em
cloud-router-b
:gcloud compute routers add-interface cloud-router-b \ --interface-name=interface-2 \ --ip-address=192.168.10.15 \ --subnetwork=subnet-b \ --redundant-interface=interface-1 \ --region=us-central1 \ --project=my-project
PROJECT_ID
: o ID do projeto do Cloud Router, por exemplo,my-project
REGION
: a Google Cloud região onde o Cloud Router está, por exemplo,us-central1
NAME
: o nome do Cloud Router a atualizar, por exemplo,cloud-router-a
oucloud-router-b
NETWORK
: a rede VPC que contém o Cloud Router, por exemplo,network-a
FIRST_INTERFACE_NAME
: o nome da primeira interface, por exemplo,interface-1
FIRST_INTERFACE_IP_ADDRESS
: o endereço IP interno RFC 1918 a usar para a primeira interface; se não especificar um valor, a Google tenta encontrar um endereço livre no intervalo de endereços IP principal da sub-redeSUBNET
: a sub-rede que contém as duas interfaces do Cloud Router e a interface da instância do dispositivo do router correspondenteSECOND_INTERFACE_NAME
: o nome da segunda interface, por exemplo,interface-2
SECOND_INTERFACE_IP_ADDRESS
: o endereço IP interno RFC 1918 a usar para a segunda interface; se não especificar um valor, a Google tenta encontrar um endereço livre no intervalo de endereços IP principal da sub-redeExemplos de comandos para
cloud-router-a
O seguinte comando cria duas interfaces em
cloud-router-a
:"PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-a { "region":"us-central1", "interfaces":[ { "name":"router-appliance-interface-0", "privateIpAddress:"10.1.3.14", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a" }, { "name":"router-appliance-interface-1", "privateIpAddress:"10.1.3.15", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a", "redundantInterface": "router-appliance-interface-0" } ] }
Exemplo de comando para
cloud-router-b
O seguinte comando cria duas interfaces em
cloud-router-b
:"PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-b { "region":"us-central1", "interfaces":[ { "name":"router-appliance-interface-0", "privateIpAddress:"192.168.10.14", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b" }, { "name":"router-appliance-interface-1", "privateIpAddress:"192.168.10.15", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b", "redundantInterface": "router-appliance-interface-0" } ] }
Crie duas sessões de intercâmbio entre
cloud-router-a
e a interfacenetwork-a
derouter-app-a
.Crie duas sessões de intercâmbio entre
cloud-router-b
e a interfacenetwork-b
derouter-app-a
.- Aceda à página Network Connectivity Center. Aceder ao Network Connectivity Center
- No menu do projeto, selecione um projeto.
- Clique no separador Spokes.
- Na coluna Nome do spoke, selecione um spoke para ver a página
Detalhes do spoke. Por exemplo, selecione
spoke-a
ouspoke-b
. Na coluna Nome, localize
router-app-a
. Clique no ícone de expansão para apresentar os links Configurar sessão BGP. Clique num destes links. Em resposta, o sistema apresenta o painel Configurar sessões de BGP e Cloud Router.-
Na secção Router na nuvem, faça uma das seguintes ações:
- Para selecionar um Cloud Router existente, clique em Usar existente. Use o campo Cloud Router para identificar o recurso adequado e, de seguida, clique em Selecionar e continuar.
- Para criar um Cloud Router na página Network Connectivity Center, clique em Criar novo e siga as instruções para criar o Cloud Router. Em seguida, clique em Criar e continuar.
- Em Sessões de BGP, configure as duas sessões de BGP. Conclua os
seguintes passos duas vezes, uma para cada sessão:
- Clique em Editar sessão BGP.
- Preencha o formulário introduzindo um Nome, um ASN de pares e uma Prioridade de rota anunciada (MED). Clique em Guardar e continuar.
- Clique em Criar.
Crie o primeiro ponto de troca BGP:
gcloud compute routers add-bgp-peer NAME \ --peer-name=PEER_NAME \ --interface=INTERFACE \ --peer-ip-address=PEER_IP_ADDRESS \ --peer-asn=PEER_ASN \ --instance=ROUTER_APPLIANCE \ --instance-zone=ROUTER_APPLIANCE_ZONE \ --region=REGION
Crie o segundo ponto de troca de tráfego BGP:
gcloud compute routers add-bgp-peer NAME \ --peer-name=PEER_NAME \ --interface=INTERFACE \ --peer-ip-address=PEER_IP_ADDRESS \ --peer-asn=PEER_ASN \ --instance=ROUTER_APPLIANCE \ --instance-zone=ROUTER_APPLIANCE_ZONE \ --region=REGION
Substitua o seguinte:
NAME
: o nome do Cloud Router a atualizar, por exemplo,cloud-router-a
oucloud-router-b
PEER_NAME
: o nome da sessão de peering de BGP a estabelecer com a instância do dispositivo de routerINTERFACE
: o nome da interface para este par BGPPEER_IP_ADDRESS
: o endereço IP interno do router de pares (a instância do dispositivo de router), por exemplo,10.1.3.8
ou192.168.10.3
PEER_ASN
: o número do sistema autónomo (ASN) do BGP para este par do BGP. Este ASN tem de ser um ASN privado de 16 ou 32 bits conforme definido na RFC 6996ROUTER_APPLIANCE
: o nome da VM que atua como a instância do dispositivo de encaminhamento, por exemplo,router-app-a
ROUTER_APPLIANCE_ZONE
: a zona onde se encontra a VM que atua como a instância do dispositivo de router. Por exemplo,us-central1-a
REGION
: a região onde a VM que funciona como a instância do dispositivo de encaminhamento está localizada, por exemplo,us-central1
Exemplos de comandos para
cloud-router-a
Use os seguintes comandos para criar os pares BGP para
cloud-router-a
:gcloud compute routers add-bgp-peer cloud-router-a \ --peer-name=router-appliance-bgp-peer-router-app-a-0 \ --interface=router-appliance-interface-0 \ --peer-ip-address=10.1.3.8 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
gcloud compute routers add-bgp-peer cloud-router-a \ --peer-name=router-appliance-bgp-peer-router-app-a-1 \ --interface=router-appliance-interface-1 \ --peer-ip-address=10.1.3.8 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
Exemplos de comandos para
cloud-router-b
Use os seguintes comandos para criar os pares BGP para
cloud-router-b
:gcloud compute routers add-bgp-peer cloud-router-b \ --peer-name=router-appliance-bgp-peer-router-app-a-0 \ --interface=router-appliance-interface-0 \ --peer-ip-address=192.168.10.3 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
gcloud compute routers add-bgp-peer cloud-router-b \ --peer-name=router-appliance-bgp-peer-router-app-a-1 \ --interface=router-appliance-interface-1 \ --peer-ip-address=192.168.10.3 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
PROJECT_ID
: o ID do projeto do Cloud RouterREGION
: a região onde a VM que atua como a instância do dispositivo de encaminhamento está localizadaNAME
: o nome do Cloud Router a atualizarPEER_NAME
: o nome da sessão de peering de BGP a estabelecer com a instância do dispositivo de routerINTERFACE_NAME
: o nome da interface do Cloud Router à qual adicionar o parIP_ADDRESS
: o endereço IP interno RFC 1918 do router na nuvem a usar para a sessão de peeringPEER_IP_ADDRESS
: o endereço IP interno da VM que atua como uma instância de dispositivo de router; por exemplo,10.1.3.8
ou192.168.10.3
ROUTER_APPLIANCE_INSTANCE
: o nome no formato de URL para a VM que atua como a instância do dispositivo de encaminhamentoROUTER_APPLIANCE_ZONE
: a zona onde se encontra a VM que atua como instância do dispositivo de routerPEER_ASN
: o número do sistema autónomo (ASN) do BGP para este par do BGP. Este ASN tem de ser um ASN privado de 16 ou 32 bits conforme definido na RFC 6996Exemplos de comandos para
cloud-router-a
PATCH https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-a { "bgpPeers": [ { "name": "router-appliance-bgp-peer-router-app-a-0", "interfaceName": "router-appliance-interface-0", "ipAddress": "10.1.3.14", "peerIpAddress": "10.1.3.8", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001, } { "name": "router-appliance-bgp-peer-router-app-a-1", "interfaceName": "router-appliance-interface-1", "ipAddress": "10.1.3.15", "peerIpAddress": "10.1.3.8", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001 } ] }
Exemplos de comandos para
cloud-router-b
PATCH https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-b { "bgpPeers": [ { "name": "router-appliance-bgp-peer-router-app-a-0", "interfaceName": "router-appliance-interface-0", "ipAddress": "192.168.10.14", "peerIpAddress": "192.168.10.3", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001, } { "name": "router-appliance-bgp-peer-router-app-a-1", "interfaceName": "router-appliance-interface-1", "ipAddress": "192.168.10.15, "peerIpAddress": "192.168.10.3", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001 } ] }
- Para eliminar uma instância de dispositivo de encaminhamento, consulte o artigo Elimine instâncias de dispositivos de encaminhamento.
- Para ver uma lista de parceiros cujas soluções estão integradas com o Network Connectivity Center, consulte Parceiros do Network Connectivity Center.
- Para saber mais sobre os recursos que pode adicionar aos raios, consulte o artigo Raios.
- Para ver informações de monitorização e registo do dispositivo Router, consulte o artigo Ver registos e métricas.
- Para encontrar soluções para problemas de dispositivos de router, consulte a secção Resolução de problemas.
- Para obter informações sobre a interação com o Network Connectivity Center através da API ou da CLI gcloud, consulte o artigo APIs e referência.
Ative a API Network Connectivity
Antes de poder realizar quaisquer tarefas com o Network Connectivity Center, tem de ativar a API Network Connectivity.
Consola
Para ativar a API Network Connectivity:
Em alternativa, pode ativar a API através da Google Cloud biblioteca de APIs da consola, conforme descrito no artigo Ativar APIs.
Obtenha acesso
Para trabalhar com o Network Connectivity Center, precisa das autorizações descritas em Funções e autorizações.
Quando configura o Network Connectivity Center, também trabalha com Google Cloud recursos como redes VPC, sub-redes e regras de firewall. Para mais informações sobre as autorizações de que precisa para trabalhar com estes recursos, consulte a documentação de controlo de acesso do Compute Engine.
Endereços IP e instâncias de dispositivos de encaminhamento
Para configurar uma instância de dispositivo de router, tem de estabelecer o peering entre a instância e o Cloud Router. Para configurar a interligação, a VM tem de usar um endereço IP interno RFC 1918. Não pode estabelecer uma relação de peering entre estes dois recursos se a VM usar um tipo de endereço diferente. Além disso, ambos os endereços IP têm de estar na mesma região.
Para informações sobre como ver os endereços IP de uma VM, consulte os seguintes documentos:
Para ver definições e informações detalhadas sobre os tipos de endereços IP, consulte o artigo Endereços IP.
Reserve um endereço IP interno estático (recomendado)
Recomendamos que atribua um endereço IP interno estático à instância do dispositivo de encaminhamento para que o endereço não se altere durante o reinício. Se o endereço for alterado, a partilha de tráfego BGP falha.
Tem várias opções para atribuir um endereço IP reservado. Pode reservar o endereço IP antecipadamente. Em alternativa, pode reservar o endereço IP quando criar a VM. Se atribuir por engano um endereço efémero à VM, pode converter posteriormente o endereço num endereço estático. Para mais informações acerca de endereços IP estáticos, consulte Reservar endereços IP estáticos.
Endereços IP para peering BGP
Uma instância de dispositivo de encaminhamento usa o respetivo endereço IP interno para estabelecer
interação com o Cloud Router. A instância não usa um endereço link-local (como 169.254.x.x
) para a interligação BGP.
Da mesma forma, o Cloud Router usa dois endereços IP internos RFC 1918 para estabelecer a interligação com a instância do dispositivo de router, um endereço para cada interface. Estes endereços IP podem ser atribuídos manual ou automaticamente a partir da sub-rede que contém a interface da instância do dispositivo de encaminhamento e a interface do Cloud Router.
Crie recursos de VPC
As secções seguintes descrevem como criar redes VPC e sub-redes.
Crie duas redes VPC
Se ainda não o fez, crie duas redes VPC. Defina o modo de encaminhamento dinâmico de cada rede como global
.
Para mais informações sobre a criação de redes VPC, consulte o artigo Criar redes.
Consola
Para criar uma rede VPC personalizada através da Google Cloud consola,
consulte
Criar uma rede de modo personalizado.
Certifique-se de que define o Modo de encaminhamento dinâmico como Global. Se quiser seguir as convenções de nomenclatura usadas na configuração de exemplo, chame as suas redes de network-a
e network-b
.
gcloud
Para criar uma rede VPC personalizada, use o comando
gcloud compute networks create
.
gcloud compute networks create NAME \ --subnet-mode custom \ --bgp-routing-mode global
Substitua NAME
pelo nome da rede VPC, por exemplo, network-a
ou network-b
.
API
Para criar uma rede VPC personalizada através da API Compute Engine, consulte o artigo Usar a VPC.
Crie uma sub-rede
Crie uma sub-rede em network-a
e uma sub-rede em network-b
.
Consola
Para adicionar uma sub-rede através da Google Cloud consola, consulte o artigo Adicionar sub-redes.
Se quiser seguir as convenções de atribuição de nomes usadas na configuração de exemplo, use os seguintes valores para a sub-rede em network-a
:
Use os seguintes valores para a sub-rede em network-b
:
gcloud
Para criar uma sub-rede da VPC, use o comando gcloud compute networks subnets create
.
gcloud compute networks subnets create NAME \ --network=NETWORK \ --region=REGION \ --range=RANGE
Substitua o seguinte:
API
Para criar uma sub-rede da VPC através da API Compute Engine, consulte o artigo Usar a VPC.
Crie a VM do dispositivo de encaminhamento
Crie a VM do Compute Engine que funciona como uma instância de dispositivo de encaminhamento. A VM é representada na topologia de exemplo como router-app-a
. Tem duas interfaces, uma em network-a
e outra em network-b
.
Quando cria a VM, tem de selecionar uma imagem de dispositivo virtual de rede. Esta imagem pode ser qualquer uma das seguintes opções:
Para mais informações sobre como especificar imagens, consulte os seguintes recursos:
Para obter informações detalhadas sobre como criar uma VM, consulte o artigo Criar e iniciar uma instância de VM.
Os exemplos nesta secção pressupõem que reservou endereços IP para a instância do dispositivo de router. Para mais informações, consulte o artigo Endereços IP para o dispositivo Router.
Consola
Para criar a VM usada na configuração de exemplo, consulte o artigo Criar e iniciar uma instância de VM. Quando criar a VM, faça as seguintes escolhas:
gcloud
Para criar as duas VMs de dispositivo de encaminhamento usadas na configuração de exemplo, use o comando gcloud compute instances create
.
Execute o comando duas vezes: uma para cada instância do dispositivo de router. Substitua INSTANCE_NAME pelo nome da VM que funciona como uma instância de dispositivo de router.
No exemplo seguinte, atribui o endereço IP interno estático e o endereço IP externo estático que reservou anteriormente à VM. Também especifica o projeto que contém uma imagem fornecida pelo fornecedor para a VM, juntamente com o nome da imagem.
gcloud compute instances create INSTANCE_NAME \ --project=PROJECT \ --zone=ZONE \ --machine-type=MACHINE_TYPE \ --network-tier=NETWORK_TIER \ --network-interface=[subnet=SUBNET,private-network-ip=INTERNAL_IP_ADDRESS] \ --can-ip-forward \ --image-project=IMAGE_PROJECT \ --image=IMAGE
Substitua o seguinte:
API
Para criar as duas VMs de dispositivo de encaminhamento usadas na configuração de exemplo, use o método compute.instances.insert
.
Para ver métodos de criação adicionais, consulte o artigo Criar e iniciar uma instância de VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "name": "INSTANCE_NAME", "canIpForward": "true", "networkInterfaces": [{ "subnetwork": "regions/REGION/subnetworks/SUBNET", "networkIP": "INTERNAL_IP_ADDRESS", "accessConfigs": [{ "networkTier": "NETWORK_TIER, }] }], "disks": [{ "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true }] }
Substitua o seguinte:
Crie uma regra de firewall para permitir o BGP
Crie duas regras de firewall, uma em network-a
e outra em network-b
. Cada regra deve permitir o tráfego BGP na porta TCP 179
.
Para mais informações sobre os comandos da firewall, consulte o artigo Usar regras da firewall.
Consola
Para criar uma regra de firewall de VPC através da Google Cloud consola, consulte o artigo Criar regras de firewall.
gcloud
Para criar uma regra de firewall de VPC através da Google Cloud CLI, consulte o artigo Criar regras de firewall.
API
Para criar uma regra de firewall da VPC através da API Compute Engine, consulte o artigo Criar regras de firewall.
Crie recursos do Network Connectivity Center
Antes de poder usar uma VM de dispositivo de encaminhamento, tem de criar os recursos do Network Connectivity Center necessários.
Crie um hub
Antes de poder criar raios do Centro de conectividade de rede, tem de criar um hub.
Consola
gcloud
Para criar um hub, use o comando gcloud network-connectivity hubs create
.
gcloud network-connectivity hubs create HUB_NAME \ --description="DESCRIPTION" \ --labels="KEY"="VALUE"
Substitua os seguintes valores:
API
Para criar um hub, use o método networkconnectivity.hubs.create
.
POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs { "name":"HUB_NAME", "description":"DESCRIPTION", "labels": { "KEY": "VALUE" } }
Substitua os seguintes valores:
Crie dois raios do dispositivo router
Crie dois raios de dispositivo Router. Ambos os spokes usam o mesmo recurso de apoio: a instância do dispositivo de encaminhamento que acabou de criar. Um raio
usa a interface em network-a
e o outro usa a interface em network-
b
.
A criação de um spoke é necessária para ativar o peering BGP entre a instância do dispositivo de router e o Cloud Router, que cria no passo seguinte.
Para mais informações sobre como criar um raio, consulte o artigo Trabalhe com hubs e raios.
Consola
Introduza os detalhes básicos do raio
Introduza os detalhes do dispositivo do router
Guarde os raios
gcloud
Para criar os raios do dispositivo Router, use o comando gcloud network-connectivity spokes linked-router-appliances create
.
Execute o comando duas vezes, uma para cada spoke.
gcloud network-connectivity spokes linked-router-appliances create NAME \ --hub="HUB_URI" \ --description="DESCRIPTION" \ --router-appliance=instance="ROUTER_APPLIANCE_URI",ip=IP_ADDRESS \ --region=REGION \ --labels="KEY"="VALUE"
Substitua os seguintes valores:
API
Para criar um spoke de dispositivo Router, use o
networkconnectivity.spokes.create
método.
Para cada instância do dispositivo router que quer associar ao spoke, adicione uma instância usando a matriz linkedRouterApplianceInstances.instances
.
POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME { "hub": "HUB_URI", "labels": {"KEY": "VALUE"}, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "ROUTER_APPLIANCE_URI", "ipAddress": INTERNAL_IP_ADDRESS, }, ], "siteToSiteDataTransfer": BOOLEAN } }
Substitua os seguintes valores:
Configure routers do Cloud Router
O dispositivo de router usa routers da nuvem para trocar trajetos com redes VPC. Por este motivo, tem de criar um Cloud Router em cada rede VPC e concluir algumas outras tarefas de configuração.
Crie os Cloud Routers
Se estiver a usar os mesmos valores que a topologia de exemplo, crie dois Cloud Routers, um em network-a
e outro em network-b
. Ambos os routers do Google Cloud devem estar em us-central1
.
Para mais informações, consulte o artigo Criar routers na nuvem.
Consola
Para criar um Cloud Router na Google Cloud consola, use uma das seguintes abordagens:
gcloud
Para criar um Cloud Router, use o comando
gcloud compute routers create
.
gcloud compute routers create NAME \ --region=REGION \ --network=NETWORK \ --asn=ASN \ --project=PROJECT_ID
Substitua o seguinte:
API
Para criar um Cloud Router, use o
métodocompute.routers.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers { "name": "NAME", "network": "NETWORK", "bgp": { "asn": ASN } }
Substitua o seguinte:
Crie duas interfaces em cada Cloud Router
Para estabelecer a redundância, crie duas interfaces em cada Cloud Router. Em cada Cloud Router, as duas interfaces têm de estar associadas à mesma sub-rede que a interface do dispositivo de encaminhamento correspondente. Se estiver a usar os valores da topologia de exemplo, faça o seguinte:
Cada interface do Cloud Router usa um endereço IP interno regional. Se especificar explicitamente o endereço IP interno da interface, o endereço IP tem de pertencer ao intervalo de endereços IP principal da sub-rede. Não pode estar já a ser usado por outro recurso, como uma VM ou outra interface do Cloud Router.
Não existem Google Cloud instruções da consola para este passo. Se estiver a usar a consola, quando concluir a tarefa seguinte (Criar peering BGP em cada Cloud Router), as interfaces são criadas automaticamente. Google Cloud
gcloud
Para criar interfaces redundantes nos seus Cloud Routers, use o comando
gcloud compute routers add-interface
.
Conclua os passos seguintes duas vezes: uma para cloud-router-a
e outra para cloud-router-b
:
API
Para criar interfaces redundantes nos seus Cloud Routers,
use o método compute.routers.patch
.
Use o seguinte pedido duas vezes: uma para cloud-router-a
e outra para cloud-router-b
:
"PATCH https"://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME { "region":"REGION", "interfaces":[ { "name":"FIRST_INTERFACE_NAME", "privateIpAddress:"FIRST_INTERFACE_IP_ADDRESS", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET" }, { "name":"SECOND_INTERFACE_NAME", "privateIpAddress:"SECOND_INTERFACE_IP_ADDRESS", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET", "redundantInterface": "FIRST_INTERFACE_NAME" } ] }
Substitua o seguinte:
Configure o peering BGP em cada Cloud Router
Para cada interface na instância do dispositivo de encaminhamento, tem de criar duas sessões de peering BGP, uma para cada interface do Cloud Router. Se estiver a usar os valores da topologia de exemplo, faça o seguinte:
Consola
Conclua os passos seguintes duas vezes: uma para spoke-a
e outra para spoke-b
:
gcloud
Para criar pares BGP nos seus Cloud Routers, use o comando
gcloud compute routers add-bgp-peer
.
Conclua os passos seguintes duas vezes: uma para cloud-router-a
e outra para cloud-router-b
:
API
Para criar pares BGP num Cloud Router, use o método
compute.routers.patch
.
Use este método duas vezes: uma para cloud-router-a
e outra para cloud-router-b
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME { "bgpPeers": [ { "name": "PEER_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE", "peerAsn": PEER_ASN, } { "name": "PEER_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE", "peerAsn": PEER_ASN } ] }
Substitua o seguinte:
Configure o BGP na instância do dispositivo de encaminhamento
Configure a instância do dispositivo de router para a conetividade BGP aos dois Cloud Routers. Para o fazer, consulte a documentação do fornecedor da imagem do dispositivo de router.