IP : Traduction d'adresses de réseau (NAT)

Configuration simultanée de NAT en mode statique et dynamique

18 juin 2016 - Traduction automatique
Autres versions: PDFpdf | Anglais (19 décembre 2015) | Commentaires


Contenu


Introduction

Dans certaines situations, vous aurez sûrement à configurer les commandes de traduction des adresses réseaux (NAT) statique et dynamique sur un routeur Cisco. Ce document explique la manière de procéder et donne un exemple de scénario.

Conditions préalables

Conditions requises

La connaissance des concepts et des opérations NAT de base est utile.

Composants utilisés

Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :

  • Routeurs de la gamme Cisco 3600

  • Version de logiciel 12.3(3) de ½ du ¿  de Cisco IOSïÂ

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.

Conventions

Pour plus d'informations sur les conventions de documents, reportez-vous à Conventions relatives aux conseils techniques Cisco.

Configuration de NAT

Avec un NAT dynamique, les traductions n'existent pas dans la table NAT tant que le routeur ne reçoit pas de trafic pour lequel une traduction est nécessaire. Les traductions dynamiques sont purgées de la table de traduction après une période d'expiration.

Avec un NAT statique, les traductions existent dans la table de traduction NAT dès que vous configurez la commande NAT statique et sont conservées jusqu'à ce que vous supprimiez cette dernière.

Le diagramme de réseau suivant en est un exemple :

http://www.cisco.com/c/dam/en/us/support/docs/ip/network-address-translation-nat/13778-9a.gif

Ces commandes sont configurées sur le routeur NAT présenté ci-dessus :

Routeur NAT
version 12.3

ip nat pool test 172.16.131.2 172.16.131.10 netmask 255.255.255.0
 


!--- Refer to 
ip nat pool
 for more details on the command.
.

ip nat inside source list 7 pool test  


!--- Refer to 
ip nat inside source
 for more details on the command.


ip nat inside source static 10.10.10.1 172.16.131.1

 interface e 0

 ip address 10.10.10.254 255.255.255.0

 ip nat inside

 interface s 0

 ip address 172.16.130.2 255.255.255.0

 ip nat outside

ip route 192.168.1.0 255.255.255.0 172.16.130.1

 access-list 7 permit 10.10.10.0 0.0.0.255

La configuration sur le périphérique OutsideA est la suivante :

Routeur OutsideA
version 12.3
hostname outsideA

!
!
!
interface Serial1/0

ip address 172.16.130.1 255.255.255.0

serial restart-delay 0

clockrate 64000

!

interface FastEthernet2/0

ip address 192.168.1.1 255.255.255.0

speed auto

half-duplex

ip route 172.16.131.0 255.255.255.0 172.16.130.2

La configuration sur le périphérique InsideA est la suivante :

Routeur InsideA
version 12.3

!
interface Ethernet1/0
 ip address 10.10.10.1 255.255.255.0
 half-duplex
!
ip route 0.0.0.0 0.0.0.0 10.10.10.254
!
!

A l'aide de la commande show ip nat translations, vous pouvez voir le contenu de la table de traduction :

NATrouter#show ip nat translations
Pro Inside global    Inside local    Outside local    Outside global
--- 172.16.131.1     10.10.10.1      ---              ---

Notez que seule la traduction statique est mentionnée dans la table de traduction. Cette entrée renvoie une traduction de l'adresse globale interne à l'adresse locale interne ; ainsi les périphériques du nuage externe peuvent envoyer des paquets à l'adresse globale 172.16.131.1 et atteindre le périphérique du nuage interne à l'adresse locale 10.10.10.1.

Ce processus est représenté ci-dessous :

outsideA#ping 172.16.131.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.131.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 32/32/32 ms

 

NATrouter#debug ip nat 

18:12:06: NAT*: s=172.16.130.1, d=172.16.131.1->10.10.10.1 [1005]
18:12:06: NAT: s=10.10.10.1->172.16.131.1, d=172.16.130.1 [1005]
18:12:06: NAT*: s=172.16.130.1, d=172.16.131.1->10.10.10.1 [1006]
18:12:06: NAT*: s=10.10.10.1->172.16.131.1, d=172.16.130.1 [1006]
18:12:06: NAT*: s=172.16.130.1, d=172.16.131.1->10.10.10.1 [1007]
18:12:06: NAT*: s=10.10.10.1->172.16.131.1, d=172.16.130.1 [1007]
18:12:06: NAT*: s=172.16.130.1, d=172.16.131.1->10.10.10.1 [1008]
18:12:06: NAT*: s=10.10.10.1->172.16.131.1, d=172.16.130.1 [1008]
18:12:06: NAT*: s=172.16.130.1, d=172.16.131.1->10.10.10.1 [1009]
18:12:06: NAT*: s=10.10.10.1->172.16.131.1, d=172.16.130.1 [1009]

