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
- Descripción de algoritmos NAPT deterministas
- Restricciones deterministas de NAPT
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.
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-sizeestá 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
fromclá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
fromclá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
fromclá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:
services {
nat {
pool src-pool {
address-range low 32.32.32.1 high 32.32.32.254;
port {
automatic {
random-allocation;
}
deterministic-block-allocation {
block-size 249;
}
}
}
rule det-nat {
match-direction input;
term t1 {
from {
source-address {
10.1.0.0/16;
}
}
then {
translated {
source-pool src-pool;
translation-type {
deterministic-napt44;
}
}
}
}
Traducción directa
Pr_Offset = Pr_Prefix – Base_Pr_Prefix
Pr_Port_Offset = Pr_Offset * Block_Size
Rounded_Port_Range_Per_IP = ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix)] * Block_Size
Pu_Prefix = Base_Public_Prefix + piso(Pr_Port_Offset / Rounded_Port_Range_Per_IP)
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:
Pr_Offset = 10.1.1.250 – 10.1.0.1 = 505
Pr_Port_Offset = 505 * 249 = 125.745
Rounded_Port_Range_Per_IP = CEIL[(65, 533/254)] * 249 = 259 * 249 = 64.491
Pu_Prefix = 32.32.32.1 + piso (125,745 /64,491) = 32.32.32.1 +1 = 32.32.32.2
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
Pu_Offset = Pu_Prefix – Base_Pu_Prefix
Pu_Port_Offset = (Pu_Offset * Rounded_Port_Range_Per_IP) + (Pu_Actual_Port – Pu_Port_Range_Start)
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.
Pu_Offset = 32.32.32.2 – 32.32.32.1 = 1
Pu_Port_Offset = (1 * 64.491) + (62.280 - 1024) = 125.747
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.
Restricción |
Mensaje de error |
|---|---|
La cantidad total de bloques TDR determinísticos debe ser mayor o igual que las |
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 |
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 |
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 |
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 |
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
- Configuración de la regla TDR para NAPT determinista
- Configuración del conjunto de servicios para TDR determinista
Configuración del grupo de TDR para NAPT determinista
Para configurar el grupo de TDR para NAPT determinista:
Ver también
Configuración de la regla TDR para NAPT determinista
Para configurar la regla TDR para NAPT determinista:
Configuración del conjunto de servicios para TDR determinista
Para configurar el conjunto de servicios para NAPT determinista:
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.
sequential asignación secuencial de puertos.