Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

TDR determinista

Descripción general determinista de NAPT

Puede configurar NAPT44 determinista para garantizar que la dirección IPv4 y el puerto originales siempre se asignen a la misma dirección IPv4 posterior a la TDR y el mismo rango de puertos, y que la asignación inversa de una dirección IPv4 externa traducida determinada y un puerto siempre se asignen a la misma dirección IPv4 interna. Puede configurar NAPT64 determinista para garantizar que la dirección IPv6 y el puerto de origen original siempre se asignen a la misma dirección IPv4 posterior a la TDR y el mismo rango de puertos, y que la asignación inversa de una dirección IPv4 externa traducida determinada y un puerto siempre se asignen a la misma dirección IPv6 interna. El NAPT determinista utiliza una asignación basada en algoritmos de bloques de puertos de destino.

El NAPT44 determinista se admite en enrutadores serie MX con MS-DPC y en enrutadores serie M con PIC multiservicios MS-100, MS-400 y MS-500. El NAPT 44 determinista es compatible con MS-MPC y MS-MIC a partir de la versión 17.3R1 de Junos OS, en la versión 14.2R7 y posteriores de Junos OS 14.2, y en la versión 15.1R3 y posteriores de Junos OS. A partir de la versión 17.4R1 de Junos OS, se admite NAPT64 determinista en MS-MPC y MS-MIC.

Si la dirección de origen en la from cláusula de una regla NAPT determinista no tiene un prefijo de /32, las direcciones de red y difusión en el rango de direcciones de origen no se traducen a menos que configure include-boundary-addresses.

Para obtener información detallada sobre cómo configurar NAPT determinista, consulte Configurar NAPT determinista.

Beneficios de NAPT determinista

  • Elimina la necesidad de registrar la traducción de direcciones, ya que una dirección IP siempre se asigna a la misma dirección IP externa y rango de puertos, y la asignación inversa de una dirección IP externa traducida determinada y un puerto siempre se asignan a la misma dirección IP interna.

Descripción de algoritmos NAPT deterministas

La efectividad de su implementación de NAPT determinista depende de su análisis de los requisitos de sus suscriptores. El tamaño de bloque que proporcione indica cuántos puertos estarán disponibles para cada dirección de suscriptor entrante del rango de la from cláusula especificada en la regla TDR aplicable. El algoritmo de asignación calcula un valor de desplazamiento para determinar la dirección IP y el puerto de salida. Se utiliza un algoritmo inverso para derivar la dirección del suscriptor de origen.

Nota:

Para rastrear a los suscriptores sin usar registros, un ISP debe usar un algoritmo inverso para derivar direcciones suscriptor (fuente) de una dirección traducida.

Las siguientes variables se utilizan en el cálculo directo (dirección IP del suscriptor privado a dirección IP pública) y en el cálculo inverso (dirección IP pública a dirección IP del suscriptor privado):

  • Pr_Prefix: cualquier dirección suscriptor IPv4 anterior a TDR.

  • Pr_Port: cualquier puerto de protocolo anterior TDR.

  • Block_Size: número de puertos configurados para estar disponibles para cada Pr_Prefix.

    Si block-size está configurado como cero, el método para calcular el tamaño de bloque se calcula de la siguiente manera:

    tamaño de bloque = int(64512/ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix)])

    donde 64512 es el intervalo máximo de puertos disponibles por dirección IP pública.

  • Base_PR_Prefix: primera dirección suscriptor IPv4 utilizable anterior a la TDR en una from cláusula de la regla TDR.

  • Base_PU_Prefix: la primera dirección suscriptor IPv4 posterior a la TDR utilizable configurada en el conjunto de TDR.

  • Pu_Port_Range_Start: primer puerto post-TDR utilizable. Esto es 1024.

  • Pr_Offset: el desplazamiento de la dirección IP anterior a la TDR que se está traduciendo de la primera dirección suscriptor IPv4 anterior a la TDR utilizable en una from cláusula de la regla TDR. PR_Offset = Pr_Prefix – Base_Pr_Prefix.

  • PR_Port_Offset: desplazamiento de la dirección IP anterior a la TDR multiplicado por el tamaño del bloque. PR_Port_Offset = Pr_Offset * Block_Size.

  • Pu_Prefix: dirección posterior al TDR para una Pr_Prefix determinada.

  • Pu_Start_Port: puerto de inicio posterior al TDR para un flujo de un Pr_Prefix determinado

  • Pu_Actual_Port: puerto posterior al TDR visto en un flujo inverso.

  • Nr_Addr_PR_Prefix — Número de direcciones suscriptor IPv4 utilizables previas a la TDR en una from cláusula de la regla de TDR.

  • Nr_Addr_PU_Prefix — Número de direcciones IPv4 post-TDR utilizables configuradas en el conjunto de TDR.

  • Rounded_Port_Range_Per_IP — Número de puertos disponibles para cada dirección IP posterior a la TDR. Rounded_Port_Range_Per_IP = ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix)] * Block_Size.

  • Pu_Offset: desplazamiento de la dirección IP posterior al TDR desde la primera dirección posterior al TDR utilizable. Pu_Offset = Pu_Prefix – Base_Pu_Prefix.

  • Pu_Port_Offset— Desplazamiento del puerto post-TDR de 1024 agregado al producto del desplazamiento de la dirección IP post-TDR y el número de puertos disponibles para cada dirección IP post-TDR. Pu_Port_Offset = (Pu_Offset * Rounded_Port_Range_Per_IP) + (Pu_Actual_Port – Pu_Port_Range_Start).

