1. Introducción
Descripción general
En este lab, explorarás algunas de las funciones de Network Connectivity Center.
Network Connectivity Center (NCC) es un modelo de plano de control de concentrador y radio para la administración de la conectividad de red en Google Cloud. El recurso de concentrador proporciona un modelo de administración de conectividad centralizado para conectar radios. Actualmente, NCC admite los siguientes recursos de red como radios:
- Adjuntos de VLAN
- Dispositivos del router
- VPN con alta disponibilidad
Los codelabs requieren el uso de la solución SD-WAN SaaS de flexiWAN, que simplifica la implementación y la administración de la WAN. flexWAN es una solución de código abierto de SD-WAN y SASE.
Qué compilarás
En este codelab, crearás una topología de SD-WAN de concentrador y radio para simular sitios de sucursales remotas que atravesarán la red troncal de Google para la comunicación de sitio a nube y de sitio a sitio.
- Implementarás un par de VM de GCE configuradas para el agente de SD-WAN "flexiWAN" en la VPC central que representa los extremos de cabecera para el tráfico entrante y saliente a GCP.
- Implementa dos routers SD-WAN flexiWAN remotos para representar dos VPCs de sitios de sucursales diferentes
- Para probar la ruta de datos, configurarás tres VMs de GCE para simular clientes locales y un servidor alojado en GCP.
Qué aprenderás
- Usa NCC para interconectar sucursales remotas con una solución de WAN definida por software de código abierto
- Experiencia práctica con una solución de WAN definida por software de código abierto
Requisitos
- Conocimiento de la red de VPC de GCP
- Conocimiento de Cloud Router y del enrutamiento de BGP
- El codelab requiere 6 VPC. Verifica tu cuota:redes y solicita redes adicionales si es necesario, como se muestra en la siguiente captura de pantalla:

2. Objetivos
- Configura el entorno de GCP
- Implementa instancias de borde de flexiWAN en GCP
- Establece un concentrador de NCC y una NVA de borde de flexiWAN como radio
- Configura y administra instancias de flexiWAN con flexiManage
- Configura el intercambio de rutas de BGP entre vpc-app-svcs y la NVA de flexiWAN
- Crea un sitio remoto que simule una sucursal remota del cliente o un centro de datos
- Establece un túnel IPsec entre el sitio remoto y la NVA
- Verifica que los electrodomésticos se hayan implementado correctamente
- Valida la transferencia de datos del sitio a la nube
- Valida la transferencia de datos de sitio a sitio
- Limpia los recursos usados
En este instructivo, se requiere la creación de una cuenta de flexiManage gratuita para autenticar, incorporar y administrar instancias de flexiEdge.
Antes de comenzar
Usa la consola de Google Cloud y Cloud Shell
Para interactuar con GCP, usaremos Google Cloud Console y Cloud Shell a lo largo de este lab.
Google Cloud Console
Puedes acceder a la consola de Cloud en https://console.cloud.google.com.
Configura los siguientes elementos en Google Cloud para facilitar la configuración de Network Connectivity Center:
En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.
Inicia Cloud Shell. En este codelab, se usan variables para facilitar la implementación de la configuración de gcloud en Cloud Shell.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname
Funciones de IAM
El NCC requiere roles de IAM para acceder a APIs específicas. Asegúrate de configurar tu usuario con los roles de IAM de NCC según sea necesario.
Nombre del rol | Descripción | Permisos |
networkconnectivity.networkAdmin | Permite que los administradores de red administren los concentradores y radios. | networkconnectivity.hubs.networkconnectivity.spokes. |
networkconnectivity.networkSpokeManager | Permite agregar y administrar radios en un concentrador. Se usa en la VPC compartida, en la que el proyecto host es propietario del concentrador, pero otros administradores de otros proyectos pueden agregar radios para sus adjuntos al concentrador. | networkconnectivity.spokes.** |
networkconnectivity.networkUsernetworkconnectivity.networkViewer | Permite que los usuarios de la red vean diferentes atributos de los centros y las radios. | networkconnectivity.hubs.getnetworkconnectivity.hubs.listnetworkconnectivity.spokes.getnetworkconnectivity.spokes.listnetworkconnectivity.spokes.aggregatedList |
3. Configura el entorno de lab de redes
Descripción general
En esta sección, implementaremos las redes de VPC y las reglas de firewall.

