Network address translation é uma tecnologia que nos permite resolver problemas de conectividade em redes que utilizam endereços não roteáveis ou que se sobrepõem a outros já existentes.
Na maioria dos casos NAT permite a utilização de endereços ipv4 não registados para a ligação á internet.
Os dispositivos que têm um nat configurado traduzem em tempo real os endereços privados da rede para um ou mais endereços públicos válidos.
Esta tradução de endereços adiciona um nível de segurança na nossa rede pois impede a divulgação de endereços internos na rede externa.
Os dispositivos NAT também podem funcionar de forma inversa, traduzindo múltiplos endereços públicos para um ou mais endereços privados.
Vantagens do NAT:
- Eliminação de utilização de endereços públicos (registados) por cada um dos hosts que se ligam a redes externas.
- Preserva os endereços utilizando a. Multiplexagem de portas para todas as comunicações com o exterior. (permite a utilização do mesmo endereço publico por vários hosts privados).
- Permite conectividade entre redes existentes com endereços sobrepostos.
- Permite a migração de endereçamento de uma forma fácil e organizada.
Desvantagens:
- Determinados protocolos escondem os seus endereços de ip fora do header. ( embedded ip address ) Os NAT’s dinâmicos necessitam de manter informação de estado que nem sempre está disponível.
- O NAT interfere com alguns sistemas de cifra e autenticação.
- Em alguns casos dificulta a análise de logs sendo necessário correlacionar esses logs com outros existentes.
Existem Vários tipos de NAT.
- NAT estático. Traduz um endereço único interno para um endereço específico externo. (ambos os endereços são fixos)
- NAT dinâmico. Traduz um endereço interno para um endereço externo temporariamente. (quando o endereço interno deixa de usar o publico este fica disponível para outras ligações. A relação contínua de um para um.)
- PAT estático – Á semelhança de um nat estático traduz múltiplos endereços internos para um externo mantendo a porta utilizada.
- PAT dinâmico (Overload). – Traduz múltiplos endereços internos para um ou mais endereços externos mantendo, se possível, a porta utilizada escolhendo para isso um dos endereços de ip externos disponíveis, caso não seja possível, utiliza a próxima porta disponível num qualquer endereço externo.
Formas de configuração:
Nat Estático
1 2 3 4 5 6 7 | enable configure terminal ip nat inside source static 192.168.1.2 209.200.160.100 interface fa 0/0 Interface com ligação ao interior ip nat inside interface fa0/1 Interface com ligação ao exterior ip nat outside |
Nat Dinamico
1 2 3 4 5 6 7 8 9 | enable configure terminal access list 11 permit 192.168.1.0 0.0.0.255 Criação da lista de endereços que podem ser traduzidos pelo nat ip nat pool nomepool 209.200.160.100 209.200.160.110 prefix-lenght 24 conjunto de endereços externos que vão ser usados na tradução dos endereços internos. ip nat inside source list 1 pool nomepool associação dos endereços internos á pool de endereços externos int fa 0/0 interface da rede interna ip nat inside int fa 0/1 interface da rede externa ip nat outside |
Este nat dinâmico tem a tradução de endereços 1 para 1 ou seja só se conseguem ligar á rede externa 10 endereços internos de cada vez, visto apenas termos 10 externos na pool de endereços.
Se houver um 11 pedido este não vai ter sucesso na sua tradução para um endereço externo.
PAT estático
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 209.200.160.100 209.200.160.100 prefix-length 24 ip nat inside source list 1 pool nomepool overload int fa0/0 ip nat inside int fa0/1 ip nat outside |
PAT Dinamico
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 209.200.160.100 209.200.160.110 prefix-length 24 ip nat inside source list 1 pool nomepool overload int fa0/0 ip nat inside int fa0/1 ip nat outside |
Por defeito o equipamento guarda as tabelas nat por tipo de ligação algum tempo.
Aqui ficam os tempos por defeito que podem ser alterados:
· UDP – 5minutos
· TCP (sessão) – 24 horas
· SYN – 1 minuto
· FIN/RST – 1 minuto
· DNS – 1 minuto
· ICMP – 1 minuto
Por fim deixo uma configuração NAT que pode ser usada quando temos redes que se sobrepõem e cujo trafego a ser feito nat é da rede externa para a rede interna…
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 192.168.1.2 192.168.1.10 prefix-length 24 ip nat outside source list 1 pool address pool interface fa 0/0 ip nat inside interface fa 0/1 ip nat outside |
Mais informação sore o NAT
- Inside Local – Endereço pertencente ao host interno
- Inside Global – Endereço do host interno visualizado pelos hosts externos
- Outside Local – Endereço externo visualizado pelos hosts internos
- Outside Global – Endereço do host externo