Antes de comenzar con nuestro ejemplo practico vamos a dejar claro algunos conceptos primeramente que es un Vnet Peering.

VNet Peering es una funcionalidad de las redes virtuales de Azure que nos da la opción de conectar dos redes entre sí, de tal manera que los recursos que tenemos en ambas redes puedan comunicarse entre ellos de manera privada, ya que el tráfico se enruta a través del backbone (IPs privadas) y no sale a internet (a diferencia que con VPN Gateway que si es tráfico público).

Las redes virtuales que conectemos pueden estar en la misma región de Azure o en diferentes.

Algo más acerca de Peering es que es aconsejado en escenarios de replicación de datos, failover de bases de datos o por ejemplo escenarios donde hagamos backup de manera frecuente de grandes cantidades de datos.

No es Transitivo, por lo que si creamos un Peering entre VNet1 – VNet2 y otro Peering entre VNet2 y VNet3 = VNet1 no estará conectado con VNet3. Tendríamos que hacer otro peering entre VNet1-VNet3.

Antes de crear nuestras redes tenemos que crear un grupo de recurso para ello utilizamos el siguiente comando.

az group create --name RG1 --location northeurope

Para que nuestro ejemplo sea lo mas real posible vamos a simular una empresa que va tener 3 redes :

  • La red virtual Ventas está implementada en Norte de Europa. Los sistemas de ventas usan esta red virtual para procesar los datos que se agregan después de la participación de un cliente. El equipo de ventas quiere acceder a los datos de marketing.
  • La red virtual Marketing está implementada en Norte de Europa. Los sistemas de marketing usan esta red virtual. Los miembros del equipo de marketing chatean habitualmente con el equipo de ventas. Para compartir sus datos con el equipo de ventas, tienen que descargarlos, ya que los sistemas de ventas y marketing no están conectados.
  • La red virtual Investigación está implementada en Oeste de Europa. Los sistemas de investigación usan esta red virtual. Los miembros del equipo de investigación mantienen una relación de trabajo lógica con el equipo de marketing, pero no quieren que el equipo de ventas tenga acceso directo a sus datos.

Creamos las redes para cada departamento

Ejecutamos el siguiente comando para crear la red virtual y la subred para los sistemas de Ventas.

az network vnet create 
    --resource-group RG1
    --name VentasVNet 
    --address-prefixes 10.1.0.0/16 
    --subnet-name Apps 
    --subnet-prefixes 10.1.1.0/24 
    --location northeurope

Para crear la red de Marketing utilizamos el siguiente comando para crear la red virtual y la subred.

az network vnet create 
    --resource-group RG1
    --name MarketingVNet 
    --address-prefixes 10.2.0.0/16 
    --subnet-name Apps 
    --subnet-prefixes 10.2.1.0/24 
    --location northeurope

Y por ultimo creamos la red y la subred de Investigacion.

az network vnet create 
    --resource-group RG1
    --name InvestigacionVNet 
    --address-prefixes 10.3.0.0/16 
    --subnet-name Data 
    --subnet-prefixes 10.3.1.0/24 
    --location westeurope

Para comprobar que se han creado todas las redes virtuales utilizamos el siguiente comando

az network vnet list --output table

Ahora creamos maquinas virtuales para cada red virtual para ello imprementaremos maquinas Ubuntu, usaremos estas máquinas virtuales para probar la conectividad entre las redes virtuales.

Maquina virtual de Ventas.

az vm create 
    --resource-group RG1
    --no-wait 
    --name VentasVM 
    --location northeurope 
    --vnet-name VentasVNet 
    --subnet Apps 
    --image UbuntuLTS 
    --public-ip-sku Standard
    --admin-username admluis
    --admin-password Contra123456

Maquina virtual de Marketing

az vm create 
    --resource-group RG1
    --no-wait 
    --name MarketingVM 
    --location northeurope 
    --vnet-name MarketingVNet 
    --subnet Apps 
    --image UbuntuLTS 
    --public-ip-sku Standard
    --admin-username admluis
    --admin-password Contra123456

Maquina Virtual de Investigación

az vm create 
    --resource-group RG1
    --no-wait 
    --name InvestigacionVM 
    --location westeurope 
    --vnet-name InvestigacionVNet 
    --subnet Data 
    --image UbuntuLTS 
    --public-ip-sku Standard
    --admin-username admluis
    --admin-password Contra123456

Vamos a confirmar que las maquinas virtuales se han creado correctamente y estan en funcionamiento con el siguiente comando.

watch -d -n 5 "az vm list 
    --resource-group RG1
    --show-details
    --query '[*].{Name:name,ProvisioningState:provisioningState,PowerState:powerState}' 
    --output table"

Ahora que tenemos creado Maquinas virtuales y creado redes y subredes el siguiente paso es crear los emparejamientos .