Simula las redes de sitios de sucursales locales
Esta red de VPC contiene subredes para instancias de VM locales.
Crea las redes y subredes del sitio local:
gcloud compute networks create site1-vpc \
--subnet-mode custom
gcloud compute networks create site2-vpc \
--subnet-mode custom
gcloud compute networks create s1-inside-vpc \
--subnet-mode custom
gcloud compute networks create s2-inside-vpc \
--subnet-mode custom
gcloud compute networks subnets create site1-subnet \
--network site1-vpc \
--range 10.10.0.0/24 \
--region us-central1
gcloud compute networks subnets create site2-subnet \
--network site2-vpc \
--range 10.20.0.0/24 \
--region us-east4
gcloud compute networks subnets create s1-inside-subnet \
--network s1-inside-vpc \
--range 10.10.1.0/24 \
--region us-central1
gcloud compute networks subnets create s2-inside-subnet \
--network s2-inside-vpc \
--range 10.20.1.0/24 \
--region us-east4
Crea reglas de firewall de site1-vpc para permitir lo siguiente:
- SSH, interna, IAP
- ESP, UDP/500, UDP/4500
- Rango 10.0.0.0/8
- Rango 192.168.0.0/16
gcloud compute firewall-rules create site1-ssh \--network site1-vpc \
--allow tcp:22
gcloud compute firewall-rules create site1-internal \
--network site1-vpc \
--allow all \
--source-ranges 10.0.0.0/8
gcloud compute firewall-rules create site1-cloud \
--network site1-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute firewall-rules create site1-vpn \
--network site1-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router
gcloud compute firewall-rules create site1-iap \
--network site1-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
Crea reglas de firewall de site2-vpc para permitir lo siguiente:
- SSH, interna, IAP
- Rango 10.0.0.0/8
- Rango 192.168.0.0/16
gcloud compute firewall-rules create site2-ssh \
--network site2-vpc \
--allow tcp:22
gcloud compute firewall-rules create site2-internal \
--network site2-vpc \
--allow all \
--source-ranges 10.0.0.0/8
gcloud compute firewall-rules create site2-cloud \
--network site1-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute firewall-rules create site2-vpn \
--network site1-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router
gcloud compute firewall-rules create site2-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
Crea reglas de firewall de s1-inside-vpc para permitir lo siguiente:
- SSH, interna, IAP
- Rango 10.0.0.0/8
- Rango 192.168.0.0/16
gcloud compute firewall-rules create s1-inside-ssh \
--network s1-inside-vpc \
--allow tcp:22
gcloud compute firewall-rules create s1-inside-internal \
--network s1-inside-vpc \
--allow all \
--source-ranges 10.0.0.0/8
gcloud compute firewall-rules create s1-inside-cloud \
--network s1-inside-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute firewall-rules create s1-inside-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
Crea reglas de firewall de s2-inside-vpc para permitir lo siguiente:
- SSH, interna, IAP
- Rango 10.0.0.0/8
- Rango 192.168.0.0/16
gcloud compute firewall-rules create s2-inside-ssh \
--network s2-inside-vpc \
--allow tcp:22
gcloud compute firewall-rules create s2-inside-internal \
--network s2-inside-vpc \
--allow all \
--source-ranges 10.0.0.0/8
gcloud compute firewall-rules create s2-inside-cloud \
--network s2-inside-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute firewall-rules create s2-inside-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
Para realizar pruebas, crea las instancias s1-inside-vm y s2-inside-vm.
gcloud compute instances create s1-vm \
--zone=us-central1-a \
--machine-type=e2-micro \
--network-interface subnet=s1-inside-subnet,private-network-ip=10.10.1.3,no-address
gcloud compute instances create s2-vm \
--zone=us-east4-b \
--machine-type=e2-micro \
--network-interface subnet=s2-inside-subnet,private-network-ip=10.20.1.3,no-address
Simula el entorno de red de Cloud de GCP
Para habilitar el tráfico entre sitios de múltiples regiones a través de la red hub-vpc y los radios, debes habilitar el enrutamiento global en la red hub-vpc. Obtén más información sobre el intercambio de rutas de NCC.
- Crea la red
hub-vpcy las subredes:
gcloud compute networks create hub-vpc \
--subnet-mode custom \
--bgp-routing-mode=global
gcloud compute networks subnets create hub-subnet1 \
--network hub-vpc \
--range 10.1.0.0/24 \
--region us-central1
gcloud compute networks subnets create hub-subnet2 \
--network hub-vpc \
--range 10.2.0.0/24 \
--region us-east4
- Crea la red
workload-vpcy las subredes:
gcloud compute networks create workload-vpc \
--subnet-mode custom \
--bgp-routing-mode=global
gcloud compute networks subnets create workload-subnet1 \
--network workload-vpc \
--range 192.168.235.0/24 \
--region us-central1
gcloud compute networks subnets create workload-subnet2 \
--network workload-vpc \
--range 192.168.236.0/24 \
--region us-east4
- Crea reglas de firewall de la VPC central para permitir lo siguiente:
- SSH
- ESP, UDP/500, UDP/4500
- El rango interno 10.0.0.0/8 (que abarca el puerto TCP 179 requerido para la sesión de BGP desde Cloud Router hasta el dispositivo de router)
gcloud compute firewall-rules create hub-ssh \
--network hub-vpc \
--allow tcp:22
gcloud compute firewall-rules create hub-vpn \
--network hub-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router
gcloud compute firewall-rules create hub-internal \
--network hub-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute firewall-rules create hub-iap \
--network hub-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
- Crea reglas de firewall de la VPC de la carga de trabajo para permitir lo siguiente:
- SSH
- El rango interno 192.168.0.0/16 (que abarca el puerto TCP 179 requerido para la sesión de BGP del Cloud Router al dispositivo de router)
gcloud compute firewall-rules create workload-ssh \
--network workload-vpc \
--allow tcp:22
gcloud compute firewall-rules create workload-internal \
--network workload-vpc \
--allow all \
--source-ranges 192.168.0.0/16
gcloud compute --project=$projectname firewall-rules create allow-from-site-1-2 --direction=INGRESS --priority=1000 --network=workload-vpc --action=ALLOW --rules=all --source-ranges=10.10.1.0/24,10.20.1.0/24
gcloud compute firewall-rules create workload-onprem \
--network hub-vpc \
--allow all \
--source-ranges 10.0.0.0/8
gcloud compute firewall-rules create workload-iap \
--network workload-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
- Habilita Cloud NAT en la VPC de la carga de trabajo para permitir que workload1-vm descargue paquetes creando un Cloud Router y una puerta de enlace de NAT
gcloud compute routers create cloud-router-usc-central-1-nat \
--network workload-vpc \
--region us-central1
gcloud compute routers nats create cloudnat-us-central1 \
--router=cloud-router-usc-central-1-nat \
--auto-allocate-nat-external-ips \
--nat-all-subnet-ip-ranges \
--region us-central1
- Crea el
workload1-vmin "us-central1-a" inworkload-VPC. Usarás este host para verificar la conectividad del sitio a la nube.
gcloud compute instances create workload1-vm \
--project=$projectname \
--machine-type=e2-micro \
--image-family debian-10 \
--image-project debian-cloud \
--zone us-central1-a \
--private-network-ip 192.168.235.3 \
--no-address \
--subnet=workload-subnet1 \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo 'Welcome to Workload VM1 !!' | tee /var/www/html/index.html
EOF"
4. Configura dispositivos locales para SD-WAN

