Windows Azure Networks para desarrolladores

En el año 2010 apareció un nuevo servicio en la plataforma llamado Windows Azure Connect, el cual nos daba la posibilidad de crear redes privadas virtuales, con roles que estuvieran en el cloud con nuestras máquinas on premise. Si bien este servicio ya no se conoce como tal y tenía ciertas limitaciones, a día de hoy tenemos un nuevo apartado conocido como Virtual Networks el cual engloba los siguientes puntos:

  • Crear redes privadas entre distintas máquinas de nuestra suscripción.
  • VPN site-to-site, para poder tratar nuestras máquinas virtuales en la nube como si estuvieran dentro de nuestra red on premise.
  • VPN point-to-site, dando visibilidad a una, o varias, de nuestras máquinas on premise sobre la red virtual creada en el cloud
  • Configurar servidores DNS personalizados dentro de estas redes virtuales, agregar el nuestro que está on premise o el proporcionado por la plataforma Windows Azure.

En este post voy a contar cuáles son las opciones que tenemos a día de hoy, a muy alto nivel, para conectar nuestras máquinas en el cloud con nuestra infraestructura on premise.

Virtual Networks en Windows Azure

El primer punto con el que tenemos que empezar a trabajar cuando hablamos de redes virtuales, es la creación de las mismas en el lado cloud. Básicamente la idea es que podemos crear dentro de Windows Azure redes virtuales compuestas por varias de nuestras máquinas desplegadas (VMs y cloud services).

Para realizar esta tarea tenemos dos opciones: utilizar el portal o bien crear un archivo XML con un formato específico. Al final, en cualquiera de los dos modos, el resultado final siempre será dicho archivo XML, pero quizás resulta más cómodo crearlo a través del portal de una forma más visual y exportar, en caso necesario, la configuración al archivo XML. En este enlace podemos entender los elementos del esquema. Si queremos ver el resultado que produce nuestra configuración de la red podemos exportar la configuración a través del portal.

Networks section

VPN Site-to-site

Una vez que ya tenemos configurada una red virtual, podemos valorar las opciones que tenemos dentro de Windows Azure Networks, como la posibilidad de crear VPN Site to site, con el objetivo de que nuestras máquinas en la nube formen parte de nuestra red interna (como si fuera una oficina más, por poner un ejemplo):

Site-to-site vpn

Se trata de una conexión persistente donde nuestras máquinas en el cloud están constantemente conectadas con las máquinas alojadas en nuestro propio datacenter. En el siguiente enlace podéis comprobar los dispositivos actualmente soportados y cuál es la configuración necesaria.

VPN Point-to-site

Por otro lado, si lo que necesitamos es una conexión individual y puntual de una de nuestras máquinas con nuestra red en Windows Azure, lo que utilizamos es point to site.

point-to-site vpn

Esta diferencia se ve clara cuando realizamos las configuraciones para Site to site y point to site: La primera de ellas se realiza a nivel de dispositivo y, una vez configurado, es transparente para nosotros la conexión entre los dos “mundos”. Sin embargo, cuando tenemos una conexión point to site, debemos conectarnos de manera explícita con la red:

VPN point to site Windows 8

Site to site y Point to site VPNs pueden trabajar juntas en una misma Virtual Network.

Site-to-site and point-to-site together

Name Resolution y servidores DNS

Por otro lado, seremos capaces de configurar nuestro propio servidor de DNS para la resolución de nombres de nuestras máquinas. También podemos indicar cuál es la IP de nuestro servidor DNS on premise y ser capaces de resolver el nombre de nuestras máquinas en este lado de la red.

DNS servers Windows Azure Virtual Network

Si no añadimos ninguno, se utilizará el servidor proporcionado por la plataforma.

Con este post, he intentado aclarar cuáles son las opciones de las que disponemos y poder obtener una visión clara de cuál puede ser nuestra necesidad a la hora de trabajar con Virtual Networks en Windows Azure.

Espero que sea de utilidad.

¡Buen fin de semana!