Uso de algoritmos: suponga la siguiente configuración:

Traducción directa

  1. Pr_Offset = Pr_Prefix – Base_Pr_Prefix

  2. Pr_Port_Offset = Pr_Offset * Block_Size

  3. Rounded_Port_Range_Per_IP = ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix)] * Block_Size

  4. Pu_Prefix = Base_Public_Prefix + piso(Pr_Port_Offset / Rounded_Port_Range_Per_IP)

  5. Pu_Start_Port = Pu_Port_Range_Start + (Pr_Port_Offset % Rounded_Port_Range_Per_IP)

Usando la configuración de ejemplo y asumiendo un flujo de suscriptores originado en 10.1.1.250:5000:

  1. Pr_Offset = 10.1.1.250 – 10.1.0.1 = 505

  2. Pr_Port_Offset = 505 * 249 = 125.745

  3. Rounded_Port_Range_Per_IP = CEIL[(65, 533/254)] * 249 = 259 * 249 = 64.491

  4. Pu_Prefix = 32.32.32.1 + piso (125,745 /64,491) = 32.32.32.1 +1 = 32.32.32.2

  5. Pu_Start_Port = 1.024 + (125.745 % 64.491) = 62278

    • 10.1.1.250 se traduce a 32.32.32.2.

    • El puerto de inicio es 62278. Hay 249 puertos disponibles para el suscriptor según el tamaño de bloque configurado. El rango de puertos disponible abarca los puertos 62278 a 62526 (inclusive).

    • El flujo específico 10.1.1.250:5000 asigna aleatoriamente cualquiera de los puertos de su rango porque se especificó una asignación aleatoria.

Traducción inversa

  1. Pu_Offset = Pu_Prefix – Base_Pu_Prefix

  2. Pu_Port_Offset = (Pu_Offset * Rounded_Port_Range_Per_IP) + (Pu_Actual_Port – Pu_Port_Range_Start)

  3. Subscriber_IP = Base_Pr_Prefix + piso(Pu_Port_Offset / Block_Size)

La traducción inversa se determina de la siguiente manera. Suponga un flujo que regresa a 32.32.32.2:62278.

  1. Pu_Offset = 32.32.32.2 – 32.32.32.1 = 1

  2. Pu_Port_Offset = (1 * 64.491) + (62.280 - 1024) = 125.747

  3. Subscriber_IP = 10.1.0.1 + piso (125,747 / 249) = 10.1.0.1 + 505 = 10.1.1.250

    Nota:

    En la traducción inversa, solo se puede derivar la dirección IP privada original y no el puerto original en uso. Esto es lo suficientemente granular para los requisitos de aplicación de la ley.

