[Artitulo] Microsoft Azure | Servicios de Red: Introducción desde cero a Redes Virtuales (Virtual Networks) en Azure

En esta publicación vamos a hacer un recorrido conceptual, desde cero y en alto nivel, a los Servicios de Red en Azure en lo referido a Redes Virtuales (Azure Virtual Networks).

Las Redes Virtuales de Azure (Azure Virtual Networks) suelen ser un componente crítico de una Infraestructura de Azure, dado que nos permiten configurar una red privada dentro de la plataforma, de modo tal de interconectar, por ejemplo, máquinas virtuales tal como lo hiciéramos en nuestra infraestructura local. Adicionalmente.

Adicionalmente, las Redes Virtuales de Azure permiten extender la red local de nuestro datacenter para que podamos montar Infraestructura en Azure como extensión de nuestro datacenter, o viceversa.

 

[toc]

Introducción

Objetivo y Alcance

Esta publicación tiene como objetivo demostrar cómo las organizaciones pueden beneficiarse con los servicios de red de Microsoft Azure, y cómo estos servicios nos ayudan a construir una nube privada dedicada 100% en la nube o extender nuestro datacenter y, por ende, extender los servicios que brindamos hacia la nube.

El alcance de esta publicación se limita a:

  • Recorrer conceptualmente y en alto nivel los principales conceptos y características de las Redes Virtuales (Virtual Networks) en Azure.
  • Recorrer conceptualmente y en alto nivel las funcionalidades que hoy tienen las Redes Virtuales (Virtual Networks) en Azure.
  • Recorrer conceptualmente las posibilidades de conectividad VPN que hoy las Redes Virtuales (Virtual Networks) en Azure proporcionan.

Audiencia

Este documento está dirigido a Consultores, Profesionales IT y personas que desarrollan tareas de Consultoría, Administración y Soporte o que simplemente están interesados en leer e investigar sobre la tecnología alcanzada por esta publicación.

Comentarios y Corrección de Errores

Hemos realizado nuestro mejor esfuerzo para no cometer errores, pero al fin y al cabo somos seres humanos. Si deseás reportar algún error o darnos feedback de qué te pareció esta publicación, por favor no dejes de comunicarte con nosotros a través de correo electrónico a la siguiente dirección: info@tectimes.net.

Desarrollo

Introducción a Redes Virtuales en Azure

Las redes virtuales en Azure (Azure Virtual Networks) son un aspecto crítico de cualquier implementación productiva. Vamos a recorrer una introducción a este servicio para poder identificar qué son y para qué se necesitan.

¿Qué es una Red Virtual en Azure?

Una red virtual en Azure es un Espacio de Direcciones definido dentro de una suscripción. En una misma suscripción pueden existir varias redes virtuales, las cuales son un entorno aislado en sí mismo.

Las máquinas virtuales y los servicios que forman parte de la misma red virtual pueden tener acceso entre sí. En cambio los servicios que se encuentran fuera de la red virtual no tienen manera de conectarse a los servicios dentro de las redes virtuales, por lo menos sin un enlace de tipo “VPN” entre ellas. Estos enlaces “VPN” también proporcionan la posibilidad de extender naturalmente la red local de una infraestructura hacia Azure.

Es importante mencionar que las redes virtuales son superposiciones Layer-3, no admitiéndose ninguna semántica de nivel 2. Esto significa que no se podrán llevar VLANs a Azure mediante una Red Virtual.

¿Qué ventajas proporciona una Red Virtual en Azure?

En un orden un poco más técnico, las redes virtuales de Azure permiten:

  • Resolución de nombres personalizada: permite configurar DNS personalizados para los equipos y servicios. Esto nos permite poder identificar servicios y equipos no solo por su dirección IP, sino utilizando registros de tipo “A”, “CNAME”, “SRV”, etc.
  • Seguridad y aislamiento para nuestro entorno: solo las máquinas virtuales y los servicios que pertenecen a una red virtual pueden tener acceso entre sí. Todos los equipos y servicios que estén por fuera de la red virtual no pueden “llegar” unos a otros.
  • Una extensión de seguridad y confianza para nuestro entorno: una red virtual amplía el límite de confianza de los equipos y servicios hasta el límite de la propia red. Esto significa que varios servicios podrían utilizar una base en común de base de datos, siempre y cuando éstos pertenezcan a la misma red virtual.
  • Asignar direcciones privadas persistentes para los equipos virtuales: los equipos virtuales dentro de una red virtual obtienen direcciones de esta red virtual. Además, se puede configurar para que el DHCP de Azure asigne siempre la misma dirección IP, de modo tal que el equipo aunque esté en modo apagado o desasignado cuando se encienda vuelva a tener la misma dirección.
  • Ampliar la Red Local de nuestra infraestructura a la nube: redes locales y redes de Azure pueden configurarse en un modelo de intercomunicación de modo tal de que equipos virtuales de la red on-premise puedan comunicarse con equipos y servicios de la red virtual de Azure. Esta es una funcionalidad clave hacia la extensión de la infraestructura local hacia la nube.