Crea la VM local para SD-WAN (dispositivos)
En la siguiente sección, crearemos dispositivos de router site1-nva y site2-nva que actúen como routers locales.
Crear instancias
Crea el dispositivo site1-router llamado site1-nva.
gcloud compute instances create site1-nva \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=site1-subnet \
--network-interface subnet=s1-inside-subnet,no-address \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any \
--can-ip-forward
Crea el dispositivo site2-router llamado site2-nva
gcloud compute instances create site2-nva \
--zone=us-east4-b \
--machine-type=e2-medium \
--network-interface subnet=site2-subnet \
--network-interface subnet=s2-inside-subnet,no-address \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-east4-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any \
--can-ip-forward
5. Instala flexiWAN en site1-nva
Abre una conexión SSH a site1-nva. Si se agota el tiempo de espera, vuelve a intentarlo.
gcloud compute ssh site1-nva --zone=us-central1-a
Instala flexiWAN en site1-nva
sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y
Prepara la VM para el registro del plano de control de flexiWAN.
Una vez que se complete la instalación de flexiWAN, ejecuta el comando fwsystem_checker para verificar la configuración del sistema. Este comando verifica los requisitos del sistema y ayuda a corregir errores de configuración en tu sistema.
- Selecciona la opción
2para una configuración rápida y silenciosa. - luego, sal con 0.
- No cierres la ventana de Cloud Shell.
root@site-1-nva-1:/home/user# fwsystem_checker
<output snipped>
[0] - quit and use fixed parameters
1 - check system configuration
2 - configure system silently
3 - configure system interactively
4 - restore system checker settings to default
------------------------------------------------
Choose: 2
<output snipped>
[0] - quit and use fixed parameters
1 - check system configuration
2 - configure system silently
3 - configure system interactively
4 - restore system checker settings to default
------------------------------------------------
Choose: 0
Please wait..
Done.
=== system checker ended ====
Deja la sesión abierta para los siguientes pasos.
6. Registra site1-nva con el controlador SD-WAN
Estos pasos son necesarios para completar el aprovisionamiento de la NVA de flexiWAN, que se administra desde la consola de flexiManage. Asegúrate de que la organización de flexiWAN esté configurada antes de continuar.
Autentica la NVA de flexiWAN recién implementada con flexiManage usando un token de seguridad. Para ello, accede a la cuenta de flexiManage. El mismo token se puede volver a usar en todos los dispositivos de router.
Selecciona Inventario → Tokens,crea un token y selecciona copiar.

Vuelve a Cloud Shell (site1-nva) y pega el token en el directorio /etc/flexiwan/agent/token.txt. Para ello, realiza lo siguiente:
nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

Activa los enrutadores de sitio en la consola de flexiManage
Accede a la consola de flexiManage para activar site1-nva en el controlador.
En el panel izquierdo, selecciona Inventario → Dispositivos y haz clic en el dispositivo "Desconocido".

Ingresa el nombre de host de site1-nva y aprueba el dispositivo deslizando el dial hacia la derecha.

Selecciona la pestaña "Interfaces".
Busca la columna "Asignado", haz clic en "No" y cambia el parámetro de configuración a "Sí".

Selecciona la pestaña Firewall y haz clic en el signo "+" para agregar una regla de firewall de entrada.
Selecciona la interfaz WAN para aplicar la regla de SSH como se describe a continuación.

Haz clic en "Update Device".
Inicia site1-nva desde el controlador de flexiWAN. Vuelve a Inventory → Devices → site1-nva y selecciona "Start Device".
Estado: Sincronizando

Estado: Sincronizado

El indicador de advertencia se puede ver en Solucionar problemas → Notificaciones. Una vez que los veas, selecciona todos y, luego, márcalos como leídos.

