Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Traducción de direcciones de red de origen (SNAT)

Visión general

La traducción de direcciones de red de origen (source-nat o SNAT) permite que el tráfico de una red privada salga a Internet. Las máquinas virtuales lanzadas en una red privada pueden llegar a Internet pasando por una puerta de enlace capaz de realizar SNAT. La puerta de enlace tiene un brazo en la red pública y, como parte de SNAT, reemplaza la IP de origen del paquete de origen con su propia IP del lado público. Como parte de SNAT, el puerto de origen también se actualiza para que varias máquinas virtuales puedan llegar a la red pública a través de una sola puerta de enlace IP pública.

El siguiente diagrama muestra una red virtual con la subred privada de 10.1.1.0/24. La ruta predeterminada para la red virtual apunta a la puerta de enlace SNAT. La puerta de enlace reemplaza la ip de origen de 10.1.1.0/24 y utiliza su dirección pública 172.21.1.1 para los paquetes de salida. Para mantener sesiones TDR únicas, también es necesario reemplazar el puerto de origen del tráfico.

Figura 1: Red virtual con una subred Virtual Network With a Private Subnet privada

SNAT en enrutadores de la serie MX que actúan como puertas de enlace de centro de datos

A partir de Contrail Networking versión 2011.L1, puede habilitar SNAT en enrutadores serie MX mediante tarjetas de línea MS-MPC cuando el enrutador de la serie MX funciona en el rol de DC-Gateway estructura. Consulte Plataformas de hardware compatibles con Contrail Networking y roles asociados y perfiles de nodo para obtener una lista de enrutadores serie MX que admiten o DC-Gateway cualquier otro rol de estructura.

Cuando SNAT está habilitado en el enrutador de la serie MX, se puede utilizar para traducir direcciones IP de origen desde interfaces físicas en servidores sin sistema operativo y desde interfaces virtuales en máquinas virtuales. SNAT solo puede traducir las direcciones IP del tráfico de origen que sale de la estructura; no se puede utilizar para traducir direcciones IP para el tráfico que entra en la estructura.

Para obtener más información sobre SNAT en enrutadores serie MX, consulte Descripción general de la traducción de direcciones de red.

Cómo habilitar SNAT en un enrutador de la serie MX mediante Contrail Command

Para habilitar SNAT en un enrutador de la serie MX desde Contrail Command:

  1. Asegúrese de que una estructura que utilice un enrutador de la serie MX con una o más tarjetas de línea MS-MPC esté configurada en el DC-Gateway rol de estructura en su estructura.

    Consulte En enfoque: Cómo incorporar una estructura y crear una capa superpuesta para configurar una estructura.

    Consulte Asignar un rol a un dispositivo para cambiar la función de enrutamiento de un dispositivo en una estructura.

  2. Haga clic Infrastructure en > Fabrics > fabric-name para navegar a los dispositivos de su estructura. Pase el ratón sobre el mx-router-name enrutador configurado como puerta de enlace de CC en su estructura que realizará SNAT. Haga clic en el botón de puntos suspensivos (...) (situado como última opción en el extremo derecho del enrutador) y seleccione Edit.

    Se Fabric Device abrirá la página.

  3. En la Fabric Device página, abra Netconf Settings.

    En el Junos Service Interface campo, agregue el nombre de la interfaz de servicios (por ejemplo, ms-1/0/0—desde el enrutador serie MX).

  4. (Interfaces BMS que solo requieren SNAT) Cree un grupo de puertos virtuales (VPG) que asigne VLAN a interfaces físicas en servidores sin sistema operativo (BMS). Consulte Configuración de grupos de puertos virtuales.

    El VPG se utilizará más adelante en el proceso para identificar el tráfico que requiere traducción de direcciones IP mediante SNAT.

    Este paso es necesario para identificar las direcciones IP de origen solo en hosts BMS. Puede omitir este paso cuando utilice SNAT para traducir direcciones IP de origen desde interfaces de máquinas virtuales.

  5. Cree un enrutador lógico público para SNAT. Consulte Crear enrutadores lógicos.

    El enrutador lógico está configurado en el Overlay menú > > Logical Routers Edit Logical Router . En este menú, incluya los siguientes parámetros de configuración:

    • connected networks field: agregar las redes virtuales que se crearon para transportar tráfico.

      El tráfico en estas redes virtuales se traducirá mediante SNAT.

    • Public Logical Router casilla de verificación: Seleccione la casilla de verificación.

      Aparecerá SNAT POOL el menú desplegable. Seleccione snat_pool.

    • Extend to Physical Router field: agregue el enrutador de la serie MX en la estructura en la que se realiza la traducción de direcciones IP basadas en el origen.

  6. Para supervisar SNAT después de completar la configuración, inicie sesión en el enrutador de la serie MX y escriba los siguientes comandos JUNOS:
    • show configuration para comprobar la configuración de TDR en JUNOS.

    • show services nat pool para verificar la traducción.

    • Supervisar los mensajes del sistema.

    Para obtener más información sobre el uso y la supervisión de TDR en Junos, consulte la Guía del usuario de traducción de direcciones de red.

API de Neutron para enrutadores

OpenStack admite la implementación de puerta de enlace SNAT a través de sus API de Neutron para enrutadores. El indicador SNAT se puede habilitar o deshabilitar en la puerta de enlace externa del enrutador. El valor predeterminado es True (habilitado).