¿Necesito una Red Virtual?

La necesidad de configurar una red virtual en Azure dependerá de las necesidades técnicas y de negocio de la solución que se está llevando a cabo. Esto se podría resumir en el siguiente flujograma:

Ilustración 1 – Flujograma que nos orienta a cuándo necesitamos y qué tipo de red virtual deberíamos crear en Azure.
Ilustración 1 – Flujograma que nos orienta a cuándo necesitamos y qué tipo de red virtual deberíamos crear en Azure.


Las salidas posibles del cuadro anterior se centran en las siguientes tres posibilidades:

  • No tener una Red Virtual.
  • Tener una Red Virtual solo en Azure (de tipo “Cloud Only”).
  • Tener una solución de Redes Híbridas (de tipo “Cross Premises Connection”).

 

Una vez identificada la necesidad, se podrá avanzar en el diseño de la solución de Red para implementarla desde lo técnico. No obstante, es importante tener en cuenta que los servicios y equipos virtuales adquieren su configuración de red durante la implementación. Tal como indica la documentación de Microsoft, esto significa que no se puede mover un equipo virtual de una red a otra, sin tener que re-implementarlo. Si bien este proceso no debería representar pérdida de datos, puede significar no disponibilidad de servicio durante la re-configuración.

Conceptos y Principios de las Redes Virtuales en Azure

Ya hemos recorrido una introducción en alto nivel a las Redes Virtuales en Azure. Vamos ahora a conocer conceptos más avanzados y principios que debemos tener en cuenta sobre ellas.

Redes Virtuales y Servicios de Azure

Las redes virtuales de Azure pueden utilizarse para:

  • Máquinas Virtuales (Azure Virtual Machines).
  • Sitios Web (Azure Websites).
  • Servicios en la Nube (Cloud Services).

Configuraciones de Redes Virtuales en Azure

Configuración “Solo en la Nube” (Cloud Only Virtual Networks)

Esta configuración corresponde a una red virtual en Azure donde no se utiliza una puerta de enlace (Azure Gateway) para conectarla con otras redes (como podría ser nuestra red on-premise u otras redes virtuales de Azure). Este tipo de configuraciones no representa, específicamente, un tipo de red virtual diferente a otros. Simplemente no está el agregado de conectividad con otras redes.

En este escenario, los equipos y servicios de Azure pueden conectarse y tomar direcciones de la red virtual. Es algo muy sencillo de crear y configurar y en muy pocos minutos tendremos una red (solo para Azure) interconectada.

Si en una implementación “solo nube” luego se descubre que es necesario conectar la red de Azure con nuestra infraestructura on-premise u otras redes virtuales, simplemente se debería crear una Puerta de Enlace (Azure Gateway) y configurar el tipo de marcado VPN deseado. No obstante, la única consideración a tener en cuenta es que si existe un solapamiento de espacio de direcciones entre la red on-cloud y la red a la que se desea interconectar, debemos cambiar dicha configuración previamente.

Como conclusión, entonces, por más que se genere un escenario de red “Cloud-Only” será necesario tomar las consideraciones necesarias de diseño para que este solapamiento no exista.

Configuración “Entre Sitios” (Cross-Promises)

Una configuración de red “entre sitios” en Azure es una configuración tal que permite interconectar sitios (Azure y un sitio on-premise, por ejemplo). Este tipo de configuraciones requieren la existencia de una Puerta de Enlace (Azure Gateway) y configuraciones adicionales a la que vimos en el punto anterior.

Este tipo de configuraciones son la puerta de entrada a soluciones híbridas. Para poder generar este tipo de configuraciones requerimos primero pasar por el punto anterior: es decir, crear una Red de Azure. En el mismo momento de la creación podemos indicar que queremos conectar nuestra red con otra, o luego de haberla creado podemos realizar la modificación necesaria para habilitar una conexión cross-premises.

