Uso de Private Link en Virtual WAN

Azure Private Link es una tecnología que le permite conectar ofertas de plataforma como servicio de Azure mediante la conectividad de direcciones IP privadas exponiendo puntos de conexión privados. Con Azure Virtual WAN, puede implementar un punto de conexión privado en una de las redes virtuales conectadas a cualquier concentrador virtual. Este vínculo privado proporciona conectividad a cualquier otra red virtual o rama conectada a la misma Virtual WAN.

Antes de empezar

En los pasos de este artículo se da por hecho que ya ha implementado una instancia de Virtual WAN con uno o más concentradores y al menos dos redes virtuales conectadas a Virtual WAN.

Para crear una nueva WAN virtual y un nuevo centro, siga los pasos que se describen en los siguientes artículos:

Creación de un punto de conexión de vínculo privado

Puede crear un punto de conexión de vínculo privado para muchos servicios diferentes. En este ejemplo, usaremos Azure SQL Database. Puede encontrar más información sobre cómo crear un punto de conexión privado para una instancia de Azure SQL Database en Inicio rápido: Creación de un punto de conexión privado mediante Azure Portal. La siguiente imagen muestra la configuración de red de Azure SQL Database:

Creación de un vínculo privado

Después de crear la instancia de Azure SQL Database, puede comprobar que la dirección IP del punto de conexión privado examine los puntos de conexión privados:

Puntos de conexión privados

Al hacer clic en el punto de conexión privado que hemos creado, debería ver su dirección IP privada y su nombre de dominio completo (FQDN). El punto de conexión privado debería tener una dirección IP en el intervalo de la red virtual donde se haya implementado (10.1.3.0/24):

Punto de conexión de SQL

Comprobación de la conectividad de la misma red virtual

En este ejemplo, se comprobará la conectividad a la instancia de Azure SQL Database desde una máquina virtual de Linux con las herramientas de MS SQL instaladas. El primer paso consiste en comprobar que la resolución de DNS funciona y que el nombre de dominio completo de Azure SQL Database se resuelve en una dirección IP privada, en la misma red virtual donde se ha implementado el punto de conexión privado (10.1.3.0/24):

nslookup wantest.database.windows.net
Server:         127.0.0.53
Address:        127.0.0.53#53

Non-authoritative answer:
wantest.database.windows.net    canonical name = wantest.privatelink.database.windows.net.
Name:   wantest.privatelink.database.windows.net
Address: 10.1.3.228

Como puede ver en la salida anterior, el nombre de dominio completo wantest.database.windows.net está asignado a wantest.privatelink.database.windows.net y que la zona DNS privada creada a lo largo del punto de conexión privado se resolverá en la dirección IP privada 10.1.3.228. Al examinar la zona DNS privada, se confirmará que hay un registro A para el punto de conexión privado asignado a la dirección IP privada:

Zona DNS

Después de comprobar la resolución de DNS correcta, podemos intentar conectar a la base de datos:

query="SELECT CONVERT(char(15), CONNECTIONPROPERTY('client_net_address'));"
sqlcmd -S wantest.database.windows.net -U $username -P $password -Q "$query"
10.1.3.75

Como puede ver, usamos una consulta SQL especial que nos proporciona la dirección IP de origen que SQL Server ve desde el cliente. En este caso, el servidor ve el cliente con su dirección IP privada (10.1.3.75), lo que significa que el tráfico viaja desde la red virtual directamente hasta el punto de conexión privado.

Establezca las variables username y password para que coincidan con las credenciales definidas en la instancia de Azure SQL Database para que los ejemplos de esta guía funcionen.

Conexión desde otra red virtual

Ahora que una red virtual de Azure Virtual WAN tiene conectividad con el punto de conexión privado, todas las demás redes virtuales y ramas conectadas a Virtual WAN también pueden tener acceso a ella. Debe proporcionar conectividad a través de cualquiera de los modelos admitidos por la Azure Virtual WAN, como el escenario universal o el escenario de la red virtual de servicios compartidos, por mencionar dos ejemplos.

Cuando tenga conectividad entre la red virtual o la rama en la red virtual donde se ha implementado el punto de conexión privado, deberá configurar la resolución de DNS:

  • Si se conecta al punto de conexión privado desde una red virtual, puede usar la misma zona privada que se creó con la instancia de Azure SQL Database.
  • Si se conecta al punto de conexión privado desde una rama (VPN de sitio a sitio, VPN de punto a sitio o ExpressRoute), debe usar la resolución DNS local.

En este ejemplo, nos estamos conectando desde una red virtual diferente. Primero adjuntaremos la zona DNS privada a la nueva red virtual para que las cargas de trabajo puedan resolver el nombre de dominio completo de Azure SQL Database en la dirección IP privada. Esto se hace a través de la vinculación de la zona DNS privada a la nueva red virtual:

Vínculo de DNS

Ahora, todas las máquinas virtuales de la red virtual conectada deberían resolver correctamente el nombre de dominio completo de Azure SQL Database en la dirección IP privada del vínculo privado:

nslookup wantest.database.windows.net
Server:         127.0.0.53
Address:        127.0.0.53#53

Non-authoritative answer:
wantest.database.windows.net    canonical name = wantest.privatelink.database.windows.net.
Name:   wantest.privatelink.database.windows.net
Address: 10.1.3.228

Para comprobar de nuevo que esta red virtual (10.1.1.0/24) tiene conectividad con la red virtual original en la que se configuró el punto de conexión privado (10.1.3.0/24), puede comprobar la tabla de rutas efectiva en cualquier máquina virtual de la red virtual:

Rutas efectivas

Como puede ver, hay una ruta que apunta a la red virtual 10.1.3.0/24 inyectada por las puertas de enlace de red virtual de Azure Virtual WAN. Ahora ya podemos probar la conectividad a la base de datos:

query="SELECT CONVERT(char(15), CONNECTIONPROPERTY('client_net_address'));"
sqlcmd -S wantest.database.windows.net -U $username -P $password -Q "$query"
10.1.1.75

En este ejemplo, hemos visto que la creación de un punto de conexión privado en una de las redes virtuales conectadas a una instancia de Virtual WAN proporciona conectividad al resto de redes virtuales y ramas de dicha instancia.

Pasos siguientes

Para más información sobre Virtual WAN, consulte las preguntas más frecuentes.