Introdução
Este documento descreve uma configuração que usa o comando ip nat outside source static e os resultados dos pacotes IP do processo NAT.
Pré-requisitos
Requisitos
A Cisco recomenda ter conhecimento deste tópico:
Componentes Utilizados
As informações neste documento são baseadas nos Cisco Routers que executam a versão do software Cisco IOS®.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
Este documento fornece uma configuração de exemplo com o uso do comando ip nat outside source static e inclui uma breve descrição do que acontece ao pacote IP durante o processo de NAT. Considere a topologia de rede neste documento como um exemplo.
Configurar
Diagrama de Rede
Este documento utiliza a seguinte configuração de rede.
Diagrama de Rede
Quando você emite um ping originado da interface Loopback1 do Roteador R1 destinado à interface Loopback0 do Roteador R2, isso é o que acontece:
- Na interface externa (Gi0/0) do NAT-Router, o pacote ping aparece com um Endereço de Origem (SA) de 172.16.89.32 e um Endereço de Destino (DA) de 172.31.1.1.
- O NAT converte o SA para o Endereço local externo 172.31.16.5 (correspondente ao comando ip nat outside source static configurado no roteador NAT).
- Em seguida, o roteador NAT verifica se há uma rota para 172.31.1.1 na tabela de roteamento.
- Se a rota não existir, o roteador NAT descarta o pacote. No entanto, nesse caso, o roteador NAT tem uma rota para 172.31.1.1 através da rota estática configurada para a sub-rede 172.31.1.0/24. Encaminha o pacote para o destino.
- O roteador R2 recebe o pacote em sua interface de entrada (Gi0/0), agora com um SA de 172.31.16.5 e um DA de 172.31.1.1.
- Para responder, R2 envia uma resposta de eco do Internet Control Message Protocol (ICMP) para 172.31.16.5 (o endereço NATted).
- Se R2 não tem uma rota, ele descarta o pacote. No entanto, nesse caso, ele tem uma rota padrão em direção ao roteador NAT.
- Portanto, ele envia um pacote de resposta ao roteador NAT, com um SA de 172.31.1.1 e um DA de 172.31.16.5.
- O roteador NAT vê o pacote e verifica se há uma rota para o endereço 172.31.16.5.
- Caso não haja um, ele responde com uma resposta de ICMP inalcançável.
- Nesse caso, ele tem uma rota estática configurada para a sub-rede 172.31.16.0/24 que aponta para R1.
- Converte o pacote de volta para o endereço 172.16.89.32 e o encaminha por sua interface externa (Gi0/0).
Configurações
Este documento utiliza as seguintes configurações:
Roteador R1 |
hostname R1
!
!--- Output suppressed.
!
interface Loopback1
ip address 172.16.89.32 255.255.255.0
!
interface GigabitEthernet0/0
ip address 172.16.191.254 255.255.255.252
duplex auto
speed auto
!
interface GigabitEthernet0/1
no ip address
shutdown
! !--- Output suppressed.
ip route 0.0.0.0 0.0.0.0 172.16.191.253
!--- Default route to forward packets to NAT-Router. !--- Output suppressed. |
Roteador NAT-Roteador |
hostname NAT-Router
!
!--- Output suppressed.
!
interface GigabitEthernet0/0
ip address 172.16.191.253 255.255.255.252
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
!
interface GigabitEthernet0/1
ip address 172.31.192.202 255.255.255.0
ip nat inside
ip virtual-reassembly in
duplex auto
speed auto
!
!--- ip nat command defines GigabitEthernet0/1 as a NAT inside interface and GigabitEthernet0/0 as a NAT outside interface.
!--- Output suppressed.
!
no ip http server
no ip http secure-server
ip nat outside source static 172.16.89.32 172.31.16.5
ip route 172.31.1.0 255.255.255.0 172.31.192.201
ip route 172.31.16.0 255.255.255.0 172.16.191.254
!
!--- Outside local address is defined as 172.31.16.5.
!--- Static routes for reaching the loopback interfaces on R2 and subnet 172.31.16.0 towards R1. |
Observação: observe que, nesse cenário específico, uma rota estática apontando para Loopback1 em R1 não é necessária. Isso ocorre porque quando a resposta ICMP entra no roteador NAT, a tabela de roteamento é verificada primeiro quanto ao destino e, em seguida, a conversão de endereço é executada.
Roteador R2 |
hostname R2
!
!--- Output suppressed.
!
interface Loopback0
ip address 172.31.1.1 255.255.255.0
!
interface GigabitEthernet0/0
ip address 172.31.192.201 255.255.255.0
duplex auto
speed auto
!
!--- Output suppressed.
ip route 0.0.0.0 0.0.0.0 172.31.192.202
!--- Default route to forward packets to NAT-Router. !--- Output suppressed. |
Verificação
Use o comando show ip nat translations para verificar as entradas de conversão, como mostra esta saída:
NAT-Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 172.31.16.5 172.16.89.32
icmp 172.31.1.1:21 172.31.1.1:21 172.31.16.5:21 172.16.89.32:21
NAT-Router#
Troubleshooting
Este exemplo usa a depuração de tradução NAT e a depuração de pacote IP para demonstrar o processo NAT.
Cuidado: como os comandos debug geram uma quantidade significativa de saída, use-os somente quando o tráfego na rede IP estiver baixo, para que outra atividade no sistema não seja afetada de forma adversa.
Observação: essas saídas de depuração foram obtidas de roteadores que executam o software Cisco IOS. A coleção dessas saídas de depuração pode variar com base na plataforma usada.
Nota:Consulte Informações Importantes sobre Comandos de Depuração antes de usar comandos debug.
Essa saída é o resultado do uso dos comandos debug ip packet e debug ip nat simultaneamente no NAT-Router, durante o ping do endereço da interface de loopback1 de R1 (172.16.89.32) para o endereço da interface de loopback0 de R2 (172.31.1.1).
Esta saída mostra o primeiro pacote que chega à interface externa do NAT-Router. O endereço de origem 172.16.89.32 é traduzido para 172.31.16.5. O pacote ICMP é encaminhado para o destino através da interface GigabitEthernet0/1.
*Sep 19 15:34:39.925: NAT: s=172.16.89.32->172.31.16.5, d=172.31.1.1 [100]
*Sep 19 15:34:39.925: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, NAT Inside(8), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Sep 19 15:34:39.926: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, Common Flow Table(29), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Sep 19 15:34:39.926: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, Stateful Inspection(30), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Sep 19 15:34:39.927: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, NAT ALG proxy(63), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Sep 19 15:34:39.927: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), g=172.31.192.201, len 100, forward
*Sep 19 15:34:39.928: IP: s=172.31.16.5 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, sending full packet
Esta saída mostra o pacote de retorno originado em 172.31.1.1 com um endereço destino de 172.31.16.5, que é convertido em 172.16.89.32. O pacote ICMP resultante é encaminhado para fora da interface GigabitEthernet0/0 (NAT-Roteador).
*Sep 19 15:34:39.930: NAT*: i: icmp (172.31.1.1, 20) -> (172.31.16.5, 20) [100]
*Sep 19 15:34:39.930: NAT*: s=172.31.1.1, d=172.31.16.5->172.16.89.32 [100]
A troca de pacotes ICMP continua. O processo NAT para essa saída de depuração é o mesmo da saída anterior.
*Sep 19 15:34:39.932: NAT*: o: icmp (172.16.89.32, 20) -> (172.31.1.1, 20) [101]
*Sep 19 15:34:39.932: NAT*: s=172.16.89.32->172.31.16.5, d=172.31.1.1 [101]
*Sep 19 15:34:39.933: NAT*: i: icmp (172.31.1.1, 20) -> (172.31.16.5, 20) [101]
*Sep 19 15:34:39.933: NAT*: s=172.31.1.1, d=172.31.16.5->172.16.89.32 [101]
*Sep 19 15:34:39.935: NAT*: o: icmp (172.16.89.32, 20) -> (172.31.1.1, 20) [102]
*Sep 19 15:34:39.935: NAT*: s=172.16.89.32->172.31.16.5, d=172.31.1.1 [102]
*Sep 19 15:34:39.936: NAT*: i: icmp (172.31.1.1, 20) -> (172.31.16.5, 20) [102]
*Sep 19 15:34:39.936: NAT*: s=172.31.1.1, d=172.31.16.5->172.16.89.32 [102]
*Sep 19 15:34:39.938: NAT*: o: icmp (172.16.89.32, 20) -> (172.31.1.1, 20) [103]
*Sep 19 15:34:39.938: NAT*: s=172.16.89.32->172.31.16.5, d=172.31.1.1 [103]
*Sep 19 15:34:39.939: NAT*: i: icmp (172.31.1.1, 20) -> (172.31.16.5, 20) [103]
*Sep 19 15:34:39.939: NAT*: s=172.31.1.1, d=172.31.16.5->172.16.89.32 [103]
*Sep 19 15:34:39.940: NAT*: o: icmp (172.16.89.32, 20) -> (172.31.1.1, 20) [104]
*Sep 19 15:34:39.940: NAT*: s=172.16.89.32->172.31.16.5, d=172.31.1.1 [104]
*Sep 19 15:34:39.942: NAT*: i: icmp (172.31.1.1, 20) -> (172.31.16.5, 20) [104]
*Sep 19 15:34:39.942: NAT*: s=172.31.1.1, d=172.31.16.5->172.16.89.32 [104]
Summary
Quando o pacote trafega de fora para dentro, a conversão ocorre primeiro e, em seguida, a tabela de roteamento é verificada quanto ao destino.
Quando o pacote trafega de dentro para fora, a tabela de roteamento é verificada primeiro quanto ao destino e, em seguida, ocorre a conversão.
Consulte Ordem de Operação do NAT para obter mais informações.
Anote a parte do pacote IP que é traduzida quando usada com cada um dos comandos anteriores. Esta tabela contém as diretrizes:
Comando |
Ação |
ip nat fora da estática de origem |
- Converte a origem dos pacotes IP que trafegam da interface exterior para a interior.
- Converte o destino dos pacotes IP que trafegam da interface interior para a exterior.
|
ip nat inside source static |
- Converte a origem dos pacotes IP que trafegam da interface interior para a exterior.
- Converte o destino dos pacotes IP que trafegam da interface exterior para a interior.
|
Essas diretrizes indicam que há mais de uma forma de converter um pacote. Com base nas suas necessidades específicas, determine como definir as interfaces NAT (internas ou externas) e quais rotas a tabela de roteamento contém antes ou depois da conversão. Lembre-se de que a parte do pacote que é traduzida depende da direção em que o pacote trafega e de como você configura o NAT.
Informações Relacionadas