Puerta de Enlace (Azure Gateway)

La Puerta de Enlace en Azure (Azure Gateway) es un dispositivo virtual que permite interconectar redes. Si no queremos configurar una solución de red híbrida o con acceso punto a sitio VPN, no es necesario crearla. Ahora bien, si queremos permitir marcados VPN en nuestra red virtual de Azure debemos crear una Puerta de Enlace.

Puede confundirse el término “Puerta de Enlace” con las posibilidades de acceso a Internet. Cualquier máquina creada en Azure tiene posibilidades de salida a Internet, tenga dicha red creada o no una Puerta de Enlace. Inclusive, los equipos sin red virtual de azure pueden conectarse a Internet.

Tipos de Conexiones entre Entornos

Conceptualmente existen 3 tipos de conexiones entre entornos posibles utilizando Redes y Gateway de Azure. Vamos a introducirnos en cada una de ellas.

Sitio a Sitio (Site-To-Site)

Este tipo de conexión VPN es realizado a través de IPsec (IKE v1 e IKE v2). Permite crear una conexión segura entre una red virtual y un sitio local.

Una vez que se ha creado y enlazado esta conexión, los recursos ubicados detrás de la Puerta de Enlace local pueden comunicarse directamente con los recursos ubicados en Azure, de una manera segura.

En comparativa con la próxima opción (Punto a Sitio) no se necesario que cada equipo de nuestra red local realice una conexión hacia la red virtual de Azure para acceder a sus recursos.

Punto a Sitio (Point-To-Site)

Este tipo de conexión es realizado a través de SSTP (Protcolo de Túnel de Sockets Seguros). Permite configurar individualmente desde un Equipo en particular cliente una interconexión hacia la Red de Azure, de modo tal de acceder a sus recursos.

Las conexiones de Punto a Sitio no necesitan un dispositivo de marcado VPN, sino que funcionan con un cliente VPN instalado en el Equipo. No obstante, solo dicho equipo puede conectarse a los recursos de Azure. En el caso que sean varios los equipos que necesitan acceder a estos recursos, cada uno de ellos deberá marcar una VPN Punto a Sitio.

ExpressRoute

Este tipo de conexión es realizado a través de la red WAN, no a través de Internet Público. Ofrecen más confiabilidad y velocidades más rápidas que las anteriores dos opciones.

Para poder configurar esta conexión, necesitamos de un proveedor de Internet que nos enlace con los datacenters de Azure.

Tipos de Configuraciones entre Entornos

Si bien en el punto anterior hemos comentado los Tipos de Conexiones teóricas posibles con Azure, existen diversas configuraciones entre entornos que nos dan lugar a 4 tipos distintos. Vamos a recorrer estos x4 tipos, si bien los primeros tres son del mismo tipo de conexión.

Sitio a Sitio (Site-To-Site)

Conceptualmente, y tal como hemos indicado más arriba, este tipo de configuración permite enlazar una red virtual de Microsoft Azure (on-cloud) con una red local (on-premise) de la organización:

Ilustración 2 – Gráfico que ilustra la configuración de una VPN Sitio a Sitio (Site-to-Site VPN) en Microsoft Azure.
Ilustración 2 – Gráfico que ilustra la configuración de una VPN Sitio a Sitio (Site-to-Site VPN) en Microsoft Azure.

El escenario típico en que planteamos este tipo de configuraciones es cuando queremos extender nuestra infraestructura local hacia la nube. En dicho caso, vamos a hacer uso de las posibilidades de marcado VPN de Azure y conceptualmente estaremos configurando una VPN Sitio a Sitio entre nuestra organización on-premise y la organización on-site que tengamos configurada en Microsoft Azure.

Las próximas dos configuraciones serán del mismo “Tipo de conexión” que ésta, o sea Site-To-Site, pero conceptualmente serán otro tipo de configuraciones. ¡Vamos a recorrerlas!

Multi Sitio (Multi-Site)

Este tipo de configuración es del tipo “VPN Sitio a Sitio”. Conceptualmente, una red Multi Sitio permite enlazar varias ubicaciones externas hacia una misma red virtual de Microsoft Azure.

Por ejemplo veamos la siguiente topología de red y la conexión Multi-Sitio (ver enlace con el nombre “Multi-Site”):

Ilustración 3 - Gráfico que ilustra la configuración de una VPN Multi-Sitio (Multi-Site VPN) en Microsoft Azure.
Ilustración 3 – Gráfico que ilustra la configuración de una VPN Multi-Sitio (Multi-Site VPN) en Microsoft Azure.