Cuando haya configurado NAPT determinista, puede utilizar los comandos y show services nat deterministic-nat nat-port-block para mostrar la show services nat deterministic-nat internal-host asignación hacia adelante e inversa. Sin embargo, las asignaciones cambiarán si reconfigura el tamaño de bloque de asignación de bloques de puerto determinista o la cláusula de la from regla de TDR. Para proporcionar información histórica sobre las asignaciones, le recomendamos que escriba scripts que puedan mostrar asignaciones específicas para configuraciones anteriores.

Restricciones deterministas de NAPT

Cuando configure NAPT determinista, debe tener en cuenta las siguientes restricciones. La violación de cualquier restricción da como resultado un error de confirmación. Las restricciones y sus mensajes de error se muestran en la Tabla 1.

Tabla 1: Restricciones deterministas de confirmación de NAPT

Restricción

Mensaje de error

La cantidad total de bloques TDR determinísticos debe ser mayor o igual que las from direcciones de cláusula configuradas. Esto significa que el valor Rounded_Port_Range_Per_IP debe ser menor o igual que 64.512.

El número de direcciones y la combinación de bloques de puerto en el conjunto de TDR es menor que el número de direcciones en la cláusula "from"

Las direcciones IPv6 no deben utilizarse en la cláusula determinista TDR pool/from.

Dirección IP no válida en el grupo p1 con el tipo de traducción deterministic-napt44

O BIEN

Ya existe un rango configurado con el rango de direcciones v4

Las from direcciones de las cláusulas deben ser las mismas si se utiliza el mismo conjunto de TDR determinista en varios términos o reglas. Solo se debe especificar una dirección o rango de from cláusula si se utiliza el mismo conjunto de TDR determinista en varios términos o reglas.

Con el tipo de traducción deterministic-napt44, se debe configurar la misma dirección/rango 'from' si el grupo es compartido por varias reglas o términos

La from cláusula debe tener al menos una dirección de origen.

Con el tipo de traducción deterministic-napt44, se debe configurar al menos una dirección/rango que no sea except 'from'. Error: Error en la comprobación de la configuración

No debe haber superposición de direcciones entre except las entradas en las direcciones de la from cláusula.

dirección superpuesta, en la cláusula «de» entre las entradas «excepto»

Las direcciones en un grupo TDR utilizado para NAPT determinista no deben superponerse con las direcciones en ningún otro grupo TDR.

TDR grupo det-nat-pool1 se superpone con det-nat-pool utilizado por el conjunto de servicio sset_det-nat error: error de check-out de configuración

No se puede utilizar un conjunto de TDR determinista con otros tipos de traducción. Además, no se puede usar un conjunto de TDR determinista en reglas NAPT44 deterministas y NAPT64 TDR deterministas.

El conjunto TDR determinista no se puede usar con otros tipos de traducción

El NAPT44 determinista debe usar un conjunto de fuentes con configuración deterministic-port-block-asignation.

El NAPT44 determinista debe usar un conjunto de fuentes con configuración determinista-port-block-allocation

Si address-allocation round-robin está configurado, una confirmación muestra una advertencia que indica que esta técnica no es necesaria con el tipo de traducción deterministic-napt44 y se omite.

No se necesita la asignación de direcciones mediante operación rotativa con el tipo de traducción deterministic-napt44

El número total de direcciones IP asignadas a un conjunto de TDR determinista debe ser inferior o igual a 224 (16777216).

El número de direcciones en grupo con traducción determinista-napt44 está limitado a como máximo 16777216(2^24)

Configuración de NAPT determinista

El NAPT44 determinista se admite en enrutadores serie MX con MS-DPC y en enrutadores serie M con PIC multiservicios MS-100, MS-400 y MS-500. NAPT44 determinista se admite para MS-MPC y MS-MIC a partir de la versión 17.3R1 de Junos OS, en la versión 14.2R7 de Junos OS y versiones posteriores 14.2, y en la versión 15.1R3 de Junos OS y versiones posteriores 15.1. A partir de la versión 17.4R1 de Junos OS, se admite NAPT64 determinista en MS-MPC y MS-MIC.

Para configurar NAPT determinista, realice lo siguiente:

Configuración del grupo de TDR para NAPT determinista