7. Instala flexiWAN en site2-nva
Abre una pestaña nueva y crea una sesión de Cloud Shell. Actualiza las variables para facilitar la implementación de la configuración de gcloud.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname
Abre una conexión SSH a site2-nva. Si se agota el tiempo de espera, vuelve a intentarlo.
gcloud compute ssh site2-nva --zone=us-east4-b
Instala flexiWAN en site2-nva
sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y
Prepara la VM para el registro del plano de control de flexiWAN.
Una vez que se complete la instalación de flexiWAN, ejecuta el comando fwsystem_checker para verificar la configuración del sistema. Este comando verifica los requisitos del sistema y ayuda a corregir errores de configuración en tu sistema.
- Selecciona la opción
2para una configuración rápida y silenciosa. - luego, sal con 0.
- No cierres la ventana de Cloud Shell.
root@site2-nva:/home/user# fwsystem_checker
<output snipped>
[0] - quit and use fixed parameters
1 - check system configuration
2 - configure system silently
3 - configure system interactively
4 - restore system checker settings to default
------------------------------------------------
Choose: 2
<output snipped>
[0] - quit and use fixed parameters
1 - check system configuration
2 - configure system silently
3 - configure system interactively
4 - restore system checker settings to default
------------------------------------------------
Choose: 0
Please wait..
Done.
=== system checker ended ====
8. Registra site2-nva con el controlador SD-WAN
Estos pasos son necesarios para completar el aprovisionamiento de la NVA de flexiWAN, que se administra desde la consola de flexiManage. Asegúrate de que la organización de flexiWAN esté configurada antes de continuar.
Autentica la NVA de flexiWAN recién implementada con flexiManage usando un token de seguridad. Para ello, accede a la cuenta de flexiManage. El mismo token se puede volver a usar en todos los dispositivos de router.
Selecciona Inventario → Tokens, crea un token y selecciona copiar.

Vuelve a Cloud Shell (site2-nva) y pega el token en el directorio /etc/flexiwan/agent/token.txt. Para ello, realiza lo siguiente:
nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

Activa los enrutadores de sitios desde la consola de flexiManage
Accede a la consola de flexiManage para activar site2-nva en el controlador.
En el panel izquierdo, selecciona Inventario → Dispositivos y haz clic en el dispositivo "Desconocido".

Ingresa el nombre de host de site2-nva y aprueba el dispositivo deslizando el dial hacia la derecha.

Selecciona la pestaña "Interfaces".
Busca la columna "Asignado", haz clic en "No" y cambia el parámetro de configuración a "Sí".

Selecciona la pestaña Firewall y haz clic en el signo "+" para agregar una regla de firewall entrante. Selecciona la interfaz WAN para aplicar la regla de SSH como se describe a continuación.

Haz clic en "Update Device".
Inicia el site2-nva desde el controlador de flexiWAN. Vuelve a Inventario → Dispositivos → site2-nva y selecciona “Iniciar dispositivo”.
Estado: Sincronizando

Estado: Sincronizado

El indicador de advertencia se puede ver en Solucionar problemas → Notificaciones. Una vez que los veas, selecciona todos y, luego, márcalos como leídos.

9. Configura dispositivos SD-WAN de Hub
En la siguiente sección, crearás y registrarás los routers de concentrador (hub-r1 y hub-r2) con el controlador de flexiWAN, como se hizo anteriormente con las rutas del sitio.
Abre una pestaña nueva y crea una sesión de Cloud Shell. Actualiza las variables para facilitar la implementación de la configuración de gcloud.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname
Crea instancias de NVA del concentrador
Crea el dispositivo hub-r1:
gcloud compute instances create hub-r1 \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=hub-subnet1 \
--network-interface subnet=workload-subnet1,no-address \
--can-ip-forward \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any
Crea el dispositivo hub-r2:
gcloud compute instances create hub-r2 \
--zone=us-east4-b \
--machine-type=e2-medium \
--network-interface subnet=hub-subnet2 \
--network-interface subnet=workload-subnet2,no-address \
--can-ip-forward \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-east4-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any
10. Instala flexiWAN en las instancias de concentrador para hub-r1
Abre una conexión SSH a hub-r1
gcloud compute ssh hub-r1 --zone=us-central1-a
Instala el agente de flexiWAN en hub-r1
sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y
Prepara las VMs de hub-r1 para el registro de flexiWAN.
Una vez que se complete la instalación de flexiWAN, ejecuta el comando fwsystem_checker para verificar la configuración del sistema. Este comando verifica los requisitos del sistema y ayuda a corregir errores de configuración en tu sistema.
root@hub-r1:/home/user# fwsystem_checker
- Selecciona la opción
2para una configuración rápida y silenciosa. - luego, sal con 0.
- No cierres la ventana de Cloud Shell.
11. Registra las VMs de hub-r1 en el controlador de flexiManage
Autentica la NVA de flexiWAN recién implementada con flexiManage usando un token de seguridad. Para ello, accede a la cuenta de flexiManage.
- Selecciona Inventario → Tokens y copia el token.
Vuelve a Cloud Shell (hub-r1) y pega el token en el directorio /etc/flexiwan/agent/token.txt. Para ello, realiza lo siguiente:
nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter
12. Instala flexiWAN en las instancias de concentrador para hub-r2
Abre una conexión SSH a hub-r2
gcloud compute ssh hub-r2 --zone=us-east4-b
Instala el agente de flexiWAN en ambos hub-r2
sudo su
sudo curl -sL https://deb.flexiwan.com/setup | sudo bash -
apt install flexiwan-router -y
Prepara las VMs de hub-r2 para el registro de flexiWAN.
Una vez que se complete la instalación de flexiWAN, ejecuta el comando fwsystem_checker para verificar la configuración del sistema. Este comando verifica los requisitos del sistema y ayuda a corregir errores de configuración en tu sistema.
root@hub-r2:/home/user# fwsystem_checker
- Selecciona la opción
2para una configuración rápida y silenciosa. - luego, sal con 0.
- No cierres la ventana de Cloud Shell.
13. Registra VMs de hub-r2 en el controlador de flexiManage
Autentica la NVA de flexiWAN recién implementada con flexiManage usando un token de seguridad. Para ello, accede a la cuenta de flexiManage.
- Selecciona Inventario → Tokens y copia el token.
Regresa a Cloud Shell (hub-r2) y pega el token en el directorio /etc/flexiwan/agent/token.txt. Para ello, realiza lo siguiente:
nano /etc/flexiwan/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter
Activa los routers de la unidad central hub-r1 en la consola de flexiManage
Accede a la consola de flexiManage
- Navega a Inventario → Dispositivos.
- Busca y anota que el nombre de host de hub-r1 y hub-r2 es "unknown".

