Tradução de endereço de rede (NAT) éum método de reatribuir um espaço de endereço a outro alterando as informações de endereço de rede em IP (Internet Protocol). Ou seja, os cabeçalhos dos pacotes mudam enquanto estão em trânsito por meio de um dispositivo de roteamento de tráfego. Este método foi originalmente usado para redirecionar facilmente o tráfego em redes IP sem renumerar cada host. Ele se tornou uma ferramenta popular e importante para conservar e distribuir o espaço de endereço global em face da escassez de endereços IPv4.
O uso original da rede de transmissãoendereços consiste em mapear cada endereço de um espaço de endereço para um endereço correspondente em outro espaço. Por exemplo, isso é necessário se o provedor de serviços de Internet mudou e o usuário não pode anunciar publicamente a nova rota para a rede. Com o previsível esgotamento global do espaço de endereços IP, o NAT tem sido cada vez mais usado desde o final da década de 1990 em conjunto com a criptografia IP (que é um método de passar vários endereços IP em um espaço). Esse mecanismo é implementado em um dispositivo de roteamento que usa tabelas de conversão com estado para mapear endereços "ocultos" para um único endereço IP e redireciona os pacotes IP de saída. Portanto, eles parecem estar deixando o dispositivo de roteamento. No link reverso, as respostas são mapeadas para o endereço IP original usando regras armazenadas em tabelas de tradução. As regras da tabela de conversão, por sua vez, são apagadas após um curto período se o novo tráfego não atualizar seu estado. Este é o mecanismo básico de NAT. O que isto significa?
Este método permite a comunicação viao roteador apenas quando a conexão estiver em uma rede criptografada, pois isso cria tabelas de tradução. Por exemplo, um navegador da web dentro de uma rede pode exibir um site fora dela, mas, sendo instalado fora dela, não pode abrir um recurso hospedado nela. No entanto, a maioria dos dispositivos NAT hoje permite que o administrador da rede configure as entradas da tabela de tradução para uso permanente. Esse recurso é freqüentemente conhecido como NAT estático ou encaminhamento de porta e permite que o tráfego de saída para a rede "externa" alcance hosts designados na rede criptografada.
Devido à popularidade desse método, usado para preservar o espaço de endereço IPv4, o termo NAT (é o que realmente é - afirmado acima) tornou-se quase sinônimo de método de criptografia.
Uma vez que a tradução do endereço de rede mudainformações sobre o endereço dos pacotes IP, isso tem sérias consequências para a qualidade da conexão à Internet e requer muita atenção aos detalhes de sua implementação.
A maneira como o NAT é aplicado difere entre si em seu comportamento específico em diferentes casos em relação ao impacto no tráfego da rede.
Tradução de endereço de rede do tipo mais simples (NAT)fornece tradução um para um de endereços IP. RFC 2663 é o tipo principal dessa tradução. Nesse tipo, apenas os endereços IP e a soma de verificação dos cabeçalhos IP são alterados. Os tipos básicos de transmissão podem ser usados para conectar duas redes IP com endereçamento incompatível.
A maioria dos tipos de NAT são capazes demapeie vários hosts privados para um endereço IP designado publicamente. Em uma configuração típica, a LAN usa um dos endereços IP "privados" atribuídos para a sub-rede (RFC 1918). Um roteador nesta rede possui um endereço privado neste espaço.
O roteador também se conecta à Internet comusando o endereço "público" atribuído pelo provedor. Como o tráfego passa da rede local para a Internet, o endereço de origem de cada pacote é traduzido instantaneamente de um endereço privado para um público. O roteador mantém registro dos dados básicos sobre cada conexão ativa (em particular, o endereço e a porta de destino). Quando a resposta é retornada, ele usa os dados de conexão armazenados durante a fase de saída para determinar o endereço privado na rede interna para o qual a resposta deve ser roteada.
Uma das vantagens desta funcionalidade éque serve como uma solução prática para o esgotamento iminente do espaço de endereço IPv4. Mesmo grandes redes podem ser conectadas à Internet usando um único endereço IP.
Todos os datagramas de pacotes em redes IP têm 2Endereços IP - origem e destino. Normalmente, os pacotes que viajam da rede privada para a rede pública terão o endereço de origem do pacote mudando durante a transição da rede pública de volta para a privada. Configurações mais complexas também são possíveis.
A configuração do NAT pode ter algumas peculiaridades.Outras modificações são necessárias para evitar dificuldades na tradução dos pacotes devolvidos. A grande maioria do tráfego da Internet passa pelos protocolos TCP e UDP, e seus números de porta mudam de tal forma que a combinação de endereço IP e número de porta na direção inversa dos dados começa a coincidir.
Os protocolos não TCP e UDP exigemoutros métodos de tradução. O Internet Message Control Protocol (ICMP) normalmente correlaciona os dados transmitidos com uma conexão existente. Isso significa que eles devem ser exibidos usando o mesmo endereço IP e número definidos originalmente.
Configurar o NAT no roteador não permiteconexões ponta a ponta. Portanto, esses roteadores não podem participar de alguns protocolos da Internet. Os serviços que requerem o início de conexões TCP da rede externa ou usuários sem protocolos podem não estar disponíveis. A menos que o roteador NAT faça esforços especiais para oferecer suporte a esses protocolos, os pacotes de entrada não podem alcançar seu destino. Alguns protocolos podem viver em uma única tradução entre os hosts participantes (FTP "modo passivo", por exemplo), às vezes usando um gateway de camada de aplicativo, mas a conexão não será estabelecida quando ambos os sistemas forem separados da Internet usando NAT. O uso da tradução de endereços de rede também complica os protocolos de encapsulamento, como o IPsec, porque modifica os valores nos cabeçalhos que interagem com as verificações de integridade nas solicitações.
A conexão ponta a ponta é básicao princípio da Internet que existe desde o seu início. O estado atual da rede indica que o NAT está violando este princípio. Há uma séria preocupação entre os especialistas em relação ao uso generalizado da tradução de endereços de rede IPv6, e é levantado o problema de como eliminá-lo efetivamente.
Devido à natureza de curta duração das tabelas preservandoestado de tradução em roteadores NAT, os dispositivos na rede interna perdem sua conexão IP, geralmente dentro de um período de tempo muito curto. Falando sobre o que é NAT em um roteador, não devemos nos esquecer dessa circunstância. Isso reduz drasticamente o tempo de operação de baterias compactas e dispositivos recarregáveis.
Além disso, ao usar o NAT,apenas portas que podem ser drenadas rapidamente por aplicativos internos usando várias conexões simultâneas (por exemplo, solicitações HTTP para páginas da web com muitos objetos incorporados). Esse problema pode ser atenuado rastreando o IP de destino além da porta (assim, uma porta local é compartilhada por muitos hosts remotos).
Uma vez que todos os endereços internos são mascarados comoum público, torna-se impossível para hosts externos iniciarem uma conexão com um host interno específico sem uma configuração especial no firewall (que deve redirecionar as conexões para uma porta específica). Aplicativos como telefonia IP, videoconferência e serviços semelhantes devem usar técnicas de passagem de NAT para funcionar corretamente.
O endereço de retorno e a porta de tradução (Rapt) permitemum host cujo endereço IP real muda de tempos em tempos, permanece disponível como um servidor usando o endereço IP fixo da rede doméstica. Basicamente, isso deve permitir que a configuração do servidor mantenha a conexão. Embora não seja uma solução perfeita para o problema, pode ser outra ferramenta útil no arsenal de um administrador de rede ao resolver o problema de como configurar o NAT em um roteador.
A implementação Cisco Rapt é o endereço da portaTradução (PAT), que mapeia vários endereços IP privados como um público. Vários endereços podem ser exibidos como um endereço porque cada um é rastreado usando um número de porta. O PAT usa números de porta de origem de IP globais internos exclusivos para distinguir a direção da transferência de dados. Esses números são inteiros de 16 bits. O número total de endereços internos que podem ser convertidos para um endereço externo pode, teoricamente, chegar a 65536. O número real de portas às quais um único endereço IP pode ser atribuído é de cerca de 4000. Como regra, o PAT tenta manter a porta original do "original". Se já estiver em uso, a tradução de endereço de porta atribuirá o primeiro número de porta disponível do início do grupo correspondente - 0-511, 512-1023 ou 1024-65535. Quando não houver mais portas disponíveis e houver mais de um endereço IP externo, o PAT passa para o próximo para tentar alocar a porta de origem. Este processo continua até que os dados disponíveis se esgotem.
O mapeamento de endereço e porta é feito pelo serviçoCisco, que combina um endereço de porta de tradução com pacotes IPv4 de tunelamento de dados em uma rede IPv6 interna. Basicamente, é uma alternativa não oficial ao CarrierGrade NAT e DS-Lite que oferece suporte à tradução de endereço / porta IP (e, portanto, a personalização do NAT é suportada). Assim, evita problemas de configuração e manutenção de conexão e fornece um mecanismo de transição para a implantação do IPv6.
Existem várias maneiras de implementar a traduçãoendereço de rede e porta. Em alguns protocolos de aplicativos que usam aplicativos de endereçamento IP executados em uma rede criptografada, é necessário determinar o endereço NAT externo (que é usado na outra extremidade da conexão) e, além disso, muitas vezes é necessário estudar e classificar o tipo de transmissão. Isso geralmente é feito porque é desejável criar um canal de comunicação direto (para manter os dados fluindo sem problemas pelo servidor ou para melhorar o desempenho) entre dois clientes, ambos atrás de NATs separados.
Para este efeito (como configurar o NAT) em 2003 houveum protocolo especial RFC 3489 foi desenvolvido para fornecer passagem UDP simples por meio de NATS. Hoje está desatualizado, pois tais métodos hoje são insuficientes para uma avaliação correta do funcionamento de muitos dispositivos. Os novos métodos foram padronizados no RFC 5389, desenvolvido em outubro de 2008. Essa especificação é hoje chamada de SessionTraversal e é um utilitário para o NAT.
Cada pacote TCP e UDP contém o endereço IP de origem e o número da porta, bem como as coordenadas da porta de destino.
Para receber serviços publicamente disponíveis, comofuncionalidade dos servidores de correio, o número da porta é importante. Por exemplo, a porta 80 se conecta ao software do servidor da web e 25 se conecta ao servidor de correio SMTP. O endereço IP de um servidor público também é essencial, como um endereço postal ou um número de telefone. Ambos os parâmetros devem ser conhecidos de forma confiável por todos os nós que pretendem estabelecer uma conexão.
Endereços IP privados importam apenas emredes locais onde são usados, bem como para portas de host. As portas são pontos de extremidade de comunicação exclusivos em um host, portanto, o NAT traversal é suportado usando uma porta combinada e um mapeamento de endereço IP.
PAT (tradução de endereço de porta) permiteconflitos que podem surgir entre dois hosts diferentes usando o mesmo número de porta de origem para estabelecer conexões exclusivas ao mesmo tempo.