Aquí vemos como para las redes “VNet1” y “VNet2” nos estamos conectando desde 3 lugares distintos:

  • Desde la ubicación física on-premise “Contoso NorthAm HQ”.
  • Desde la ubicación física on-premise “Contoso EastAisa”.
  • Desde una ubicación de azure (red de azure).

 

Este escenario es una típica infraestructura de conectividad “Multi Sitio” en Azure. Estamos haciendo uso, en cada una de las conexiones, de las posibilidades de conexión “Sitio a Sitio”, pero conceptualmente estamos realizando una configuración “Multi Sitio”.

Red Virtual a Red Virtual (VNet to VNet)

Es una conexión derivada de una VPN Site-to-Site. No obstante, conceptualmente este tipo de conexiones permite enlazar dos redes virtuales de Azure en forma segura utilizando túneles VPN de tipo IPsec/IKE S2S:

Ilustración 4 - Gráfico que ilustra la configuración de una VPN de Red Virtual a Red Virtual (VNet to VNet VPN) en Microsoft Azure.
Ilustración 4 – Gráfico que ilustra la configuración de una VPN de Red Virtual a Red Virtual (VNet to VNet VPN) en Microsoft Azure.

De esta forma pueden enlazarse suscripciones u organizaciones y comunicarse entre sí a través de sus EndPoints. Por ejemplo veamos la siguiente topología de red y la conexión VNet-to-VNet (ver enlace con el nombre “VNet-to-VNet”):

Ilustración 5 - Gráfico que ilustra la configuración de una VPN de Red Virtual a Red Virtual (VNet to VNet VPN) en una infraestructura de redes completa de ejemplo en Microsoft Azure.
Ilustración 5 – Gráfico que ilustra la configuración de una VPN de Red Virtual a Red Virtual (VNet to VNet VPN) en una infraestructura de redes completa de ejemplo en Microsoft Azure.


¿Qué motivos pueden llevar a generar una conexión de tipo VNet-to-VNet? Los motivos pueden ser varios:

  • Una conexión entre regiones para poder tener geo-presencia o geo-redundancia, por ejemplo en escenarios de SQL AlwaysOn entre diferentes datacenters de Azure.
  • Enlaces entre suscripciones, de modo tal de poder enlazar organizaciones y multiples suscripciones de una misma organización.
  • Aplicaciones multi-capa regionales.
  • Enlazar dos redes que están en una misma suscripción y que, por diseño, fueron dimensionadas de esa forma.
Punto a Sitio (Point-To-Site)

Por último, y tal como comentamos en la configuración entre entornos, esta conexión permite enlazar un equipo hacia la red de Azure, de tal forma que dicho equipo o dispositivo tenga conectividad completa con la red de Azure, pero esto no signifique que otros equipos que pertenecen a la red se puedan conectar también con Azure:

Ilustración 6 - Gráfico que ilustra la configuración de una VPN Punto a SitioVirtual (Point-to-Site VPN) en una infraestructura de redes completa de ejemplo en Microsoft Azure.
Ilustración 6 – Gráfico que ilustra la configuración de una VPN Punto a SitioVirtual (Point-to-Site VPN) en una infraestructura de redes completa de ejemplo en Microsoft Azure.


Este tipo de configuración es muy útil cuando:

  • Queremos acceder a la red virtual de Azure desde nuestra computadora personal cuando estamos fuera de la organización que tiene la red Sitio a Sitio configurada, por lo cual necesitamos un canal seguro de comunicación.
  • Queremos conectar un equipo en particular, y no toda la red, hacia Azure. Este equipo puede ser un servidor que debe realizar, por ejemplo, transacciones hacia la infraestructura en la nube.

Redes Virtuales y Direcciones IPs

Vamos a comentar particularidades y características de las direcciones IP privadas y públicas en Azure, y sus posibilidades de configuración.

Direcciones IP Privadas

En Azure se pueden ingresar todo tipo de bloques de direcciones compatibles con RFC 1918 (espacios privados). Cuando se agrega un Espacio de Direcciones en una Red de Azure, dicho espacio de direcciones puede ser separada en subnets:

Ilustración 7 – Ejemplo de Espacio de Direcciones privada y Subredes en Microsoft Azure.
Ilustración 7 – Ejemplo de Espacio de Direcciones privada y Subredes en Microsoft Azure.


