Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Visão geral determinística do NAPT para serviços de próxima geração

Nos serviços de próxima geração com o MX-SPC3, você pode configurar serviços determinísticos de NAPT44 e NAPT64. Os serviços determinísticos de serviços de próxima geração usam um algoritmo para alocar blocos de portas de destino.

O serviço NAPT44 determinístico dos serviços de próxima geração garante que o endereço e a porta IPv4 de origem original sempre mapeiem para o mesmo endereço e alcance de porta IPv4 pós-NAT, e que o mapeamento reverso de um determinado endereço e porta IPv4 externos traduzidos são sempre mapeados para o mesmo endereço IPv4 interno.

O serviço NAPT64 determinístico dos Serviços de próxima geração garante que o endereço e a porta IPv6 de origem original sempre mapeiem para o mesmo endereço e alcance de porta IPv4 pós-NAT, e que o mapeamento reverso de um determinado endereço e porta IPv4 externos traduzidos são sempre mapeados para o mesmo endereço IPv6 interno.

Para obter informações detalhadas sobre como configurar o NAPT determinístico, veja configuração do NAPT determinístico para serviços de próxima geração.

Benefícios do NAPT determinístico

  • Elimina a necessidade de registro de tradução de endereços porque um endereço IP é sempre mapeado para o mesmo endereço IP externo e faixa de porta, e o mapeamento reverso de um determinado endereço IP externo traduzido e a porta são sempre mapeados para o mesmo endereço IP interno.

Entendendo algoritmos determinísticos de NAPT

A eficácia de sua implementação de NAPT determinístico depende da sua análise dos requisitos de seus assinantes. O tamanho do bloco que você fornece indica quantas portas serão disponibilizadas para cada endereço de assinante recebido a partir da faixa na from cláusula especificada na regra NAT aplicável. O algoritmo de alocação calcula um valor de compensação para determinar o endereço IP e a porta de saída. Um algoritmo reverso é usado para obter o endereço de assinante originado.

Nota:

Para rastrear assinantes sem usar logs, um ISP deve usar um algoritmo reverso para obter endereços de assinante (fonte) de um endereço traduzido.

As variáveis a seguir são usadas no cálculo de encaminhamento (endereço IP de assinante privado para endereço IP público) e cálculo reverso (endereço IP público para endereço IP de assinante privado):

  • Pr_Prefix — Qualquer endereço de assinante IPv4 pré-NAT.

  • Pr_Port — qualquer porta de protocolo pré-NAT.

  • Block_Size — Número de portas configuradas para cada Pr_Prefix.

    Se block-size estiver configurado como zero, o método para computação do tamanho do bloco é computado da seguinte forma:

    tamanho de bloco = int (64512/ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix))

    onde 64512 é a faixa de porta máxima disponível por endereço IP público.

  • Base_PR_Prefix — Primeiro endereço de assinante pré-NAT IPv4 utilizável em uma from cláusula da regra de NAT.

  • Base_PU_Prefix — Primeiro endereço de assinante IPv4 pós-NAT utilizável configurado no pool de NAT.

  • Pu_Port_Range_Start — Primeira porta pós-NAT utilizável. Estamos em 1024.

  • Pr_Offset — A compensação do endereço IP pré-NAT que está sendo traduzido do primeiro endereço de assinante IPv4 pré-NAT utilizável em uma from cláusula da regra NAT. PR_Offset = Pr_Prefix – Base_Pr_Prefix.

  • PR_Port_Offset — Compensação do endereço IP pré-NAT multiplicado pelo tamanho do bloco. PR_Port_Offset = Pr_Offset * Block_Size.

  • Pu_Prefix — endereço pós-NAT para um determinado Pr_Prefix.

  • Pu_Start_Port — porta de partida pós-NAT para um fluxo de um determinado Pr_Prefix

  • Pu_Actual_Port — porta pós-NAT vista em fluxo reverso.

  • Nr_Addr_PR_Prefix — Número de endereços de assinanteS IPv4 pré-NAT utilizáveis em uma from cláusula da regra de NAT.

  • Nr_Addr_PU_Prefix — Número de endereços IPv4 pós-NAT utilizáveis configurados no pool de NAT.

  • Rounded_Port_Range_Per_IP — Número de portas disponíveis para cada endereço IP pós-NAT. Rounded_Port_Range_Per_IP = ceil[(Nr_Addr_PR_Prefix/Nr_Addr_PU_Prefix)] * Block_Size.

  • Pu_Offset — Compensação do endereço IP pós-NAT a partir do primeiro endereço pós-NAT utilizável. Pu_Offset = Pu_Prefix – Base_Pu_Prefix.

  • Pu_Port_Offset— Compensação da porta pós-NAT a partir de 1024 adicionada ao produto da compensação do endereço IP pós-NAT e do número de portas disponíveis para cada endereço IP pós-NAT. Pu_Port_Offset = (Pu_Offset * Rounded_Port_Range_Per_IP) + (Pu_Actual_Port – Pu_Port_Range_Start).

Uso de algoritmo — Assuma as seguintes configurações:

