Sobre o NAT no Gateway de VPN do Azure
Este artigo fornece uma visão geral do suporte ao NAT (conversão de endereços de rede) no Gateway de VPN do Azure. O NAT define os mecanismos para conversão de um endereço IP em outro em um pacote de IP. Vários cenários envolvem o NAT:
- Conectar várias redes com endereços IP sobrepostos
- Conectar redes com endereços IP privados (RFC1918) à Internet (fuga da Internet)
- Conectar redes IPv6 a redes IPv4 (NAT64)
Importante
O NAT do Gateway de VPN do Azure dá suporte ao primeiro cenário para conectar redes locais ou filiais a uma rede virtual do Azure com endereços IP sobrepostos. NÃO há suporte para fuga da Internet nem NAT64.
Espaços de endereço com sobreposição
As organizações costumam usar endereços IP privados definidos no RFC1918 para comunicação interna em suas redes privadas. Quando essas redes são conectadas por VPN pela Internet ou por uma WAN privada, os espaços de endereço não podem se sobrepor; caso contrário, a comunicação falhará. Para conectar duas ou mais redes com endereços IP sobrepostos, o NAT é implantado nos dispositivos de gateway que conectam as redes.
Tipo de NAT: estático e dinâmico
O NAT em um dispositivo de gateway converte os endereços IP de origem e/ou destino com base nas políticas ou regras de NAT para evitar conflitos de endereço. Há diferentes tipos de regras de conversão de NAT:
NAT estático: as regras estáticas definem uma relação de mapeamento de endereço fixo. Para um determinado endereço IP, ele será mapeado para o mesmo endereço no pool de destino. Os mapeamentos de regras estáticas são sem estado porque o mapeamento é fixo.
NAT dinâmico: para o NAT dinâmico, um endereço IP pode ser convertido em endereços IP de destino diferentes com base na disponibilidade ou com uma combinação diferente de endereço IP e porta TCP/UDP. O último também é chamado de NAPT, conversão de endereço e porta de rede. Regras dinâmicas resultam em mapeamentos de conversão com estado dependendo dos fluxos de tráfego em um determinado momento.
Observação
Quando as regras NAT dinâmicas são usadas, o tráfego é unidirecional, o que significa que a comunicação deve ser iniciada do site representado no campo Mapeamento Interno da regra. Se o tráfego for iniciado do Mapeamento Externo, a conexão não será estabelecida. Se você precisar de iniciação de tráfego bidirecional, use uma regra NAT estática para definir um mapeamento 1:1.
Outra consideração é o tamanho do pool de endereços para a conversão. Se o tamanho do pool de endereços de destino for o mesmo que o do pool de endereços original, use a regra NAT estática para definir um mapeamento 1:1 em ordem sequencial. Se o pool de endereços de destino for menor que o original, use a regra NAT dinâmica para acomodar as diferenças.
Importante
- Há suporte para o NAT nos seguintes SKUs: VpnGw2~5, VpnGw2AZ~5AZ.
- O NAT tem suporte somente em conexões IPsec entre locais. Não há suporte para conexões VNet a VNet nem conexões P2S.
- Cada regra de NAT Dinâmico poderá ser atribuída a uma única conexão.
Modo do NAT: entrada e saída
Cada regra NAT define um mapeamento de endereços ou uma relação de conversão para o espaço de endereço de rede correspondente:
Entrada: uma regra IngressSNAT mapeia um espaço de endereço de rede local para um espaço de endereço convertido para evitar a sobreposição de endereços.
Saída: uma regra EgressSNAT mapeia o espaço de endereço da VNet do Azure para outro espaço de endereço convertido.
Para cada regra NAT, estes dois campos especificam os espaços de endereço antes e depois da conversão:
Mapeamentos Internos: O espaço de endereço antes da tradução. Para uma regra de entrada, esse campo corresponde ao espaço de endereço original da rede local. Para uma regra de saída, é o espaço de endereço da VNet original.
Mapeamentos Externos: O espaço de endereço após a tradução para redes locais (entrada) ou VNet (saída). Para redes diferentes conectadas a um gateway de VPN do Azure, os espaços de endereço de todos os Mapeamentos externos não podem se sobrepor uns aos outros nem às redes conectadas sem o NAT.
NAT e roteamento
Após uma regra NAT ser definida para uma conexão, o espaço de endereço efetivo da conexão será alterado com a regra. Se o BGP estiver habilitado no gateway de VPN do Azure, selecione "Habilitar conversão de rota BGP" para converter automaticamente as rotas aprendidas e anunciadas nas conexões com regras NAT:
Rotas aprendidas: os prefixos de destino das rotas aprendidas por meio de uma conexão com as regras IngressSNAT serão convertidos dos prefixos de mapeamento interno (pré-NAT) para os prefixos de mapeamento externo (pós-NAT) dessas regras.
Rotas anunciadas: o gateway de VPN do Azure anunciará os prefixos de mapeamento externo (pós-NAT) das regras EgressSNAT para o espaço de endereço da VNet e as rotas aprendidas com prefixos de endereço pós-NAT de outras conexões.
Consideração sobre o endereço IP do par no nível de protocolo BGP para uma rede local que passou pelo NAT:
- Endereço APIPA (169.254.0.1 a 169.254.255.254): não há suporte para NAT com endereços APIPA BGP.
- Endereço não APIPA: exclua os endereços IP do par no nível de protocolo BGP do intervalo da NAT.
Observação
As rotas aprendidas em conexões sem regras IngressSNAT não serão convertidas. As rotas de VNet anunciadas para conexões sem regras EgressSNAT também não serão convertidas.
Exemplo de NAT
O seguinte diagrama mostra um exemplo de configurações de NAT da VPN do Azure:
O diagrama mostra uma VNet do Azure e duas redes locais, tudo com o espaço de endereço 10.0.1.0/24. Para conectar essas duas redes à VNet do Azure e ao gateway de VPN, crie as seguintes regras:
Regra 1 do IngressSNAT: esta regra traduz o espaço de endereço local 10.0.1.0/24 192.168.2.0/24.
Regra 2 do IngressSNAT: esta regra traduz o espaço de endereço local 10.0.1.0/24 para 192.168.3.0/24.
Regra 1 do EgressSNAT: esta regra converte o espaço de endereço VNet 10.0.1.0/24 para 192.168.1.0/24.
No diagrama, cada recurso de conexão tem as seguintes regras:
Conexão 1 (VNet – branch 1):
- Regra IngressSNAT 1
- Regra EgressSNAT 1
Conexão 2 (VNet – branch 2)
- Regra IngressSNAT 2
- Regra EgressSNAT 1
Com base nas regras associadas às conexões, estes são os espaços de endereço para cada rede:
Rede | Original | Traduzido |
---|---|---|
VNET | 10.0.1.0/24 | 192.168.1.0/24 |
Branch 1 | 10.0.1.0/24 | 192.168.2.0/24 |
Branch 2 | 10.0.1.0/24 | 192.168.3.0/24 |
O diagrama a seguir mostra um pacote de IP do Branch 1 para a VNet, antes e depois da conversão NAT:
Importante
Apenas uma regra SNAT define a conversão para ambas as direções de uma rede específica:
- Uma regra IngressSNAT define a conversão dos endereços IP de origem que entram no gateway de VPN do Azure provenientes da rede local. Ela também cuida da conversão dos endereços IP de destino que saem da VNet para a mesma rede local.
- Uma regra EgressSNAT define a conversão dos endereços IP de origem que saem do gateway de VPN do Azure para as redes locais. Ela também cuida da conversão dos endereços IP de destino para os pacotes que entram na VNet por meio das conexões com a regra EgressSNAT.
- Em todos os casos, nenhuma regra DNAT é necessária.
Configuração do NAT
Para implementar a configuração de NAT mostrada na seção anterior, primeiro crie as regras NAT no gateway de VPN do Azure e depois crie as conexões com as regras NAT correspondentes associadas. Confira Configurar o NAT em gateways de VPN do Azure para ver as etapas para configurar o NAT para suas conexões locais.
Limitações e considerações de NAT
Importante
Há algumas restrições para o recurso NAT.
- Há suporte para o NAT nos seguintes SKUs: VpnGw2~5, VpnGw2AZ~5AZ.
- Há suporte para o NAT somente em conexões entre locais IPsec/IKE. Não há suporte para conexões VNet a VNet nem para conexões P2S.
- Não há suporte para regras NAT em conexões com a opção Usar Seletores de Tráfego Baseados em Política habilitada.
- O tamanho máximo da sub-rede de mapeamento externo com suporte para NAT Dinâmica é /26.
- Os mapeamentos de portas podem ser configurados apenas com tipos de NAT estáticos. Cenários de NAT dinâmico não são aplicáveis para mapeamentos de porta.
- No momento, os mapeamentos de porta não podem usar intervalos. A porta individual precisa ser inserida.
- Mapeamentos de porta podem ser usados para os protocolos TCP e UDP.
Perguntas frequentes sobre o NAT
O NAT tem suporte em todos os SKUs de Gateway de VPN do Azure?
NAT é suportado em VpnGw2 a VpnGw25 e em VpnGw2AZ a VpnGw5AZ.
Posso usar o NAT em conexões VNet a VNet ou P2S?
Não.
Quantas regras de NAT posso usar em um gateway de VPN?
Você pode criar até 100 regras NAT (regras de entrada e saída combinadas) em um gateway VPN.
Posso usar uma barra (/) em um nome de regra NAT?
Não. Você receberá uma mensagem de erro.
O NAT é aplicado a todas as conexões em um gateway de VPN?
O NAT é aplicado às conexões que possuem regras NAT. Se uma conexão não tiver uma regra de NAT, o NAT não terá efeito nela. No mesmo gateway VPN, você pode ter algumas conexões com NAT e outras conexões sem NAT trabalhando juntas.
Que tipos de NAT os gateways VPN suportam?
Os gateways VPN suportam apenas NAT 1:1 estático e NAT dinâmico. Eles não suportam NAT64.
O NAT funciona em gateways de VPN do tipo ativo-ativo?
Sim. O NAT funciona em gateways de VPN dos tipos ativo-ativo e ativo-em espera. Cada regra de NAT é aplicada a uma única instância do gateway de VPN. Em gateways ativo-ativo, crie uma regra NAT separada para cada instância de gateway por meio do campo ID de configuração de IP.
O NAT funciona com conexões BGP?
Sim, você pode usar o BGP com o NAT. Algumas considerações importantes:
Para garantir que as rotas aprendidas e as rotas anunciadas sejam traduzidas para prefixos de endereço pós-NAT (mapeamentos externos) com base nas regras NAT associadas às conexões, selecione Habilitar tradução de rota BGP na página de configuração para regras NAT. Os roteadores BGP locais devem anunciar os prefixos exatos conforme definido nas regras IngressSNAT.
Se o roteador VPN local usar um endereço regular não APIPA e colidir com o espaço de endereço VNet ou outros espaços de rede local, certifique-se de que a regra IngressSNAT traduzirá o IP do par BGP em um IP exclusivo e não endereço sobreposto. Coloque o endereço pós-NAT no campo BGP peer IP address do gateway da rede local.
Não há suporte para NAT com endereços APIPA BGP.
É necessário criar as regras de DNAT correspondentes à regra SNAT?
Não. Uma regra de tradução de endereço de rede de origem única (SNAT) define a tradução para ambas as direções de uma rede específica:
Uma regra IngressSNAT define a tradução dos endereços IP de origem que chegam ao gateway VPN a partir da rede local. Ele também cuida da conversão dos endereços IP de destino que saem da rede virtual para a mesma rede local.
Uma regra EgressSNAT define a tradução dos endereços IP de origem da VNet que saem do gateway VPN para redes locais. Ele também trata da tradução dos endereços IP de destino dos pacotes que chegam à rede virtual por meio das conexões que possuem a regra EgressSNAT.
Em ambos os casos, você não precisa de regras de conversão de endereço de rede de destino (DNAT).
O que devo fazer se o espaço de endereço do gateway de rede local ou VNet tiver dois ou mais prefixos? Posso aplicar NAT a todos eles ou apenas a um subconjunto?
Você precisa criar uma regra NAT para cada prefixo, porque cada regra NAT pode incluir apenas um prefixo de endereço para NAT. Por exemplo, se o espaço de endereço do gateway de rede local consistir em 10.0.1.0/24 e 10.0.2.0/25, você poderá criar duas regras:
- IngressSNAT regra 1: Mapeie 10.0.1.0/24 para 192.168.1.0/24.
- IngressSNAT regra 2: Mapeie 10.0.2.0/25 para 192.168.2.0/25.
As duas regras devem corresponder aos comprimentos dos prefixos de endereço correspondentes. A mesma diretriz se aplica às regras EgressSNAT para o espaço de endereço VNet.
Importante
Se você vincular apenas uma regra à conexão anterior, o outro espaço de endereço não será traduzido.
Quais intervalos de IP posso usar para mapeamento externo?
Você pode usar qualquer intervalo de IP adequado que desejar para mapeamento externo, incluindo IPs públicos e privados.
Posso usar regras EgressSNAT diferentes para traduzir meu espaço de endereço VNet em diferentes prefixos para redes locais?
Sim. Você pode criar várias regras EgressSNAT para o mesmo espaço de endereço VNet e, em seguida, aplicar as regras EgressSNAT a conexões diferentes.
Posso usar a mesma regra IngressSNAT em conexões diferentes?
Sim. Normalmente você usa a mesma regra IngressSNAT quando as conexões são para a mesma rede local, para fornecer redundância. Não será possível usar a mesma regra de entrada se as conexões forem para redes locais diferentes.
Preciso de regras de entrada e saída em uma conexão NAT?
Você precisa de regras de entrada e saída na mesma conexão quando o espaço de endereço de rede local se sobrepõe ao espaço de endereço da VNet. Se o espaço de endereço VNet for único entre todas as redes ligadas, não precisa da regra EgressSNAT nessas ligações. Você pode usar as regras de entrada para evitar a sobreposição de endereços entre as redes locais.
O que escolho como ID de configuração IP?
O ID de configuração IP é simplesmente o nome do objeto de configuração IP que você deseja que a regra NAT use. Com esta configuração, você está simplesmente escolhendo qual endereço IP público do gateway se aplica à regra NAT. Se você não especificou nenhum nome personalizado no momento da criação do gateway, o endereço IP primário do gateway será atribuído à configuração de IP padrão e o IP secundário será atribuído à configuração de IP activeActive.
Próximas etapas
Confira Configurar o NAT em gateways de VPN do Azure para ver as etapas para configurar o NAT para suas conexões locais.