Aucune autre traduction n'est générée ou entrée dans la table de traduction tant que le routeur ne reçoit pas de paquet sur son interface interne avec une adresse source autorisée par la liste de contrôle d'accès (ACL) 7.

Cependant, puisqu'aucune traduction dynamique n'existe encore, les périphériques externes ne peuvent atteindre aucun des périphériques internes (autres que 10.10.10.1), et ce même s'ils envoient des paquets à une adresse globale (172.16.131.2 via 172.16.131.10). Quand le routeur reçoit un paquet destiné à une de ces adresses globales, il vérifie la table de traduction pour s'assurer qu'une traduction existe. Si aucune traduction n'existe, il modifie le routage du paquet. Ce comportement NAT est traité plus loin dans un exemple de configuration avec la commande ip nat outside source list et un exemple de configuration avec la commande ip nat outside source static.

Dans la topologie ci-dessus, si la communication entre les périphériques réseau internes et externes provient uniquement des périphériques internes, la traduction dynamique s'effectue correctement. Mais que se passe-t-il si un serveur de messagerie est ajouté sur le réseau interne qui doit recevoir des paquets émis depuis l'extérieur ? Vous devez configurer une entrée NAT statique afin que les serveurs de messagerie externes puissent communiquer avec le serveur de messagerie interne. Dans l'exemple ci-dessus, si le serveur de messagerie a l'adresse locale 10.10.10.1, une traduction statique est déjà disponible.

Toutefois, si le nombre d'adresses globales disponibles est limité et que vous devez configurer un seul périphérique de manière statique pour le NAT, vous pouvez utiliser une configuration comme celle ci-dessous :

Routeur NAT
ip nat inside source list 7 interface serial 0 overload


ip nat inside source static tcp 10.10.10.1 25 172.16.130.2 25

!--- Refer to 
ip nat inside source
 for more details on the command.


 interface e 0

 ip address 10.10.10.254 255.255.255.0

 ip nat inside 

!--- For more details the ip nat inside|outside command,
!--- please refer to 
ip nat inside
.


 interface s 0

ip address 172.16.130.2 255.255.255.0

ip nat outside 

 access-list 7 permit 10.10.10.0 0.0.0.255

 ip route 0.0.0.0 0.0.0.0 172.16.130.1

Dans l'exemple ci-dessus, le NAT est configuré pour surcharger l'adresse IP de l'interface Serial 0. Ceci signifie que plus d'une adresse d'interne local peut être dynamiquement traduite à la même adresse globale, dans ce cas, l'adresse attribuée à l'interface série 0. en outre, NAT est statiquement configuré de sorte que des paquets originaires de l'adresse locale 10.10.10.1 avec le port TCP 25 (SMTP) soient traduits au port TCP séquentiel 25 de l'adresse IP 0's. Puisque qu'il s'agit d'une entrée NAT statique, les serveurs de messagerie externes peuvent émettre des paquets SMTP (port TCP 25) à l'adresse globale 172.16.131.254.

Remarque: Bien qu'il soit possible d'utiliser la même adresse globale pour le NAT dynamique et statique, il est préférable d'utiliser autant que possible différentes adresses globales.

La table de traduction NAT a l'entrée suivante :

NATRouter#show ip nat translations

   Pro Inside global    Inside local   Outside local Outside global

   tcp 172.16.130.2:25  10.10.10.1:25      ---          --- 

La sortie de debug ip nat affiche la traduction NAT lorsque le périphérique OutsideA accède au périphérique InsideA :

04:21:16: NAT: s=192.168.1.3, d=172.16.130.2->10.10.10.1    [9919]

   04:21:16: NAT: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [0]

   04:21:16: NAT*: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9922]

   04:21:16: NAT*: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9923]

   04:21:16: NAT*: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [1]

   04:21:16: NAT*: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [2]

   04:21:16: NAT*: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [3]

   04:21:16: NAT*: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9927]

   04:21:16: NAT*: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [4]

   04:21:16: NAT: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [5]

   04:21:16: NAT*: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9931]

   04:21:17: NAT*: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9934]

   04:21:17: NAT: s=192.168.1.3, d=172.16.130.2->10.10.10.1 [9935]

   04:21:17: NAT*: s=10.10.10.1->172.16.130.2, d=192.168.1.3 [6]

En résumé, le NAT dynamique exige que les paquets soient commutés par le routeur NAT afin de générer des traductions NAT dans la table de traduction. Si vous utilisez la commande ip nat inside, ces paquets doivent provenir de l'intérieur. Si vous utilisez la commande ip nat outside, ces paquets doivent provenir de l'extérieur.

Le NAT statique ne requiert pas que des paquets soient commutés par le routeur. De plus, les traductions sont entrées de manière statique dans la table de traduction.

Conversations connexes de la communauté de soutien de Cisco

Le site Cisco Support Community est un forum où vous pouvez poser des questions, répondre à des questions, faire part de suggestions et collaborer avec vos pairs.


Informations connexes


Document ID: 13778