Selecciona el dispositivo desconocido con el nombre de host hub-r1.
- Ingresa el nombre de host de hub-r1.
- Aprueba el dispositivo deslizando el dial hacia la derecha.
Selecciona la pestaña Interfaces.
- Busca la columna "Asignado".
- Junto a la fila de la interfaz, haz clic en "No" para cambiar el parámetro de configuración a "Sí".
Selecciona la pestaña Firewall.
- Haz clic en "+" para agregar una regla de firewall entrante.
- Selecciona la interfaz WAN de la que se heredará la regla.
- Permite el puerto SSH 22 con el protocolo TCP
- Haz clic en "Update Device".
Inicia el dispositivo hub-r1 para SD-WAN desde el controlador de flexiWAN
- Vuelve a Inventario → Dispositivos → hub-r1
Selecciona “Start Device”.
- Espera a que se complete la sincronización y observa el estado "running".
Activa el concentrador de routers Hub-r2 en la consola de flexiManage
Selecciona el dispositivo desconocido con el nombre de host hub-r2.
- Ingresa el nombre de host de hub-r2.
- Aprueba el dispositivo. Desliza el dial hacia la derecha.
Selecciona la pestaña Interfaces.
- Busca la columna "Asignado".
- Junto a la fila de la interfaz, haz clic en "No" para cambiar el parámetro de configuración a "Sí".
Selecciona la pestaña Firewall.
- Haz clic en "+" para agregar una regla de firewall entrante.
- Selecciona la interfaz WAN de la que se heredará la regla.
- Permite el puerto SSH 22 con el protocolo TCP
- Haz clic en Agregar regla.
- Haz clic en "Update Device".
Inicia el dispositivo hub-r2 para SD-WAN desde el controlador de flexiWAN
- Vuelve a Inventory → Devices → hub-r2 y selecciona "Start Device".
- Espera a que se complete la sincronización y observa el estado "running".
14. Network Connectivity Center en GCP Hub

