En este documento, se supone que estás familiarizado con los conceptos básicos de las redes de VPC, el Protocolo de Puerta de Enlace Fronteriza (BGP), las VPNs y los túneles de Protocolo de seguridad de Internet (IPsec).
Google Cloud proporciona una VPN con alta disponibilidad (HA) servicio para conectar tu red de VPC a entornos que se ejecutan fuera de Google Cloud, como Microsoft Azure, a través de una conexión de VPN IPsec. Una VPN con alta disponibilidad proporciona un acuerdo de nivel de servicio (ANS) del 99.99% de disponibilidad del servicio cuando se configura en función de las prácticas recomendadas de Google.
Descripción general de la arquitectura
En el siguiente diagrama, se muestra la arquitectura que se describe en este documento.
La arquitectura que se muestra en el diagrama incluye los siguientes componentes:
- Cloud Router: Servicio de Google Cloud completamente distribuido y administrado a fin de proporcionar enrutamiento dinámico mediante BGP para tus redes de VPC.
- Puerta de enlace de VPN con alta disponibilidad: Una puerta de enlace de VPN administrada por Google que se ejecuta en Google Cloud. Cada puerta de enlace de VPN con alta disponibilidad es un recurso regional que tiene dos interfaces: la interfaz 0 y la 1. Cada una de estas interfaces tiene su propia dirección IP externa.
- Túneles VPN: Conexiones desde la puerta de enlace de VPN con alta disponibilidad en Google Cloud a la puerta de enlace de VPN de intercambio de tráfico en Azure a través de la cual pasa el tráfico encriptado.
- Puerta de enlace de red virtual: Dos redes privadas definidas en el servicio de Azure Cloud.
Cada conexión de la puerta de enlace de red virtual viene con dos túneles preconfigurados para apuntar a una única puerta de enlace de cliente, que en este caso es una interfaz de puerta de enlace de VPN con alta disponibilidad en Google Cloud. Con esta configuración, la cantidad mínima de túneles de Cloud VPN necesarios para cumplir con el ANS del 99.99% de disponibilidad del servicio es de dos.
Direcciones IP necesarias para los procedimientos
Para completar los procedimientos de este documento, debes usar una variedad de direcciones IP en Google Cloud y en Azure. Algunas de estas direcciones IP se asignan automáticamente cuando creas un recurso.
En el caso de las direcciones que no se asignan automáticamente, debes definirlas según las direcciones IP que tienes disponibles y las necesidades de tu organización.
Los recursos de Google Cloud requieren las siguientes direcciones IP:
- Para crear una subred para una red de nube privada virtual, se requiere un rango de direcciones IP definido por el usuario.
- Después de crear la puerta de enlace de VPN con alta disponibilidad, Google Cloud asigna automáticamente dos direcciones IP externas a la puerta de enlace de VPN con alta disponibilidad. Google asigna una dirección IP a cada una de las dos interfaces de la puerta de enlace. Necesitas las direcciones IP para estas interfaces a fin de configurar las puertas de enlace de red local en Azure.
Cuando creas túneles VPN con alta disponibilidad en Google Cloud, cada túnel necesita una interfaz de BGP para el Cloud Router y una interfaz de BGP a la puerta de enlace de red virtual activa-activa (puerta de enlace VPN) en Azure. Para cada túnel, elige un par de direcciones IPv4 de intercambio de tráfico de BGP de vínculo local en un bloque /30 de los rangos
169.254.21.*
y169.254.22.*
. Estos rangos son los rangos válidos para las direcciones IPv4 de intercambio de tráfico de BGP de Azure APIPA. Debes seleccionar cuatro direcciones IP en total.Las direcciones IPv4 del intercambio de tráfico de BGP que selecciones deben ser únicas entre todos los Cloud Routers en todas las regiones de una red de VPC.
Los recursos de Azure requieren las siguientes direcciones IP:
- Cuando creas la red virtual (VNet), esta requiere un espacio de direcciones IP para la red y un espacio de direcciones IP para la subred de la red. Puedes usar los espacios de direcciones predeterminados o ingresar espacios de direcciones definidos por el usuario.
- Cuando creas la puerta de enlace de red virtual activa-activa (puerta de enlace VPN), la puerta de enlace requiere un rango de direcciones de subred. Puedes usar el rango predeterminado o ingresar un rango definido por el usuario.
- Cuando configuras el BGP para la puerta de enlace de VPN activa-activa, la puerta de enlace requiere dos direcciones IP de intercambio de tráfico de BGP de APIPA. Como se mencionó anteriormente, los rangos válidos para las direcciones IP de intercambio de tráfico de BGP de Azure APIPA son
169.254.21.*
y169.254.22.*
. - Después de crear una puerta de enlace de VPN activa-activa, Azure asigna automáticamente una dirección IP externa a cada una de las interfaces de la puerta de enlace. Necesitas estas direcciones IP para configurar la puerta de enlace de VPN de intercambio de tráfico en Google Cloud.
Cuando definas las direcciones IP, asegúrate de usar un conjunto único de direcciones IP para cada red.
Objetivos
- Crea una red virtual de Azure (VNet) y una puerta de enlace de red virtual activa-activa (puerta de enlace de VPN).
- Crea los componentes necesarios en Google Cloud: una red de VPC, un Cloud Router, una puerta de enlace de VPN con alta disponibilidad, una puerta de enlace de VPN de intercambio de tráfico y dos túneles VPN con alta disponibilidad con sesiones de BGP.
- Crea dos puertas de enlace de red local y dos conexiones de VPN en Azure. Verifica la configuración de Cloud Router y el estado de los túneles VPN con alta disponibilidad en Google Cloud.
- Prueba la conexión de Cloud VPN entre la red de VPC en Google Cloud y la red virtual (VNet) en Azure.
Costos
En los procedimientos que se indican en este documento, se usan componentes facturables de Google Cloud, incluidos los siguientes:
Para obtener una estimación de los costos de los componentes de Google Cloud, usa la calculadora de precios de Google Cloud.
En los procedimientos que se indican en este documento, se usan componentes facturables de los servicios de Microsoft Azure Cloud, incluidos los siguientes:
- Puertas de enlace de VPN
- Puertas de enlace de red local
Para obtener una estimación de los costos de los componentes de Azure, usa la calculadora de precios de Azure.
Antes de comenzar
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, activate Cloud Shell.
-
Asegúrate de tener las funciones administrativas requeridas para configurar los componentes de herramientas de redes:
- Administrador de la red:
compute.networkAdmin
- Administrador de seguridad:
compute.securityAdmin
- Administrador de Compute:
compute.admin
A fin de obtener más información sobre los propósitos de estas funciones, consulta Roles de IAM para características de trabajo relacionadas con las herramientas de redes.
- Administrador de la red:
Crea una VNet y una puerta de enlace de VPN activa-activa en Azure
En Azure, debes configurar los siguientes componentes:
- Una red virtual de Azure (VNet) que permite que los recursos de Azure se comuniquen con Google Cloud VPN
- Una puerta de enlace de red virtual (puerta de enlace VPN) activa-activa que permite que ambas instancias de las máquinas virtuales (VMs) de la puerta de enlace establezcan túneles VPN para tu Google Cloud VPN.
Crea una VNet
Un VNet permite que los recursos de Azure se comuniquen de forma segura entre sí, en Internet y en otras redes (como Cloud VPN). Si deseas obtener más información para crear una VNet, consulta la documentación de Azure sobre la creación de una VNet.
- Accede al portal de Azure.
- En el cuadro Buscar recursos, servicios y documentos (G+/), escribe
virtual network
. - En la lista de resultados del Mercado, selecciona Red virtual.
- En la página Red virtual, selecciona Crear.
En la pestaña Conceptos básicos de la página Crear red virtual, establece la siguiente configuración de VNet para Detalles del proyecto y Detalles de la instancia:
- En el cuadro Suscripción, verifica que la suscripción que aparece en la lista sea la correcta. Para cambiar la suscripción, selecciónala en la lista .
- Para especificar el grupo de recursos, haz clic en Crear nuevo para crear un grupo nuevo y, luego, ingresa un nombre, como
azure‑to‑google‑resgroup
, para el grupo de recursos. - En el cuadro Nombre, ingresa el nombre de tu VNet, como
azure‑to‑google‑network
. En el cuadro Región, selecciona una ubicación para VNet.
La ubicación que selecciones determinará la ubicación de almacenamiento de los recursos que implementes en esta red virtual.
En la pestaña Direcciones IP, en el cuadro Espacio de direcciones IPv4, usa el espacio de direcciones y la subred predeterminados que creó Azure.
En la pestaña Seguridad, deja los valores para Host de bastión, Protección estándar contra DSD y Firewall establecidos en el valor predeterminado de Inhabilitar.
Para validar la configuración de VNet, selecciona Revisar + crear.
Una vez validada la configuración, selecciona Crear.
Crea una puerta de enlace de VPN activa-activa
Con los siguientes procedimientos, se crea la puerta de enlace de VPN activa-activa:
- El primer procedimiento define los detalles del proyecto y de la instancia.
- El segundo procedimiento especifica la dirección IP de la puerta de enlace.
Por el momento, solo creas la puerta de enlace de VPN activa-activa. Debes crear los componentes de Google Cloud antes de configurar los túneles necesarios en Azure. Para obtener más información sobre cómo crear una puerta de enlace VPN activa-activa, consulta el tema Configura puertas de enlace de VPN activa-activa con el portal en la documentación de Azure.
Define los detalles de la puerta de enlace
- Accede al portal de Azure.
- En Buscar recursos, servicios y documentos (G+/), escribe
virtual network gateway
. - En Servicios, en los resultados de la búsqueda, busca y selecciona Puertas de enlace de red virtual.
- En la página Puerta de enlace de red virtual, selecciona Crear.
En la pestaña Conceptos básicos de la página Crear la puerta de enlace de red virtual, especifica los siguientes valores para las opciones en las secciones Detalles del proyecto y Detalles de la instancia:
- En la lista Subscription, selecciona la suscripción que deseas usar.
- Opcional: En el cuadro Rango de direcciones de la subred de la puerta de enlace, ingresa el rango de direcciones para la subred.
- Verifica que Grupo de recursos muestre el grupo de recursos que corresponde a la red virtual que seleccionas en esta página.
- En Nombre, ingresa el nombre de tu puerta de enlace, como
azure‑to‑google‑gateway
. - En Región, selecciona la misma región que usaste cuando creaste tu VNET.
- En Tipo de puerta de enlace, selecciona VPN.
En Tipo de VPN, selecciona el tipo de VPN basado en rutas.
En la lista SKU, selecciona el SKU de la puerta de enlace que deseas usar.
Los SKUs que aparecen en el menú desplegable dependen del tipo de VPN que selecciones.
En la lista Generación, selecciona la generación que deseas usar.
En la lista Red virtual, selecciona la VNet que creaste antes.
Permanece en esta página para el siguiente procedimiento.
Define las direcciones IP de la puerta de enlace
En la pestaña Conceptos básicos de la página Crear puerta de enlace de red virtual, sigue estos pasos para crear las direcciones IP externas que usa la puerta de enlace activa-activa de VPN:
En Dirección IP pública, selecciona Crear nueva.
Azure asigna de forma automática la dirección IP externa a la puerta de enlace de VPN activa-activa.
En el cuadro Nombre de dirección IP pública, escribe un nombre para la instancia de dirección IP externa, como
azure‑to‑google‑network‑ip1
.En Habilitar modo activo-activo, selecciona Habilitado.
Opcional: Si está disponible para tu región, configura la Zona de disponibilidad. Por ejemplo, puedes seleccionar Zona redundante.
En Segunda dirección IP pública, selecciona Crear nueva.
En el cuadro Nombre de dirección IP pública, escribe el nombre de la segunda dirección IP externa, como
azure‑to‑google‑network‑ip2
.En Configurar BGP, selecciona Habilitado.
En Números de sistema autónomo (ASN), configura el ASN en un valor permitido y válido.
Usa este valor de ASN cuando configures las sesiones de BGP para los túneles en Google Cloud. Registra este valor como
AZURE_ASN
para hacer referencia a esta puerta de enlace de VPN activa-activa.En Dirección IP de BGP de Azure APIPA personalizada, ingresa la primera dirección IP de BGP de APIPA y registra el valor como
AZURE_BGP_IP_0
. Los rangos válidos para las direcciones IP de BGP de la APIPA de Azure son169.254.21.*
y169.254.22.*
.En Segunda dirección IP de BGP de la APIPA de Azure personalizada, ingresa la segunda dirección IP de BGP de la APIPA y registra el valor como
AZURE_BGP_IP_1
. Usarás estas variables cuando configures las sesiones de BGP en Google Cloud.
Para ejecutar la validación, selecciona Revisar + crear.
Una vez que se complete la validación, selecciona Crear para implementar la puerta de enlace de VPN.
Visualiza y registra las direcciones IP externas de la puerta de enlace de VPN activa-activa
Necesitas las direcciones IP externas que Azure asignó de forma automática a la puerta de enlace de VPN activa-activa. Usa estas direcciones IP para crear el recurso de puerta de enlace de VPN de intercambio de tráfico en Google Cloud.
- En la página Descripción general de la puerta de enlace activa-activa que acabas de crear, ubica las direcciones IP externas para ella.
- Registra las direcciones IP que ves en la pantalla:
- Registra la primera dirección IP externa como
AZURE_GW_IP_0
. - Registra la segunda dirección IP externa como
AZURE_GW_IP_1
.
- Registra la primera dirección IP externa como
Más adelante, en este documento, se hace referencia a estas direcciones IP como AZURE_GW_IP_0
y AZURE_GW_IP_1
.
Crea tus componentes de Google Cloud
En Google Cloud, debes configurar los siguientes componentes:
- Una red de VPC.
- Una puerta de enlace de VPN con alta disponibilidad.
- Un Cloud Router.
- Una puerta de enlace de VPN de intercambio de tráfico.
- Túneles VPN con alta disponibilidad con sesiones de BGP.
En los siguientes procedimientos, se da por hecho que configuraste Google Cloud como se describe en Antes de comenzar. Si no completaste esos pasos, hazlo ahora.
Crea una red de VPC, una subred, una puerta de enlace de VPN con alta disponibilidad y un Cloud Router en Google Cloud
En Google Cloud, creas una red de VPC, creas una puerta de enlace de VPN con alta disponibilidad, creas un Cloud Router y, luego, configuras las reglas de firewall en Google Cloud.
En Google Cloud Shell, asegúrate de estar trabajando en el proyecto de Cloud que creaste o seleccionaste:
gcloud config set project YOUR_PROJECT_ID export PROJECT_ID=`gcloud config list --format="value(core.project)"`
Reemplaza
YOUR_PROJECT_ID
por tu ID del proyecto de Cloud.Crea una red de VPC personalizada con una sola subred.
gcloud compute networks create NETWORK \ --subnet-mode SUBNET_MODE \ --bgp-routing-mode BGP_ROUTING_MODE
Reemplaza lo siguiente:
NETWORK
: Es el nombre de la red, comogoogle‑to‑azure‑vpc
.SUBNET_MODE
: El modo de subred configurado comocustom
.
BGP_ROUTING_MODE
: El modo de enrutamiento BGP configurado comoglobal
.El comando debe ser similar al siguiente ejemplo:
gcloud compute networks create google-to-azure-vpc \ --subnet-mode custom \ --bgp-routing-mode global
Crea una subred para alojar las VM de prueba:
gcloud compute networks subnets create SUBNET_NAME \ --network NETWORK \ --region SUBNET_REGION \ --range SUBNET_IP_ADDRESS_RANGE
Reemplaza lo siguiente:
SUBNET_NAME
: El nombre de la subredSUBNET_REGION
: La región en la que se creará la subred.SUBNET_IP_ADDRESS_RANGE
: El rango de direcciones IP de la subred.
El comando debe ser similar al siguiente ejemplo:
gcloud compute networks subnets create subnet-central1 \ --network google-to-azure-vpc \ --region us-central1 \ --range 10.1.1.0/24
Crea la puerta de enlace de VPN con alta disponibilidad:
gcloud compute vpn-gateways create HA_VPN_GATEWAY_NAME \ --network NETWORK \ --region REGION
Reemplaza
HA_VPN_GATEWAY_NAME
con el nombre de la puerta de enlace de VPN con alta disponibilidad.El comando debe ser similar al siguiente ejemplo:
gcloud compute vpn-gateways create ha-vpn-gw-a \ --network google-to-azure-vpc \ --region us-central1
La puerta de enlace que crees debe ser similar al siguiente resultado de ejemplo:
Created [https://www.googleapis.com/compute/v1/projects/YOUR_PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a]. NAME INTERFACE0 INTERFACE1 NETWORK REGION ha-vpn-gw-a 203.0.113.1 203.0.113.2 google-to-azure-vpc us-central1
El resultado enumera las direcciones IPv4 externas que se asignaron de forma automática a cada interfaz de puerta de enlace (
INTERFACE0
yINTERFACE1
). Necesitas estas direcciones IP cuando configures las puertas de enlace de red local en Azure:- Registra la dirección IP de
INTERFACE0
enHA_VPN_INT_0
. - Registra la dirección IP de
INTERFACE1
enHA_VPN_INT_1
.
- Registra la dirección IP de
Crea un Cloud Router:
gcloud compute routers create ROUTER_NAME \ --region REGION \ --network NETWORK \ --asn GOOGLE_ASN \
Reemplaza lo siguiente:
ROUTER_NAME
: El nombre de tu Cloud Router.REGION
: Es la región en la que crearás la puerta de enlace de VPN con alta disponibilidad y los túneles.GOOGLE_ASN
: El número de sistema autónomo (ASN) privado para el Cloud Router que estás creando. Puede ser cualquier ASN privado en el rango64512-65534
o4200000000-4294967294
que todavía no estés usando como ASN de intercambio de tráfico en la misma región y red.
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers create cloud-router \ --region us-central1 \ --network google-to-azure-vpc \ --asn 65534
Crea una puerta de enlace de VPN de par para la VPN de Azure
En esta sección, crearás un recurso de puerta de enlace de VPN externa que proporciona información a Google Cloud sobre tu puerta de enlace de VPN activa-activa en Azure. Creas una única puerta de enlace de VPN de intercambio de tráfico que usa dos interfaces independientes, cada una con su propia dirección IP externa.
Crea una sola puerta de enlace de VPN de intercambio de tráfico externa con dos interfaces:
gcloud compute external-vpn-gateways create AZURE_GW_NAME \ --interfaces 0=AZURE_GW_IP_0,1=AZURE_GW_IP_1
Reemplaza lo siguiente:
AZURE_GW_NAME
: Es el nombre de tu puerta de enlace de VPN activa-activa de Azure.AZURE_GW_IP_0
: La dirección IP externa de una interfaz de la puerta de enlace de intercambio de tráficoAZURE_GW_IP_1
: La dirección IP externa de otra interfaz de la puerta de enlace de intercambio de tráfico
El recurso de puerta de enlace de VPN de intercambio de tráfico que creaste debería ser similar al siguiente ejemplo, en el que AZURE_GW_IP_0
y AZURE_GW_IP_1
muestran las direcciones IP externas reales de las interfaces de puerta de enlace de intercambio de tráfico:
gcloud compute external-vpn-gateways create azure-peer-gw \ --interfaces 0=203.0.113.1,1=203.0.113.2 Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/peer-gw]. NAME INTERFACE0 INTERFACE1 azure-peer-gw 203.0.113.1 203.0.113.2
Crea túneles VPN
Debes crear dos túneles VPN: uno para cada interfaz en la puerta de enlace de VPN del cliente. Cuando configures túneles VPN para Azure, usa el protocolo de encriptación IKEv2.
Para los comandos que se usan en esta sección, reemplaza lo siguiente:
TUNNEL_NAME_IF0
yTUNNEL_NAME_IF1
: Un nombre para el túnel; incluir el nombre de la interfaz de la puerta de enlace en los nombres de los túneles puede facilitar la identificación de los túneles más adelante.AZURE_GW_NAME
: El nombre de la puerta de enlace externa de intercambio de tráfico que se creó antesAZURE_GW_INT_NUM_0
yAZURE_GW_INT_NUM_1
: Los números de interfaz configurado anteriormente en la puerta de enlace externa de intercambio de tráficoIKE_VERS
: Usa2
para IKEv2.SHARED_SECRET
: Es tu clave precompartida (secreto compartido), que debe corresponderse con la clave precompartida que especificas cuando configuras las conexiones VPN en Azure. Para obtener recomendaciones, consulta Genera una clave precompartida segura.HA_VPN_GATEWAY_NAME
: El nombre de la puerta de enlace de VPN con alta disponibilidadINT_NUM_0
: El número0
para la primera interfaz en la puerta de enlace de VPN con alta disponibilidad que creaste antesINT_NUM_1
: El número1
para la segunda interfaz de la puerta de enlace de VPN con alta disponibilidad que creaste antes
Sigue estos pasos para crear los túneles VPN:
Crea el túnel VPN para la interfaz 0:
gcloud compute vpn-tunnels create TUNNEL_NAME_IF0 \ --peer-external-gateway=AZURE_GW_NAME \ --peer-external-gateway-interface=AZURE_GW_INT_NUM_0 \ --region=REGION \ --ike-version=IKE_VERS \ --shared-secret=SHARED_SECRET \ --router=ROUTER_NAME \ --vpn-gateway=HA_VPN_GATEWAY_NAME \ --interface=INT_NUM_0
El comando debe ser similar al siguiente ejemplo:
gcloud compute vpn-tunnels create azure-tunnel-1 \ --peer-external-gateway azure-peer-gw \ --peer-external-gateway-interface 0 \ --region us-central1 \ --ike-version 2 \ --shared-secret xo2aTKHipD/oE1GAXgj3lMwjBmJXZjqD \ --router cloud-router \ --vpn-gateway ha-vpn-gw-a \ --interface 0
Crea el túnel VPN para la interfaz 1:
gcloud compute vpn-tunnels create TUNNEL_NAME_IF1 \ --peer-external-gateway=AZURE_GW_NAME \ --peer-external-gateway-interface=AZURE_GW_INT_NUM_1 \ --region=REGION \ --ike-version=IKE_VERS \ --shared-secret=SHARED_SECRET \ --router=ROUTER_NAME \ --vpn-gateway=HA_VPN_GATEWAY_NAME \ --interface=INT_NUM_1
El comando debe ser similar al siguiente ejemplo:
gcloud compute vpn-tunnels create azure-tunnel-2 \ --peer-external-gateway azure-peer-gw \ --peer-external-gateway-interface 1 \ --region us-central1 \ --ike-version 2 \ --shared-secret xo2aTKHipD/oE1GAXgj3lMwjBmJXZjqD \ --router cloud-router \ --vpn-gateway ha-vpn-gw-a \ --interface 1
Crea sesiones de BGP
Para el enrutamiento dinámico, usa Cloud Router a fin de establecer sesiones de BGP entre Google Cloud y Azure. Recomendamos usar el enrutamiento dinámico en lugar del enrutamiento estático siempre que sea posible, como se explica en la descripción general de Cloud VPN y Enrutamiento de túneles y redes de Cloud VPN.
Debes crear una sesión de BGP para cada túnel VPN. Cada sesión de BGP consta de una interfaz de BGP para el Cloud Router y un par de BGP. Debes crear un par de BGP para cada uno de los dos túneles VPN que acabas de crear.
Para los comandos que se usan en esta sección, reemplaza lo siguiente:
ROUTER_NAME
es el nombre que le asignaste al Cloud Router.ROUTER_INTERFACE_NAME_0
yROUTER_INTERFACE_NAME_1
: Un nombre para la interfaz de BGP de Cloud Router; puede ser útil usar nombres relacionados con los nombres de túnel configurados antes.MASK_LENGTH
: especifica30
; cada sesión de BGP en el mismo Cloud Router debe usar un CIDR/30
único del bloque169.254.0.0/16
.GOOGLE_BGP_IP_0
yGOOGLE_BGP_IP_1
: Son las direcciones IP de intercambio de tráfico de BGP para las interfaces de puerta de enlace de VPN con alta disponibilidad que configures; cada túnel usa una interfaz de puerta de enlace diferente. Debido a que los rangos permitidos para las direcciones IP de intercambio de tráfico de BGP de la APIPA de Azure son169.254.21.*
y169.254.22.*
, debes seleccionar una dirección IP disponible en el CIDR/30
de esos rangos para tus direcciones IP de intercambio de tráfico de BGP de Cloud Router.AZURE_BGP_IP_0
yAZURE_BGP_IP_1
: son las direcciones IP de intercambio de tráfico de BGP de APIPA que ya configuraste en la puerta de enlace de VPN activa-activa de Azure; cada túnel usa una dirección diferente.TUNNEL_NAME_IF0
yTUNNEL_NAME_IF1
: El túnel asociado con la interfaz de puerta de enlace de VPN con alta disponibilidad que configurasteAZURE_ASN
: El ASN que configuraste para la puerta de enlace de VPN de intercambio de tráfico activa-activa en Azure.BGP_PEER_NAME_1
yBGP_PEER_NAME_2
por nombres únicos para cada par de BGP. Por ejemplo,azure‑bgp‑peer‑1
yazure‑bgp‑peer‑2
.
Para crear sesiones de BGP para los túneles VPN, sigue estos pasos:
Para el primer túnel VPN, agrega una interfaz de BGP al Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_0 \ --mask-length=MASK_LENGTH \ --vpn-tunnel=TUNNEL_NAME_IF0 \ --ip-address=GOOGLE_BGP_IP_0 \ --region=REGION
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers add-interface cloud-router \ --interface-name azure-tunnel-1-int-0 \ --mask-length 30 \ --vpn-tunnel azure-tunnel-1 \ --ip-address 169.254.21.2 \ --region us-central1
Para el primer túnel VPN, agrega un par de BGP a la interfaz:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=BGP_PEER_NAME_1 \ --peer-asn=AZURE_ASN \ --interface=ROUTER_INTERFACE_NAME_0 \ --peer-ip-address=AZURE_BGP_IP_0 \ --region=REGION
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers add-bgp-peer cloud-router \ --peer-name azure-bgp-peer-1 \ --peer-asn 65515 \ --interface azure-tunnel-1-int-0 \ --peer-ip-address 169.254.21.1 \ --region us-central1
Para el segundo túnel VPN, agrega una interfaz de BGP al Cloud Router:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --mask-length=MASK_LENGTH \ --vpn-tunnel=TUNNEL_NAME_IF0 \ --ip-address=GOOGLE_BGP_IP_1 \ --region=REGION
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers add-interface cloud-router \ --interface-name azure-tunnel-2-int-1 \ --mask-length 30 \ --vpn-tunnel azure-tunnel-2 \ --ip-address 169.254.22.2 \ --region us-central1
Para el segundo túnel VPN, agrega un par de BGP a la interfaz:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=BGP_PEER_NAME_2 \ --peer-asn=AZURE_ASN \ --interface=ROUTER_INTERFACE_NAME_1 \ --peer-ip-address=AZURE_BGP_IP_1 \ --region=REGION
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers add-bgp-peer cloud-router \ --peer-name azure-bgp-peer-2 \ --peer-asn 65515 \ --interface azure-tunnel-2-int-1 \ --peer-ip-address 169.254.22.1 \ --region us-central1
Crea puertas de enlace de red locales y conexiones de VPN en Azure
Con los componentes de Google Cloud creados y configurados, vuelve a tu entorno de Azure para terminar de conectar Google Cloud a Azure. Para finalizar esta conexión, crea los siguientes componentes en Azure:
- Dos puertas de enlace de red locales que representan tu Google Cloud VPN en Azure.
- Dos conexiones VPN que corresponden a los dos túneles VPN con alta disponibilidad que configuraste en Google Cloud.
Crea dos puertas de enlace de red local
Una puerta de enlace de red local es un objeto específico que representa tu Google Cloud VPN en Azure. Cuando creas una puerta de enlace de red local, especificas la siguiente información:
- Un nombre para la puerta de enlace de la red local.
- La dirección IP de la interfaz de VPN con alta disponibilidad que se usará en la conexión.
- La dirección IP del Google Cloud Router al que deseas crear una conexión.
- Los prefijos de dirección IP que se enrutan a través de la puerta de enlace de VPN al Cloud Router. Los prefijos de dirección que especificas son los prefijos ubicados en tu Cloud VPN. Si la red privada virtual de Cloud cambia o necesitas cambiar la dirección IP externa para el Cloud Router, puedes actualizar los valores más adelante.
Debes crear dos puertas de enlace de red locales: una que se conecte a la primera interfaz de túnel VPN con alta disponibilidad de Google Cloud y otra que se conecte a la segunda interfaz de túnel con VPN con alta disponibilidad.
Para obtener más información, consulta la sección Crea una puerta de enlace de red local del instructivo Crea una conexión de VPN de sitio a sitio en el portal de Azure en la documentación de Azure.
Para crear la primera puerta de enlace de red local, sigue estos pasos:
- Accede al portal de Azure.
- En Buscar recursos, servicios y documentos (G+/), escribe local network gateway.
- En los resultados de la búsqueda en Marketplace, busca y selecciona puerta de enlace de red local.
- Haz clic en Crear.
En la pestaña Conceptos básicos de la página Crear puerta de enlace de red local, especifica los siguientes valores para la puerta de enlace de red local:
- En la lista Suscripción, verifica que se muestre la suscripción correcta.
- En la lista Grupo de recursos, selecciona el mismo grupo de recursos que creaste para la VNet antes en este documento.
- En Región, selecciona la misma ubicación en la que reside tu VNet.
- En Nombre, ingresa un nombre para la puerta de enlace de tu red local, como
azure-to-google-locgateway1
. - En Extremo, selecciona Dirección IP.
- En el cuadro Dirección IP, ingresa la dirección IP de
INTERFACE0
de tu VPN con alta disponibilidad (es decir, ingresaHA_VPN_INT_0
). En Espacio de direcciones, ingresa los rangos de direcciones de la red que representa esta red local.
Puedes agregar varios rangos de espacio de direcciones. Asegúrate de que los rangos que especificas aquí no se superpongan con los rangos de otras redes a las que desees conectarte.
En la pestaña Advanced, establece la configuración de BGP de la siguiente manera:
- En Establecer la configuración de BGP, selecciona Sí.
- En Número de sistema autónomo (ASN), ingresa el ASN para tu Cloud Router (es decir, ingresa
GOOGLE_ASN
). - En Dirección IP de par de BGP, ingresa la dirección IP de BGP para el Cloud Router en el túnel 1 (es decir, ingresa
GOOGLE_BGP_IP_0
).
Para validar la configuración de la puerta de enlace de red local, haz clic en Revisar y crear en la parte inferior de la página.
Una vez que pase la validación, haz clic en Crear para crear la puerta de enlace de la red local.
Para crear la segunda puerta de enlace de red local, sigue estos pasos:
- En el Portal de Azure, en Buscar recursos, servicios y documentos (G+/), escribe
local network gateway
. - En Marketplace, en los resultados de la búsqueda, ubica y selecciona Puerta de enlace de red local.
En la pestaña Conceptos básicos de la página Crear puerta de enlace de red local, especifica los siguientes valores para la puerta de enlace de red local:
- En la lista Suscripción, verifica que se muestre la suscripción correcta.
- En la lista Grupo de recursos, selecciona el mismo grupo de recursos que creaste para la VNet antes en este documento.
- En Región, selecciona la misma región que la de tu VNet.
- En Nombre, ingresa un nombre para la puerta de enlace de tu red local, como
azure-to-google-locgateway2
. - En Extremo, selecciona Dirección IP.
- En el cuadro Dirección IP, ingresa la dirección IP de
INTERFACE1
de tu VPN con alta disponibilidad (es decir, ingresaHA_VPN_INT_1
). - En Espacio de direcciones, ingresa los rangos de direcciones de la red que representa esta red local.
Puedes agregar varios rangos de espacio de direcciones. Asegúrate de que los rangos que especificas aquí no se superpongan con los rangos de otras redes a las que desees conectarte.
En la pestaña Advanced, establece la configuración de BGP de la siguiente manera:
- En Establecer la configuración de BGP, selecciona Sí.
- En Número de sistema autónomo (ASN), ingresa el ASN para tu Cloud Router (es decir, ingresa
GOOGLE_ASN
). - En Dirección IP de par de BGP, ingresa la dirección IP de BGP para el Cloud Router en el túnel 1 (es decir, ingresa
GOOGLE_BGP_IP_1
).
Para validar tu configuración de la puerta de enlace de red local, haz clic en Revisar y crear en la parte inferior de la página.
Una vez que pase la validación, haz clic en Crear para crear la puerta de enlace de la red local.
Crea dos conexiones de VPN
Para crear las conexiones de VPN en Azure, necesitas las claves precompartidas, o SHARED_SECRET, que configuraste cuando estableciste los túneles de VPN con alta disponibilidad en Google Cloud.
- En el Portal de Azure, busca la puerta de enlace de VPN activa-activa que creaste en Crea una puerta de enlace de VPN activa-activa.
- Seleccionar conexiones.
- En la parte superior de la página Conexiones, selecciona + Agregar.
- En la página Agregar conexión, especifica los siguientes valores para tu primera conexión:
- En Nombre, ingresa un nombre para la conexión, como
azure-vnet-to-google1
. - En Tipo de conexión, selecciona De sitio a sitio (IPsec).
- En Puerta de enlace de red local, especifica la primera puerta de enlace de red local que creaste, como
azure-to-google-locgateway1
. - En Clave compartida (PSK), especifica la clave compartida que configuraste para el primer túnel VPN con alta disponibilidad.
- Selecciona Habilitar BGP.
- En Protocolo IKE, selecciona IKEv2.
- Haz clic en Aceptar.
- En la página Connections, selecciona + Agregar para agregar una segunda conexión con los siguientes valores:
- En Nombre, ingresa un nombre para la conexión, como
azure-vnet-to-google2
. - En Tipo de conexión, selecciona De sitio a sitio (IPsec).
- En Puerta de enlace de red local, especifica la segunda puerta de enlace de red local que creaste, como
azure-to-google-locgateway2
. - En Clave compartida (PSK), especifica la clave compartida que configuraste para el segundo túnel VPN con alta disponibilidad.
- Selecciona Habilitar BGP.
- En Protocolo IKE, selecciona IKEv2.
- Haz clic en Aceptar.
- En Nombre, ingresa un nombre para la conexión, como
- En la página Conexiones, verifica que el estado de ambas conexiones aparezca como Conectada.
Verifica la configuración
En Google Cloud, puedes verificar la configuración de VPN con alta disponibilidad si primero examinas (enumeras) la configuración de Cloud Router y, luego, verificas el estado de los túneles VPN con alta disponibilidad.
En Cloud Shell, enumera las direcciones IP de intercambio de tráfico de BGP que eligió Cloud Router:
gcloud compute routers get-status ROUTER_NAME \ --region=REGION \ --format='flattened(result.bgpPeerStatus[].name, result.bgpPeerStatus[].ipAddress, result.bgpPeerStatus[].peerIpAddress)'
El comando debe ser similar al siguiente ejemplo:
gcloud compute routers get-status cloud-router \ --region us-central1 \ --format='flattened(result.bgpPeerStatus[].name,result.bgpPeerStatus[].ipAddress,result.bgpPeerStatus[].peerIpAddress)'
El resultado esperado para un Cloud Router que administra dos túneles VPN con alta disponibilidad (índice
0
y1
de índice) debe ser similar al siguiente ejemplo:result.bgpPeerStatus[0].ipAddress: 169.254.21.2 result.bgpPeerStatus[0].name: azure-bgp-peer-1 result.bgpPeerStatus[0].peerIpAddress: 169.254.21.1 result.bgpPeerStatus[1].ipAddress: 169.254.22.2 result.bgpPeerStatus[1].name: azure-bgp-peer-2 result.bgpPeerStatus[1].peerIpAddress: 169.254.22.1
En Cloud Shell, observa el estado del primer túnel VPN con alta disponibilidad:
gcloud compute vpn-tunnels describe TUNNEL_NAME_IF0 \ --region=REGION
Reemplaza lo siguiente:
TUNNEL_NAME_IF0
: el túnel asociado con la primera interfaz de puerta de enlace de VPN con alta disponibilidad que configuraste.REGION
: la región en la que implementaste la puerta de enlace de VPN con alta disponibilidad.
El comando debe ser similar al siguiente ejemplo:
gcloud compute vpn-tunnels describe azure-tunnel-1 -–region=us-central1
El resultado esperado para el túnel debe ser similar al siguiente ejemplo:
creationTimestamp: '2022-09-28T17:13:21.592-07:00' description: '' detailedStatus: Tunnel is up and running. id: '278561789474069966' ikeVersion: 2 kind: compute#vpnTunnel localTrafficSelector: - 0.0.0.0/0 name: azure-tunnel-1 peerExternalGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/global/externalVpnGateways/azure-peer-gw peerExternalGatewayInterface: 0 peerIp: 203.0.113.1 region: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1 remoteTrafficSelector: - 0.0.0.0/0 router: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/routers/cloud-router selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnTunnels/azure-tunnel-1 sharedSecret: '*************' sharedSecretHash: ALDZGgSMUxj8KFahMoG_L0Fz9paz status: ESTABLISHED vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnGateways/ha-vpn-gw-a vpnGatewayInterface: 0
En Cloud Shell, observa el estado del segundo túnel VPN con alta disponibilidad:
gcloud compute vpn-tunnels describe TUNNEL_NAME_IF1 \ --region=REGION
Reemplaza lo siguiente:
TUNNEL_NAME_IF1
: el túnel asociado con la segunda interfaz de puerta de enlace de VPN con alta disponibilidad que configuraste.REGION
: la región en la que implementaste la puerta de enlace de VPN con alta disponibilidad.
El comando debe ser similar al siguiente ejemplo:
gcloud compute vpn-tunnels describe azure-tunnel-2 --region=us-central1
El resultado esperado para el túnel debe ser similar al siguiente ejemplo:
creationTimestamp: '2022-09-28T17:13:21.592-07:00' description: '' detailedStatus: Tunnel is up and running. id: '5665972275117479944' ikeVersion: 2 kind: compute#vpnTunnel localTrafficSelector: - 0.0.0.0/0 name: azure-tunnel-2 peerExternalGateway: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/global/externalVpnGateways/azure-peer-gw peerExternalGatewayInterface: 1 peerIp: 203.0.113.2 region: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1 remoteTrafficSelector: - 0.0.0.0/0 router: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/routers/cloud-router selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT-ID/regions/us-central1/vpnTunnels/azure-tunnel-2 sharedSecret: '*************' sharedSecretHash: ALDZGgSMUxj8KFahMoG_L0Fz9ddd
Prueba la conectividad
Para probar las conexiones VPN con alta disponibilidad, primero debes crear VMs en cada lado del túnel.
A continuación, debes asegurarte de tener reglas de firewall definidas en Google Cloud que permitan el tráfico ICMP entrante de las subredes de la red de Azure. Con las VMs y las reglas de firewall implementadas, puedes probar la conectividad mediante ping y el ancho de banda de prueba con iperf.
Crea VMs de prueba en cada lado de los túneles para probar las solicitudes de ping.
También debes configurar el firewall de red de Azure para permitir el tráfico entrante de los prefijos de subred que se usan en tu nube privada virtual.
En Google Cloud, configura una regla de firewall que permita el tráfico de ICMP entrante desde la VPN de Azure:
gcloud compute firewall-rules create RULE_NAME \ --network NETWORK \ --direction ingress \ --action allow \ --source-ranges AZURE_VNET_RANGE \ --rules icmp \
Reemplaza
AZURE_VNET_RANGE
por el rango de direcciones IP que se asigna a Azure VNet.El comando debe ser similar al siguiente ejemplo:
gcloud compute firewall-rules create allow-azure-icmp \ --network google-to-azure-vpc \ --direction ingress \ --action allow \ --source-ranges 10.0.0.0/16 \ --rules icmp
Prueba la conexión con el comando ping.
Medir el ancho de banda entre tus máquinas de prueba con iperf
Realiza una limpieza
Borra los recursos de Google Cloud y Azure que creaste durante este instructivo.
Borra el proyecto de Google Cloud
Puedes borrar tu proyecto para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Borra un grupo de recursos de Azure
Borra el grupo de recursos de Azure Manager que creaste cuando creaste la VNet. En este instructivo, el nombre del grupo de recursos de ejemplo es azure-to-google-resgroup
.
Para obtener más información, consulta Eliminación de recursos y grupos de recursos de Azure Resource Manager.
¿Qué sigue?
- Obtén más información sobre VPN de Google Cloud.
- Obtén más información sobre las prácticas recomendadas y arquitecturas de referencia para el diseño de VPC.