¿Qué es Azure NAT Gateway?

Completado

Como ingeniero de sistemas principal y administrador de Azure encargado de resolver los problemas de conectividad actuales con las máquinas virtuales de Azure, el primer paso es comprender los antecedentes tecnológicos y las funcionalidades de Azure NAT Gateway.

Azure NAT Gateway es un servicio en la nube totalmente administrado que se ejecuta en Azure. Es altamente resistente, escalable y fácil de configurar. Cuando se usa Azure NAT Gateway con las redes virtuales existentes en Azure, las máquinas virtuales individuales u otros recursos de Azure pueden seguir siendo totalmente privados, a menos que hospeden servicios que acepten conexiones entrantes desde Internet. Toda la conectividad saliente que se inicia desde la red virtual usa las direcciones IP públicas estáticas de NAT Gateway.

Información general de NAT

NAT no es una tecnología nueva. Se ha usado durante décadas para asignar direcciones IP locales a direcciones públicas. Uno de los propósitos principales de NAT es guardar direcciones IPv4 públicas, lo que resulta especialmente útil para los proveedores de servicios de Internet (ISP). Estas empresas pueden usar NAT para asignar un ámbito de muchas direcciones IPv4 privadas a una sola dirección IP pública o a unas pocas.

NAT también se usa en hogares y redes locales. Si tiene un enrutador doméstico que le conecta a Internet, es probable que tenga implementado NAT. De esta forma, todos sus dispositivos se enrutan a Internet mediante una sola dirección IP pública. NAT también oculta el espacio de direcciones internas, por lo que todo el tráfico saliente parece provenir de una única dirección IP pública. La dirección IP se asigna a un enrutador o dispositivo de puerta de enlace.

Al usar NAT, es importante comprender los puertos del Protocolo de control de transmisión (TCP) y su propósito. La traducción de direcciones de puerto permite que cada host de una red privada se comunique en Internet mediante una única dirección IP pública, de modo que cada ruta de comunicación se establezca a través de un puerto TCP único. El proceso es el siguiente:

  1. Un dispositivo de la red privada establece una conexión a un recurso en Internet. Cuando un dispositivo de la red privada establece una conexión a un recurso de Internet, NAT reemplaza la dirección IP interna del dispositivo en el encabezado de paquete por la dirección IP externa del dispositivo NAT.

  2. A continuación, la traducción de direcciones de puerto asigna a la conexión un número de puerto de un grupo de puertos disponibles.

  3. Ese número de puerto se inserta en el campo de puerto de origen del encabezado de paquete y, a continuación, el paquete se reenvía a Internet.

  4. A continuación, el dispositivo NAT registra una entrada en una tabla de traducción de red:

    • Para cada conexión establecida, esta entrada contiene la dirección IP interna, el puerto de origen original y el puerto de origen traducido.
    • Los paquetes posteriores de la misma dirección IP de origen interna y el número de puerto siempre se traducen a la misma dirección IP externa y número de puerto.
  5. A continuación, el equipo que recibe un paquete que se ha sometido a NAT establece una conexión con el puerto y la dirección IP especificados en el paquete modificado, sin tener en cuenta el hecho de que la dirección proporcionada está traduciéndose.

En el diagrama siguiente se muestra el proceso NAT.

The process of network address translation between a host and server.

Nota:

NAT se usa principalmente para establecer conexiones salientes a Internet. Sin embargo, no puede administrar directamente las conexiones entrantes desde Internet. Debe usar diferentes tecnologías para tal fin.

Servicio NAT de Azure

Al crear una red virtual en Azure, se le asigna un espacio de direcciones privadas y, a continuación, se crean una o varias subredes para esa red. Cuando se crea una máquina virtual en Azure y, a continuación, se coloca en esa red virtual, obtiene su dirección IP local de esa red. Si desea aceptar conexiones a Internet salientes en esa máquina virtual, también puede asignar un objeto de dirección IP pública a esa máquina virtual.

Nota:

Las máquinas virtuales de Azure a las que no asigne una dirección IP pública todavía pueden acceder a Internet mediante la traducción de direcciones de red de Azure o la traducción de direcciones de puerto. Sin embargo, en estos casos, no puede controlar qué dirección IP pública se usará para las conexiones salientes. Tampoco puede habilitar conexiones entrantes ni usar Protocolo de escritorio remoto (RDP) para conectarse a estas máquinas virtuales desde fuera; en su lugar, deberá usar un host de Azure Bastion.

Para ayudar a garantizar una conectividad saliente segura, controlable y escalable para máquinas virtuales de Azure y otros recursos, puede crear una instancia del servicio Azure NAT Gateway y, a continuación, asignarla a una o varias subredes dentro de la misma red virtual en Azure.

A continuación, el servicio Azure NAT Gateway ayuda a traducir de forma segura las direcciones IP privadas en una dirección IP pública, como se muestra en el diagrama siguiente:

Azure NAT Gateway is assigned to two subnets on a virtual network and translates private IP addresses to public IP.