Habilita los servicios de API
Habilita la API de Network Connectivity en caso de que aún no esté habilitada:
gcloud services enable networkconnectivity.googleapis.com
Crea el concentrador de NCC
gcloud network-connectivity hubs create ncc-hub
Create request issued for: [ncc-hub]
Waiting for operation [projects/user-3p-dev/locations/global/operations/operation-1668793629598-5edc24b7ee3ce-dd4c765b-5ca79556] to complete...done.
Created hub [ncc-hub]
Configura ambos dispositivos de router como un radio de NCC
Busca el URI y la dirección IP de hub-r1 y hub-r2, y anota el resultado. Necesitarás esta información en el siguiente paso.
Asegúrate de anotar la dirección IP (192.168.x.x) de las instancias hub-r1 y hub-r2.
gcloud compute instances describe hub-r1 \
--zone=us-central1-a \
--format="value(selfLink.scope(projects))"
gcloud compute instances describe hub-r1 --zone=us-central1-a | grep "networkIP"
gcloud compute instances describe hub-r2 \
--zone=us-east4-b \
--format="value(selfLink.scope(projects))"
gcloud compute instances describe hub-r2 --zone=us-east4-b | grep "networkIP"
Agrega la VNIC networkIP (192.168.x.x) de hub-r1 como radio y habilita la transferencia de datos de sitio a sitio.
gcloud network-connectivity spokes linked-router-appliances create s2s-wrk-cr1 \
--hub=ncc-hub \
--router-appliance=instance="https://www.googleapis.com/compute/projects/$projectname/zones/us-central1-a/instances/hub-r1",ip=192.168.235.4 \
--region=us-central1 \
--site-to-site-data-transfer
Agrega la VNIC networkIP de hub-r2 (192.168.x.x) como radio y habilita la transferencia de datos de sitio a sitio.
gcloud network-connectivity spokes linked-router-appliances create s2s-wrk-cr2 \
--hub=ncc-hub \
--router-appliance=instance=/projects/$projectname/zones/us-east4-b/instances/hub-r2,ip=192.168.236.101 \
--region=us-east4 \
--site-to-site-data-transfer
Configura Cloud Router para establecer BGP con Hub-R1
En el siguiente paso, crea el Cloud Router y anuncia la subred de la VPC de carga de trabajo 192.168.235.0/24.
Crea el Cloud Router en us-central1 que se comunicará con BGP con hub-r1
gcloud compute routers create wrk-cr1 \
--region=us-central1 \
--network=workload-vpc \
--asn=65002 \
--set-advertisement-groups=all_subnets \
--advertisement-mode=custom
Si configuras los dispositivos de router como radio de NCC, se habilita el Cloud Router para negociar BGP en interfaces virtuales.
Crea dos interfaces en el Cloud Router que intercambiarán mensajes de BGP con hub-r1.
Las direcciones IP se seleccionan de la subred de la carga de trabajo y se pueden cambiar si es necesario.
gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int0 \
--ip-address=192.168.235.101
gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int1 \
--ip-address=192.168.235.102 \
--redundant-interface=int0
Configura la interfaz de Cloud Router para establecer BGP con vNIC-1 de hub-r1 y actualiza peer-ip-address con la dirección IP de networkIP de hub-r1 . Ten en cuenta que se usa la misma dirección IP para int0 y int1.
gcloud compute routers add-bgp-peer wrk-cr1 \
--peer-name=hub-cr1-bgp-peer-0 \
--interface=int0 \
--peer-ip-address=192.168.235.4 \
--peer-asn=64111 \
--instance=hub-r1 \
--instance-zone=us-central1-a \
--region=us-central1
gcloud compute routers add-bgp-peer wrk-cr1 \
--peer-name=hub-cr1-bgp-peer-1 \
--interface=int1 \
--peer-ip-address=192.168.235.4 \
--peer-asn=64111 \
--instance=hub-r1 \
--instance-zone=us-central1-a \
--region=us-central1
Verifica el estado del BGP. En este punto del lab, el BGP está en "estado de conexión", ya que el dispositivo de router de red no se configuró para BGP.
gcloud compute routers get-status wrk-cr1 --region=us-central1
Configura Workload-cr2 para establecer BGP con Hub-R2
En el siguiente paso, crea el Cloud Router y anuncia la subred 192.168.236.0/24 de la VPC de carga de trabajo.
Crea el Cloud Router en us-east4 que se comunicará con BGP con hub-r2
gcloud compute routers create wrk-cr2 \
--region=us-east4 \
--network=workload-vpc \
--asn=65002 \
--set-advertisement-groups=all_subnets \
--advertisement-mode=custom
Crea un par de interfaces en el router de Cloud que intercambiarán mensajes de BGP con hub-r2. Las direcciones IP se seleccionan de la subred de la carga de trabajo y se pueden cambiar si es necesario.
gcloud compute routers add-interface wrk-cr2 \
--region=us-east4 \
--subnetwork=workload-subnet2 \
--interface-name=int0 \
--ip-address=192.168.236.5
gcloud compute routers add-interface wrk-cr2 \
--region=us-east4 \
--subnetwork=workload-subnet2 \
--interface-name=int1 \
--ip-address=192.168.236.6 \
--redundant-interface=int0
Configura la interfaz de Cloud Router para establecer BGP con vNIC-1 de hub-r2, actualiza peer-ip-address con la dirección IP de hub-r1 networkIP . Ten en cuenta que se usa la misma dirección IP para int0 y int1.
gcloud compute routers add-bgp-peer wrk-cr2 \
--peer-name=hub-cr2-bgp-peer-0 \
--interface=int0 \
--peer-ip-address=192.168.236.101 \
--peer-asn=64112 \
--instance=hub-r2 \
--instance-zone=us-east4-b \
--region=us-east4
gcloud compute routers add-bgp-peer wrk-cr2 \
--peer-name=hub-cr2-bgp-peer-1 \
--interface=int1 \
--peer-ip-address=192.168.236.101 \
--peer-asn=64112 \
--instance=hub-r2 \
--instance-zone=us-east4-b \
--region=us-east4
Verifica el estado del BGP. En este punto del lab, el BGP está en "estado de conexión", ya que el dispositivo de router de red no se configuró para BGP.
gcloud compute routers get-status wrk-cr2 --region=us-east4
15. Configura dispositivos de router de concentrador para BGP
Configura hub-r1 para BGP
Asegúrate de acceder a la consola de flexiManage
Navega a Inventario → Dispositivos → hub-r1 y selecciona el dispositivo con HostName:hub-r1
- Haz clic en la pestaña "Enrutamiento".
- Haz clic en "Configuración de BGP".
- Inhabilita "Redistribute OSPF Routes".
- Configura hub-r1 para BGP con estos parámetros y haz clic en "Guardar".

Selecciona la pestaña "Interfaces", busca la interfaz LAN y la columna "Enrutamiento".
- Haz clic en "none" para abrir el menú y seleccionar BGP como el protocolo de enrutamiento.

- En la parte superior de la página, haz clic en "Actualizar dispositivo".
Configura hub-r2 para BGP
Asegúrate de acceder a la consola de flexiManage
Navega a Inventario → Dispositivos → hub-r2,selecciona el dispositivo con HostName:hub-r2.
- Haz clic en la pestaña "Enrutamiento".
- Haz clic en "Configuración de BGP".
- Inhabilita "Redistribute OSPF Routes".
- Configura hub-r2 para BGP con estos parámetros y haz clic en "Guardar".

Selecciona la pestaña "Interfaces", busca la interfaz LAN y encuentra la columna "Enrutamiento".
- Haz clic en "none" para abrir un menú desplegable y seleccionar BGP como el protocolo de enrutamiento.

- En la parte superior de la página, haz clic en "update device".
Selecciona la pestaña "routing".
- Confirma que hub-r2 aprendió una ruta de BGP de wrk-cr2.

