NAT
siglaSignifica: Network Address Translation
Reescrever endereços IP, e em geral portas, quando pacotes passam de um domínio de endereços a outro, para muitos hosts privados dividirem um IP público.
O Network Address Translation (RFC 2663, RFC 3022) é a razão de uma casa ou escritório ficar atrás de um único IPv4 público. A forma comum, o NAPT, reescreve também as portas; NAT de origem e de destino, port forwarding e NAT de operadora são variações, e tudo o que leva endereço no payload sente.
Um NAT guarda estado por sessão. O primeiro pacote de um fluxo cria o mapeamento e os seguintes só o consultam; o NAT reescreve endereço e porta e corrige o checksum IP e o checksum TCP ou UDP, que cobre os endereços pelo pseudo header. Erros ICMP levam uma cópia dos headers originais, que também precisa ser traduzida. Acima da porta 1023, um endereço externo oferece 64.512 portas por protocolo.
A RFC 4787 separa dois comportamentos que se confundem com facilidade. O mapping decide se um endereço e porta internos mantêm o mesmo par externo para qualquer destino, e o endpoint-independent mapping é obrigatório porque ferramentas de travessia como o STUN dependem dele. O filtering decide quais pacotes de entrada passam, e só ele tem a ver com segurança. Os timers pesam tanto quanto: um mapeamento UDP tem de durar pelo menos dois minutos, e um TCP estabelecido, pelo menos 2 horas e 4 minutos.
NAT não é firewall. Ele barra tráfego de entrada não solicitado só porque não existe mapeamento; um mapeamento estático expõe o host como se não houvesse NAT, e a RFC 2993 avisa que o NAT pode até reduzir a segurança ao criar a ilusão de uma barreira. Seus custos caem sobre protocolos com endereços no payload, que precisam de ALGs, sobre o AH do IPsec, sobre caminhos assimétricos e sobre a atribuição. A RFC 2993 o chama de desvio para prolongar a vida do IPv4, e o IPv6 foi pensado para torná-lo desnecessário.
Também conhecido como: nat, pat, masquerade, source nat, snat, dnat, napt, network address port translation
Fontes
- RFC 2663, IP Network Address Translator (NAT) Terminology and Considerations, August 1999: sections 2.1 to 2.6, 3 to 3.3, 4.1 and 7 (read 2026-10-19)
- RFC 3022, Traditional IP Network Address Translator (Traditional NAT), January 2001: abstract and sections 1, 2, 3.1 and 4.1 to 4.3 (read 2026-10-19)
- RFC 4787, Network Address Translation (NAT) Behavioral Requirements for Unicast UDP, January 2007: sections 3, 4.1, 5, 12 and 13 (read 2026-10-19)
- RFC 4864, Local Network Protection for IPv6, May 2007: section 2.2 (read 2026-10-19)