Para configurar el grupo de TDR para NAPT determinista:

  1. En el nivel jerárquico [edit services nat pool poolname] , cree un grupo.
  2. Defina el rango de direcciones que se van a traducir, especificando los límites superior e inferior del rango o un prefijo de dirección que describa el rango.

    O bien

  3. Para configurar la asignación automática de puertos, especifique la asignación secuencial o aleatoria.
    Nota:

    A partir de la versión 14.2R1 de Junos OS, se introduce la opción para poder configurar la sequential asignación secuencial de puertos. Las sequential opciones y random-allocation disponibles con la port automatic instrucción en el nivel jerárquico [edit services nat pool nat-pool-name] son mutuamente excluyentes. Puede incluir la opción de sequential asignación secuencial y la random-allocation opción de delegación aleatoria de puertos. De forma predeterminada, la asignación secuencial de puertos tiene lugar si solo se incluye la port automatic instrucción en el nivel de [edit services nat pool nat-pool- name] jerarquía.

    Para versiones anteriores a la versión 14.2R1 de Junos OS, configure la asignación automática de puertos secuenciales mediante la opción en el nivel de auto [edit services nat pool nat-pool-name port automatic] jerarquía.

  4. Para configurar un rango de puertos que se van a asignar, especifique los valores bajo y alto del puerto. Si no configura la asignación automática de puertos, debe configurar un rango de puertos.
    Nota:

    Si especifica un rango de puertos para asignar, se omite la automatic instrucción.

  5. Configure la asignación de bloques de puerto determinista. Especifique block-size o acepte el valor predeterminado de 512.

    También puede especificar include-boundary-addresses si desea que se traduzcan las direcciones más baja y más alta (las direcciones de red y de difusión) en el intervalo de direcciones de origen de una regla TDR cuando se utilice el conjunto de TDR. Si la dirección de origen tiene un prefijo de /32, la dirección más baja y la más alta se traducen automáticamente.

    Por ejemplo:

    Nota:

    Para que deterministic-port-block-allocation los cambios de configuración surtan efecto, debe reiniciar la PIC de servicios cada vez que cambie cualquiera de las siguientes nat pool opciones:

    • address o bien address-range

    • port range

    • port deterministic-port-block-allocation block-size

Configuración de la regla TDR para NAPT determinista

Para configurar la regla TDR para NAPT determinista:

  1. Configure el nombre de la regla TDR.
  2. Configure la dirección de coincidencia de la regla TDR como entrada.
  3. Especifique las direcciones que se traducen mediante la regla TDR.

    Para especificar una dirección:

    Para especificar un rango de direcciones:

  4. Especifique el grupo de TDR que contiene las direcciones para el tráfico traducido.
  5. Configure el tipo de traducción como NAPT44 determinista o NAPT64 determinista.

Configuración del conjunto de servicios para TDR determinista

Para configurar el conjunto de servicios para NAPT determinista:

  1. Defina el conjunto de servicios.
  2. Configure un servicio de interfaz, que requiere una interfaz de servicio única, o un servicio de salto siguiente, que requiere una interfaz de servicio interna y externa.

    o bien

  3. Especifique las reglas o el conjunto de reglas de TDR que se utilizarán con el conjunto de servicios.

Tabla de historial de cambios

La compatibilidad de la función depende de la plataforma y la versión que utilice. Utilice el Explorador de características para determinar si una característica es compatible con su plataforma.

Lanzamiento
Descripción
17.4R1
A partir de la versión 17.4R1 de Junos OS, se admite NAPT64 determinista en MS-MPC y MS-MIC.
17.4R1
A partir de la versión 17.4R1 de Junos OS, se admite NAPT64 determinista en MS-MPC y MS-MIC.
17.3R1
El NAPT 44 determinista es compatible con MS-MPC y MS-MIC a partir de la versión 17.3R1 de Junos OS
17.3R1
NAPT44 determinista es compatible con MS-MPC y MS-MIC a partir de Junos OS versión 17.3R1
14.2R1
A partir de la versión 14.2R1 de Junos OS, se introduce la opción para poder configurar la sequential asignación secuencial de puertos.