16. Intercambio de rutas de BGP entre dispositivos de router
Establece el ASN local para sitios remotos
Configura un ASN de BGP local para site1-nva y site2-nva. Una vez configurado, estableceremos un túnel IPsec entre los sitios remotos y los routers centrales.
Selecciona el dispositivo con HostName:site1-nva
- Haz clic en la pestaña "Enrutamiento".
- Haz clic en "Configuración de BGP".
- Inhabilita "Redistribute OSPF Routes".
- BGP habilitado
- ASN local 7269 → Guardar
- Actualizar dispositivo
- Pestaña Interfaces → LAN → Enrutamiento → BGP
- Actualizar dispositivo
Selecciona el dispositivo con HostName:site2-nva.
- Haz clic en la pestaña "Enrutamiento".
- Haz clic en "Configuración de BGP".
- Inhabilita "Redistribute OSPF Routes".
- BGP habilitado
- ASN local 7270 → Guardar
- Actualizar dispositivo
- Pestaña Interfaces → LAN → Enrutamiento → BGP
- Actualizar dispositivo
Configura túneles VPN entre los dispositivos del sitio y del concentrador
Asegúrate de acceder a la consola de flexiManage
- Navega a Inventario → Dispositivos.
- Selecciona la casilla junto al nombre de host de site1-nva y hub-r1 para compilar un túnel VPN entre este par de NVAs.
- Haz clic en Actions→ Create Tunnels y configura lo siguiente:

- Selecciona Crear túneles.
- Quita las marcas de verificación de site1-nva y ub-r1.
Repite los pasos para crear un túnel entre site2-nva y hub-r2 seleccionando los parámetros adecuados.

Verifica que el par de túneles se establezca entre cada par de NVA.
- En el panel lateral izquierdo, selecciona "Inventario", haz clic en "Túneles" y busca la columna de estado.

Verifica que "site1-nva" haya aprendido rutas a las subredes 192.168.235.0/24 y 192.168.236.0/24.
- Selecciona Inventory → Devices → site1-nva y haz clic en la pestaña "Routing".
En el siguiente ejemplo de resultado, flexiWAN creó automáticamente el túnel con la dirección IP del host 10.100.0.6 
17. Verifica la conectividad de la ruta de datos
Verifica la conectividad del sitio a la nube desde el entorno local
Consulta el diagrama y verifica que la ruta de datos entre s1-vm y workload1-vm