Nótese, en la imagen anterior, cómo un espacio de direcciones privado 10.2.0.0/16 luego tiene diversas Subnets. El diseño e implementación de estas subnets va a depender de los requerimientos de negocio y posibilidades tecnológicas de nuestras aplicaciones y soluciones en Azure.

Los Equipos Virtuales, por ejemplo, luego estarán relacionados con una Red y Subnet de Azure, de modo tal de recibir direcciones privadas del espacio seleccionado.

Direcciones IP Públicas

En Azure se pueden incorporar direcciones IP públicas a una Red Virtual. Estas direcciones pueden agregarse de la misma forma que se agregarían direcciones privadas:

Ilustración 8 – Ejemplo de Espacio de Direcciones pública y Subredes en Microsoft Azure.
Ilustración 8 – Ejemplo de Espacio de Direcciones pública y Subredes en Microsoft Azure.


¿Existen limitaciones? Si. Los siguientes rangos de direcciones no están disponibles:

  • 224.0.0.0/4 (Multicast).
  • 255.255.255.255/32 (Broadcast).
  • 127.0.0.0/8 (loopback).
  • 169.254.0.0/16 (link-local).
  • 68.63.129.16/32 (Internal DNS).

Límites Conocidos de Redes Virtuales en Azure

Actualmente (Febrero de 2015) se conocen los siguientes límites en Redes Virtuales de Microsoft Azure:

Ilustración 9 – Limitaciones en Redes Virtuales de Microsoft Azure conocidas a Febrero de 2015.
Ilustración 9 – Limitaciones en Redes Virtuales de Microsoft Azure conocidas a Febrero de 2015.


Operación de Redes Virtuales

Vamos a recorrer los aspectos más importantes de la operación de redes virtuales en Microsoft Azure.

ABM de Redes Virtuales

Hemos desarrollado un tutorial donde explicamos, en detalle, las operaciones básicas con Redes Virtuales y Puerta de Enlace de Azure. Te invitamos a visitarlo: https://pablodiloreto.com/tutorial-microsoft-azure-creacion-y-configuracion-de-una-red-virtual-virtual-network-y-puerta-de-enlace-azure-gateway-en-azure-desde-powershell/.

Conclusiones

Las redes virtuales son un aspecto crítico en cualquier implementación de Microsoft Azure. En esta publicación hemos recorrido aspectos principalmente conceptuales relacionados a cómo se relacionan con los servicios de Azure, sus posibles conexiones y tipos de configuración posibles.

Una de las características más importantes, a nuestro parecer, de las Redes Virtuales en Microsoft Azure es que son la puerta de entrada para extender nuestra infraestructura local hacia la nube, permitiendo traspasar las fronteras de nuestro datacenter y posibilitar que nuestra LAN llegue a la nube. Este es un aspecto no menor para poder garantizar, a los usuarios, la experiencia de que no importan donde estén alojados nuestros servicios, ellos tendrán acceso a sus aplicaciones de negocio.

Si nuestra organización prefiere no extender los límites de su datacenter (o no lo tiene), las Redes Virtuales en Microsoft Azure igualmente cobran una importancia tremenda: representan un límite de aislamiento y, por ende, seguridad, para los servidores y servicios que alojemos en Microsoft Azure. Para poder montar un Servicio de Directorio en la nube, por ejemplo, vamos a necesitar indefectiblemente de una red virtual correctamente dimensionada en Azure, de modo tal que los servidores Controladores de Dominio (y el resto de la infraestructura) tomen direcciones IPs correspondientes a la subred elegida, y se puedan comunicar en forma transparente con el resto de los servidores y servicios.

En conclusión, esperamos que esta publicación les sea de utilidad para poder entender aquellos conceptos más básico (y no tanto) de las Redes Virtuales en Microsoft Azure, en pos de que puedan estar mejor preparados para afrontar los nuevos desafíos que esta tecnología propone. ¡Saludos para todos!

 

Referencias y Links

 

Acerca del Autor

0 0 votes
Article Rating

Professor. Techie. Ice cream fan (dulce de leche). My favorite phrase: "Todos los días pueden no ser buenos ... pero hay algo bueno en todos los días". Currently I´m Engineering Manager at MODO (https://modo.com.ar), the payment solution that allows you to connect your money and your world to simplify everyday life. Modo is a payment solution in which you can send, order and pay from your mobile device in the safest, most practical and convenient way. I enjoy a lot of educational, technological talks and a good beer. If you want to talk, write me to pablodiloreto@hotmail.com.

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments