No IPv6, o uso de NAT (Network Address Translation) não é recomendado pela IETF e vai contra os princípios do protocolo, já que ele foi projetado para permitir endereçamento global único sem necessidade de tradução. No entanto, em casos muito específicos (como interconexão com redes legadas ou manipulação de pacotes para segurança), você pode usar NAT66 (IPv6-to-IPv6).
Se você está usando SLAAC (Stateless Address Autoconfiguration), os clientes recebem automaticamente um endereço IPv6 com base no prefixo anunciado pelo roteador. Mesmo assim, pode haver casos em que você queira mascarar o tráfego saindo da sua rede para aparecer com um único IP público, algo parecido com o NAT masquerade do IPv4.
A seguir, está uma configuração completa de NAT66 source NAT (não ideal, mas funcional) em um Mikrotik, considerando que você quer fazer masquerade no tráfego de saída:
✅ Pré-requisitos
- Sua Mikrotik deve ter IPv6 Package instalado e ativado.
- Sua interface WAN (ex:
ether1
) deve receber um prefixo global (GUA) via DHCPv6 ou estático. - A rede interna usa SLAAC (ex: clientes conectados via
bridge-lan
).
⚙️ Passos de Configuração
# Habilite o IPv6 (caso ainda não esteja ativo)
[admin@MikroTik] > /system package enable ipv6
[admin@MikroTik] > /system reboot
# Defina a interface interna e externa
:local WAN "ether1"
:local LAN "bridge-lan"
# Habilite roteamento IPv6
/ipv6 settings set forward=yes accept-redirects=no accept-router-advertisements=no
# Adicione endereço público na WAN, se necessário
# Exemplo: /64 recebido do provedor (se não for automático)
/ipv6 address add address=2001:db8:1234::1/64 interface=$WAN advertise=no
# Configure anúncio de prefixo para a LAN (SLAAC)
/ipv6 nd set [find interface=$LAN] advertise=yes interface=$LAN other-configuration=no managed-address-configuration=no
/ipv6 nd prefix add interface=$LAN prefix=2001:db8:1234:1::/64 autonomous=yes
# (Opcional) Adicionar DNS IPv6
/ip dns set servers=2001:4860:4860::8888,2001:4860:4860::8844 allow-remote-requests=yes
# Adicionar regra de NAT66 - source NAT (masquerade)
# Aqui vamos "mascarar" o tráfego interno usando o IP global da WAN
/ipv6 firewall nat add chain=srcnat out-interface=$WAN action=src-nat to-addresses=2001:db8:1234::1
# (Opcional) Permitir tráfego IPv6
/ipv6 firewall filter add chain=input action=accept protocol=icmpv6
/ipv6 firewall filter add chain=input action=accept connection-state=established,related
/ipv6 firewall filter add chain=input action=drop in-interface=$WAN
/ipv6 firewall filter add chain=forward action=accept connection-state=established,related
/ipv6 firewall filter add chain=forward action=accept in-interface=$LAN out-interface=$WAN
/ipv6 firewall filter add chain=forward action=drop