Configura rutas estáticas de VPC para la conexión de sitio a nube
Las VPCs locales Site1-VPC y Site2-VPC simulan una red de centro de datos local.
Ambos dispositivos de router site-1-nva y site-2-nva usan conectividad VPN para llegar a la red de concentrador.
Para el caso de uso de sitio a nube**,** crea rutas estáticas al destino 192.168.0.0/16 usando el dispositivo de router como el siguiente salto para llegar a las redes en la red de nube de GCP.
En s1-inside-vpc, crea una ruta estática para el destino de la nube (192.168.0.0/16):
gcloud compute routes create site1-subnet-route \
--network=s1-inside-vpc \
--destination-range=192.168.0.0/16 \
--next-hop-instance=site1-nva \
--next-hop-instance-zone=us-central1-a
En s2-inside-vpc, crea una ruta estática para el destino de la nube (192.168.0.0/16):
gcloud compute routes create site2-subnet-route \
--network=s2-inside-vpc \
--destination-range=192.168.0.0/16 \
--next-hop-instance=site2-nva \
--next-hop-instance-zone=us-east4-b
En Cloud Shell, busca la dirección IP de "workload1-vm". Lo necesitarás para probar la conectividad desde "s1-vm".
gcloud compute instances describe workload1-vm --zone=us-central1-a | grep "networkIP"
Abre una conexión SSH a s1-vm. Si se agota el tiempo de espera, vuelve a intentarlo.
gcloud compute ssh s1-vm --zone=us-central1-a
Conéctate a "s1-vm" a través de SSH y usa el comando "curl" para establecer una sesión TCP en la dirección IP de workload1-VM.
s1-vm:~$ curl 192.168.235.3 -vv * Trying 192.168.235.3:80... * Connected to 192.168.235.3 (192.168.235.3) port 80 (#0) > GET / HTTP/1.1 > Host: 192.168.235.3 > User-Agent: curl/7.74.0 > Accept: */* > * Mark bundle as not supporting multiuse < HTTP/1.1 200 OK < Date: Wed, 07 Dec 2022 15:12:08 GMT < Server: Apache/2.4.54 (Debian) < Last-Modified: Tue, 06 Dec 2022 00:57:46 GMT < ETag: "1f-5ef1e4acfa1d9" < Accept-Ranges: bytes < Content-Length: 31 < Content-Type: text/html < Page served from: workload1-vm * Connection #0 to host 192.168.235.3 left intact
Verifica la conectividad de sitio a sitio
Consulta el diagrama y verifica que la ruta de datos entre s1-vm y s2-vm

Configura rutas estáticas de VPC para la VPN de sitio a sitio
Para enrutar el tráfico de sitio a sitio entre el sitio 1 y el sitio 2 con la red global de GCP, crearás rutas estáticas a los destinos de subred del sitio remoto usando el dispositivo de router local como próximo salto.
En un paso posterior, la VPC de carga de trabajo se configurará con NCC para admitir la transferencia de datos de sitio a sitio.
En s1-inside-vpc, crea una ruta estática para llegar a site2-subnet (10.20.1.0/24):
gcloud compute routes create site1-sn1-route \
--network=s1-inside-vpc \
--destination-range=10.20.1.0/24 \
--next-hop-instance=site1-nva \
--next-hop-instance-zone=us-central1-a
En s2-inside-vpc, crea una ruta estática para llegar a site1-subnet (10.10.1.0/24):
gcloud compute routes create site2-sn1-route \
--network=s2-inside-vpc \
--destination-range=10.10.1.0/24 \
--next-hop-instance=site2-nva \
--next-hop-instance-zone=us-east4-b
En Cloud Shell, busca la dirección IP de "s2-vm". Lo necesitarás para probar la conectividad desde S1-vm.
gcloud compute instances describe s2-vm --zone=us-east4-b | grep networkIP
Abre una conexión SSH a s1-vm. Si se agota el tiempo de espera, vuelve a intentarlo.
gcloud compute ssh s1-vm --zone=us-central1-a
Establece una conexión SSH a "s1-vm" y haz "ping" a la dirección IP de "s2-vm".
s1-vm:~$ ping 10.20.1.3
PING 10.20.1.3 (10.20.1.3) 56(84) bytes of data.
64 bytes from 10.20.1.3: icmp_seq=1 ttl=60 time=99.1 ms
64 bytes from 10.20.1.3: icmp_seq=2 ttl=60 time=94.3 ms
64 bytes from 10.20.1.3: icmp_seq=3 ttl=60 time=92.4 ms
64 bytes from 10.20.1.3: icmp_seq=4 ttl=60 time=90.9 ms
64 bytes from 10.20.1.3: icmp_seq=5 ttl=60 time=89.7 ms
18. Limpieza
Accede a Cloud Shell y borra las instancias de VM en las redes del sitio central y de la sucursal.
#on prem instances
gcloud compute instances delete s1-vm --zone=us-central1-a --quiet
gcloud compute instances delete s2-vm --zone=us-east4-b --quiet
#delete on prem firewall rules
gcloud compute firewall-rules delete site1-ssh --quiet
gcloud compute firewall-rules delete site1-internal --quiet
gcloud compute firewall-rules delete site1-cloud --quiet
gcloud compute firewall-rules delete site1-vpn --quiet
gcloud compute firewall-rules delete site1-iap --quiet
gcloud compute firewall-rules delete site2-ssh --quiet
gcloud compute firewall-rules delete site2-internal --quiet
gcloud compute firewall-rules delete site2-cloud --quiet
gcloud compute firewall-rules delete site2-vpn --quiet
gcloud compute firewall-rules delete site2-iap --quiet
gcloud compute firewall-rules delete allow-from-site-1-2 --quiet
gcloud compute firewall-rules delete s2-inside-cloud s2-inside-internal s2-inside-ssh --quiet
gcloud compute firewall-rules delete s1-inside-cloud s1-inside-iap s1-inside-internal s1-inside-ssh s2-inside-cloud s2-inside-iap s2-inside-internal s2-inside-ssh --quiet
#delete ncc spokes
gcloud network-connectivity spokes delete s2s-wrk-cr1 --region us-central1 --quiet
gcloud network-connectivity spokes delete s2s-wrk-cr2 --region us-east4 --quiet
#delete ncc hub
gcloud network-connectivity hubs delete ncc-hub --quiet
#delete the cloud router
gcloud compute routers delete wrk-cr1 --region=us-central1 --quiet
gcloud compute routers delete wrk-cr2 --region=us-east4 --quiet
#delete the instances
gcloud compute instances delete hub-r1 --zone=us-central1-a --quiet
gcloud compute instances delete hub-r2 --zone=us-east4-b --quiet
gcloud compute instances delete workload1-vm --zone=us-central1-a --quiet
gcloud compute instances delete site1-nva --zone=us-central1-a --quiet
gcloud compute instances delete site2-nva --zone=us-east4-b --quiet
#delete on prem subnets
gcloud compute networks subnets delete hub-subnet1 s1-inside-subnet site1-subnet workload-subnet1 --region=us-central1 --quiet
gcloud compute networks subnets delete hub-subnet2 s2-inside-subnet site2-subnet workload-subnet2 --region=us-east4 --quiet
#delete hub firewall rule
gcloud compute firewall-rules delete hub-ssh --quiet
gcloud compute firewall-rules delete hub-vpn --quiet
gcloud compute firewall-rules delete hub-internal --quiet
gcloud compute firewall-rules delete hub-iap --quiet
gcloud compute firewall-rules delete workload-ssh --quiet
gcloud compute firewall-rules delete workload-internal --quiet
gcloud compute firewall-rules delete workload-onprem --quiet
gcloud compute firewall-rules delete workload-iap --quiet
#delete on vpcs
gcloud compute networks delete hub-vpc s1-inside-vpc s2-inside-vpc site2-vpc workload-vpc --quiet
19. ¡Felicitaciones!
Completaste el lab de Network Connectivity Center.
Temas que se abordaron
- Se configuró la integración de la WAN definida por software para la conexión de sitio a nube de NCC
- Integración de WAN definida por software configurada para la conexión de sitio a sitio de NCC
Próximos pasos
- Descripción general de Network Connectivity Center
- Documentación de Network Connectivity Center
- Recursos de flexiWAN
- Repositorio de GitLab de flexiWAN
©Google LLC o sus afiliados. Todos los derechos reservados. Do not distribute.