El complemento Tungsten Fabric es compatible con las API de Neutron para enrutadores y crea los objetos de plantilla de servicio y de instancia de servicio relevantes en el servidor DE API. El programador de servicios de Tungsten Fabric crea una instancia de la puerta de enlace en un enrutador virtual seleccionado aleatoriamente. Tungsten Fabric utiliza el espacio de nombres de red para admitir esta función.

Configuración de ejemplo: SNAT para Contrail

La función SNAT se habilita en Tungsten Fabric a través de llamadas a la API de Neutron.

En el siguiente ejemplo de configuración se muestra cómo crear una red de prueba y una red pública, lo que permite que la red de prueba llegue al dominio público a través de la puerta de enlace SNAT.

  1. Cree la red pública y establezca la marca externa del enrutador.

    neutron net-create public

    neutron subnet-create public 172.21.1.0/24

    neutron net-update public -- --router:external=True

  2. Cree la red de prueba.

    neutron net-create test

    neutron subnet-create --name test-subnet test 10.1.1.0/24

  3. Cree el enrutador con una interfaz en prueba.

    neutron router-create r1

    neutron router-interface-add r1 test-subnet

  4. Establezca la puerta de enlace externa para el enrutador.

    neutron router-gateway-set r1 public

Espacio de nombres de red

Configurar la puerta de enlace externa es el disparador para que Tungsten Fabric configure el espacio de nombres de red Linux para SNAT.

El espacio de nombres de red se puede borrar emitiendo el siguiente comando Neutron:

neutron router-gateway-clear r1

SNAT y grupos de seguridad

Cuando un enrutador lógico está habilitado para admitir SNAT, el grupo de seguridad predeterminado se aplica automáticamente a la interfaz SNAT izquierda. Esta aplicación automática del grupo de seguridad predeterminado permite que la máquina virtual envíe y reciba tráfico sin configuración de usuario adicional cuando las máquinas virtuales interconectadas utilizan el grupo de seguridad predeterminado. Sin embargo, se requiere una configuración adicional para enviar y recibir tráfico cuando la máquina virtual está conectada a máquinas virtuales que no utilizan el grupo de seguridad predeterminado.

Si va a conectar la máquina virtual a una máquina virtual que no utilice el grupo de seguridad predeterminado, debe realizar una de las siguientes actualizaciones de configuración para permitir que la máquina virtual pase tráfico:

  • actualizar el grupo de seguridad predeterminado para agregar reglas que permitan el tráfico de vm.

  • actualizar las reglas al grupo de seguridad de VM para permitir el tráfico del grupo de seguridad predeterminado.

  • aplicar el mismo grupo de seguridad a la máquina virtual y a la interfaz izquierda del SNAT.

Para obtener más información sobre cómo configurar grupos de seguridad en entornos con Contrail Networking, consulte Uso de grupos de seguridad con instancias de máquinas virtuales.

Uso de la interfaz de usuario web para configurar enrutadores con SNAT

Puede usar la interfaz de usuario de Contrail para configurar enrutadores para SNAT y para comprobar el estado de SNAT de los enrutadores.

Para habilitar SNAT para un enrutador, vaya a Configurar > enrutadores > de redes. En la lista de enrutadores, seleccione el enrutador para el que se debe habilitar SNAT. Haga clic en Editar engranaje para mostrar la ventana Editar enrutadores . Haga clic en la casilla de verificación para SNAT para habilitar SNAT en el enrutador.

A continuación, se muestra un enrutador para el que se ha habilitado SNAT.

Figura 2: Ventana de edición del enrutador para habilitar SNAT Edit Router Window to Enable SNAT

Cuando se ha habilitado un enrutador para SNAT, se puede ver la configuración seleccionando Configurar > Redes > enrutadores. En la lista de enrutadores, haga clic en Abrir el enrutador de interés. En la lista de características de ese enrutador, se muestra el estado de SNAT. A continuación se muestra un enrutador que se abrió en la lista. El estado del enrutador muestra que SNAT está habilitado.

Figura 3: Estado del enrutador para SNAT Router Status for SNAT

Puede ver el estado en tiempo real de un enrutador con SNAT viendo la consola de instancia, como se muestra a continuación.

Figura 4: Ventana de detalles de la instancia Instance Details Window

Uso de la interfaz de usuario web para configurar SNAT distribuido

La función SNAT distribuida permite que las máquinas virtuales se comuniquen con la red de estructura IP mediante la infraestructura de reenvío existente para la conectividad del nodo de computación. Esta funcionalidad se logra mediante la traducción de direcciones de puerto del tráfico de máquina virtual mediante el uso de la dirección IP del nodo de computación como dirección pública.

Se admite el siguiente caso de uso de SNAT distribuido:

  • Las redes virtuales con SNAT distribuido habilitado pueden comunicarse con la red de estructura IP. La sesión debe iniciarse desde una máquina virtual. No se admiten las sesiones iniciadas desde la red externa.

El SNAT distribuido solo se admite para TCP y UDP, y puede configurar rangos de puerto discretos para ambos protocolos.

Se utiliza un conjunto de puertos para SNAT distribuido. Para crear un conjunto de puertos, vaya a Configurar infraestructura > > configuración global. A continuación, se muestra un ejemplo de un intervalo de puertos utilizado para la traducción de direcciones de puerto.

Figura 5: Ventana editar opciones Edit Forwarding Options Window de reenvío

Para usar SNAT distribuido, debe habilitar SNAT en la red virtual. Para habilitar SNAT en la red virtual, vaya a Configurar redes > > redes. A continuación se muestra una red virtual para la que SNAT se ha habilitado en Opciones avanzadas.

Figura 6: Crear ventana Create Window