Tradução para o futuro

  1. Pr_Offset =Pr_Prefix – Base_Pr_Prefix – lacunas no pool de IPs privados

    Nota:

    Quando o pool de IPs privados é feito de várias piscinas que não são contíguas, a Pr_Offset deve contar apenas os IPs privados nas piscinas. Então é a soma de:

    • A compensação dentro do pool em que o IP cai.

    • O tamanho das piscinas com IPs mais baixos.

  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)

    Nota:

    Quando o pool de IPs públicos é feito de várias piscinas que não são contíguas, a Pu_Offset deve contar apenas os IPs públicos nas piscinas. Assim, a soma deve ser destinada a:

    • Se o valor floor(Pr_Port_Offset / Rounded_Port_Range_Per_IP) for maior do que o tamanho do first Public IP pool, subtrai o tamanho deste primeiro pool a partir do valor. Então, considere o segundo tamanho da piscina.

    • Repita o processo até que o valor seja menor do que o n-th pool.

  5. Pu_Start_Port = Pu_Port_Range_Start + (Pr_Port_Offset % Rounded_Port_Range_Per_IP)

Usando a configuração da amostra e assumindo um fluxo de assinantes originado a partir de 10.1.250:5000:

  1. Pr_Offset = 10,1,1,250 – 10,1,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 = 203,0,113,1 + piso (125.745 /64.491) = 203,0.113,1 +1 = 203,0,113,2

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

    • 10.1.1.250 é traduzido para 203.0.113.2.

    • A porta inicial é 62278. Há 249 portas disponíveis para o assinante com base no tamanho do bloco configurado. A faixa de porta disponível abrange portas 62278 a 62526 (inclusive).

    • O fluxo específico 10.1.1.250:5000 atribui aleatoriamente qualquer uma das portas em seu intervalo porque a alocação aleatória foi especificada.

Tradução reversa

  1. Pr_Offset =Pr_Prefix – Base_Pr_Prefix – lacunas no pool de IPs privados

    Nota:

    Quando o pool de IPs privados é feito de várias piscinas que não são contíguas, a Pr_Offset deve contar apenas os IPs privados nas piscinas. Então é a soma de:

    • A compensação dentro do pool em que o IP cai.

    • O tamanho das piscinas com IPs mais baixos.

  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)

A tradução inversa é determinada da seguinte forma. Assuma um fluxo voltando a 203.0.113.2:62278.

  1. Pu_Offset = 203,0,113,2 – 203,0,113,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,250

    Nota:

    Na tradução inversa, apenas o endereço IP privado original pode ser derivado, e não a porta original em uso. Isso é suficientemente granular para os requisitos de aplicação da lei.

Quando você tiver configurado o NAPT determinístico, você pode usar o e show services nat deterministic-nat nat-port-block os show services nat deterministic-nat internal-host comandos para mostrar mapeamento avançado e reverso. No entanto, os mapeamentos serão alterados se você reconfigurar o tamanho do bloco de alocação de blocos de porta determinístico ou a from cláusula para sua regra de NAT. Para fornecer informações históricas sobre mapeamentos, recomendamos que você escreva scripts que possam mostrar mapeamentos específicos para configurações anteriores.

Restrições determinísticas de NAPT

Ao configurar o NAPT determinístico, fique ciente do seguinte:

  • Para a configuração determinística do endereço de host NAT64 do IPv6, oferecemos suporte à última mudança de 32 bits (4 byte) do prefixo de host IPv6. Isso significa que só podemos configurar máscaras de prefixo /96 para endereço IPv6, que oferece suporte a um número de endereço máximo de 232 para um prefixo IPv6. O endereço do host é especificado na hierarquia de [services nat source pool p1 port deterministic host] configuração.

  • Normalmente, o número de endereços na faixa de host deve ser maior do que o número de endereços no pool.

  • Melhores práticas:

    Não recomendamos que o número de endereço do host seja configurado para exceder o número total de recursos de blocos de porta, pois alguns hosts podem não receber um recurso de bloco de porta com sucesso.

  • O tamanho mínimo de bloco para NAT determinístico é 1. Se você configurar um tamanho de bloco menor, o commit falha. Se o tamanho do bloco estiver configurado para 0, o tamanho do bloco será calculado automaticamente com base no número do host e no número de endereço traduzido. Se o tamanho calculado do bloco for inferior a 1, o commit falha.

  • Para o NAPT determinístico de serviços de próxima geração, você pode configurar uma mistura de endereços de host IPv4 e IPv6 juntos em um pool de NAT em um endereço de host ou uma lista de nomes de endereços, no entanto. o número total de prefixo do host não pode exceder 1000.

  • Você não pode configurar uma faixa de endereço ou nome de DNS em um nome da lista de endereços do host.

  • O prefixo de endereço de host configurado e o nome da lista de endereços do host são mesclados se seus prefixos forem sobrepostos. Você pode usar o show services nat source deterministic comando operacional para mostrar os prefixos mesclados.

  • Melhores práticas:

    Recomendamos que você mantenha os endereços do host do assinante consistentes com várias regras que correspondam ao prefixo de endereço de origem, se o mesmo pool de NAT determinístico for usado em várias regras; caso contrário, o tráfego de hosts que não estão configurados no pool de NAT, mesmo que corresponda à regra nat, pode não alocar a porta com sucesso.

  • Para serviços NAPT de serviços de próxima geração, o número total de endereços de host configurados deve ser maior ou igual aos blocos de porta NAT determinísticos disponíveis.