Vamos a crear la conexión de emparejamiento entre las redes virtuales VentasVNet y MarketingVNet. Este comando también permite el acceso de red virtual a través de esta conexión de emparejamiento

az network vnet peering create 
    --name VentasVNet-To-MarketingVNet 
    --remote-vnet MarketingVNet 
    --resource-group RG1
    --vnet-name VentasVNet 
    --allow-vnet-access

Ahora creamos la conexión recíproca desde MarketingVNet a VentasVNet. Con este paso se completa la conexión entre estas redes virtuales.

az network vnet peering create 
    --name MarketingVNet-To-VentasVNet 
    --remote-vnet VentasVNet 
    --resource-group RG1
    --vnet-name MarketingVNet
    --allow-vnet-access

Ahora que ya tiene las conexiones entre las redes Ventas y Marketing, cree las conexiones entre las redes Marketing y Investigación.

az network vnet peering create 
    --name MarketingVNet-To-InvestigacionVNet 
    --remote-vnet InvestigacionVNet 
    --resource-group RG1
    --vnet-name MarketingVNet 
    --allow-vnet-access
Creamos la conexión recíproca entre InvestigacionVNet y MarketingVNet.
az network vnet peering create 
    --name InvestigacionVNet-To-MarketingVNet 
    --remote-vnet MarketingVNet 
    --resource-group RG1
    --vnet-name InvestigacionVNet 
    --allow-vnet-access

Ahora comprobamos los peering que hemos creado.

Vamos a comprobar la conexion entre VentasVNet y MarketingVNet.

az network vnet peering list 
    --resource-group RG1
    --vnet-name VentasVNet 
    --query "[].{Name:name, Resource:resourceGroup, PeeringState:peeringState, AllowVnetAccess:allowVirtualNetworkAccess}"
    --output table

Solo hemos creado una conexión desde VentasVNet, por lo que verá un único resultado. En la columna PeeringState, asegúrese de que el estado sea Conectado.

Ahora comprobamos la conexión entre las redes virtuales InvestigacionVNet y MarketingVNet.

az network vnet peering list 
    --resource-group RG1
    --vnet-name InvestigacionVNet 
    --query "[].{Name:name, Resource:resourceGroup, PeeringState:peeringState, AllowVnetAccess:allowVirtualNetworkAccess}"
    --output table

De nuevo, como solo ha creado una conexión desde InvestigacionVNet , verá un único resultado. En la columna PeeringState, asegúrese de que el estado sea Conectado.

Ahora comprobamos las conexiones de emparejamiento para la red virtual MarketingVNet

az network vnet peering list 
    --resource-group RG1
    --vnet-name MarketingVNet 
    --query "[].{Name:name, Resource:resourceGroup, PeeringState:peeringState, AllowVnetAccess:allowVirtualNetworkAccess}"
    --output table

Recuerdamos que hemos creado conexiones entre las redes Marketing y Ventas, y entre Marketing y Investigacion, por lo que debería ver dos conexiones. En la columna PeeringState, asegúrese de que el estado de las dos conexiones sea Conectado.

Comprobamos las rutas efectivas esto es una comprobación adicional de la conexión de emparejamiento si examina las rutas que se aplican a las interfaces de red de las máquinas virtuales.

Comprobamos las rutas de la interfaz de la red ventasVM.

az network nic show-effective-route-table 
    --resource-group RG1
    --name VentasVMVMNic 
    --output table

En la tabla de salida se muestran las rutas eficaces de la interfaz de red de la máquina virtual. Para VentasVMVMNic, debería ver una ruta a 10.2.0.0/16 con un próximo salto de tipoVNetPeering. Esta es la ruta de red de la conexión de emparejamiento desde VentasVNet a MarketingVNet.

Para Marketing en la tabla de salida se muestran las rutas eficaces de la interfaz de red de la máquina virtual. Para MarketingVMVMNic, debería ver una ruta a 10.1.0.0/16 con un próximo salto de tipo VNetPeering y a 10.3.0.0/16 con un próximo salto de tipo VNetGlobalPeering. Son las rutas de red de la conexión de emparejamiento desde MarketingVNet a VentasVNet, y desde MarketingVNet a InvestigacionVNet.

az network nic show-effective-route-table
    --resource-group RG1
    --name MarketingVMVMNic 
    --output table

En las rutas eficaces InvestigacionVNet de la interfaz de red de la máquina virtual. Para InvestigacionVMVMNic, debería ver una ruta a 10.2.0.0/16 con un próximo salto de tipo VNetGlobalPeering. Esta es la ruta de red de la conexión de emparejamiento desde InvestigacionVNet  hasta MarketingVNet.

az network nic show-effective-route-table 
    --resource-group RG1
    --name InvestigacionVMVMNic 
    --output table

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.