NAT (NETWORK ADDRESS TRANSLATION) STATIQUE
Sur cette topologie, nous allons voir comment le routeur va traduire une adresse source privée en adresse publique, avec du NAT (Network Address Translation) statique !
Le PCA qui porte l’IP 192.168.0.1 veut communiquer avec le serveur web qui se trouve derrière internet, et qui porte l’IP public 221.107.50.10
Le paquet va arriver sur le routeur, et celui-ci va vérifier sa table NAT !
Comme le routeur trouve bien une correspondance dans celle-ci, il va remplacer l'adresse source locale interne du PC, c’est-à-dire la 192.168.0.1 par l'adresse globale traduite en 218.115.20.2.
Cette adresse est l’IP publique de notre routeur, qui permet de surfer sur le NET. Une fois la translation faite, le paquet sera envoyé !
Ensuite, le serveur Web va bien recevoir le paquet du PC A et lui répondra en utilisant l’IP public de notre routeur en adresse de destination.
Il s’agit donc de l’adresse générale interne.
Et lorsque le routeur recevra ce retour du serveur Web sur son interface externe à destination de la inside général, il consultera de nouveau sa table NAT et traduira la inside global en inside local, avant de transmettre le paquet.
La communication entre le PC A et le serveur web fonctionne correctement à travers internet en utilisant du NAT statique !
Le NAT statique est un mappage un à un entre une adresse interne et une adresse externe.
On peut comparer l’adresse interne à celle de notre PC à la maison, et l’adresse externe, c'est l’IP public de la box internet.
Celle qui vous permet de surfer sur internet.
Le NAT statique fonctionne aussi en sens inverse, par exemple, on peut mapper une adresse globale interne à une adresse locale. Très utile pour un serveur Web.
Passons maintenant à sa configuration qui est relativement simple.
Pour commencer, sur le routeur, on va configurer l’IP public sur son interface cotée internet et on va taguer l’interface avec la commande « IP nat outside », ainsi pour lui dire qu’elle est bien connectée vers l’extérieur, du côté WAN !
Ensuite, on configure une IP sur l’interface connectée au LAN Local.
On prend la 192.168.0.254, qui sera donc la passerelle par défaut de nos PC et on n’oublie pas de taguer cette interface en « Inside », car elle est du côté LAN.
Et pour finir, en mode de configuration global, il ne reste plus qu’à utiliser la commande « IP nat inside source static » pour lui dire de translater l’IP interne : la 192.168.0.1, en IP externe : la 218.115.20.2.
Pour vérifier les configurations NAT du routeur, il faut utiliser la commande « show IP nat translation ».
Avec cette commande, vous retrouvez les termes Cisco que nous avons vus dans le cours précédent. Ce qui est en bleu sont les numéros de port ! La port 23 est le port par défaut du protocole TCP. Le chiffre 1021 est un numéro de port aléatoire qui permet de marquer le paquet.
Le NAT statique permet un mappage permanent entre une adresse interne et une adresse publique. C’est de la translation de 1 à 1 !
Et le NAT dynamique permet de traduire des IP privés, vers des adresses publiques qui proviennent d’un pool d’IP !
Sa configuration diffère un peu du NAT statique, mais il y a tout de même beaucoup de similitudes.
Comme pour le NAT statique, il faut identifier chaque interface comme une interface intérieure, dit « Inside » ou extérieure, dit « Outside ».
Et ensuite, plutôt que de créer une carte statique d’une seule adresse IP, la translation se fera sur un groupe d’adresse interne globale !
Pour voir comment le NAT dynamique travail, on va se baser sur la même topologie et analyser les différentes étapes !
Ici, les 2 PC’s de gauche qui portent une IP privée souhaitent communiquer avec le serveur web à droite, qui a une IP publique.
S'il n’y a pas de NAT statique de configuré, alors le routeur traduira dynamiquement les adresses des 2 PC’s.
Car si les deux sont configurés, le NAT statique sera toujours prioritaire au NAT dynamique.
Ici, le routeur sélectionne donc une adresse globale à partir d’un groupe d’IP qui aura été créé, et il fera la traduction.
Il choisit l’IP 218.115.20.1 pour le PC A, et la « .2 » pour le PCB.
Le masque de notre réseau public est un /27. On peut donc utiliser la plage IP de .1 à .30.
Le .0 est l’adresse réseau, et la .31 est l’adresse de broadcast.
Ce sont deux adresses que nous ne pouvons pas attribuer à des hôtes !
Le routeur remplace donc l'adresse source locale interne des 2 PC’s par une des adresses globales translatées et envoie le paquet !
Ainsi, le serveur web peut recevoir les données sans problème ! S’ils souhaitent leur répondre, alors il utilisera leurs propres adresses de destination interne globale !
Et lorsque le routeur reçoit les paquets avec les IP’s globales internes, il recherchera la traduction dans sa table NAT et translatera de nouveau les IP’s, avant de les transférer vers les PC’s. La communication entre le serveur web et les PC’s fonctionne correctement.
NAT (NETWORK ADDRESS TRANSLATION) DYNAMIQUE
Voyons maintenant la configuration du Network Address Translation dynamique.
Tout d’abord, il faut commencer à créer une « access-list » pour désigner le réseau qu’on souhaite translater. Ici, ce sera le réseau 192.168.0.0/24.
Ensuite, il faut définir le groupe d’adresse IP, avec la commande « ip nat pool ». À la place du nom-du-pool, en bleu, il faut choisir le nom qu’on souhaite lui donner ! Dans l’exemple, on utilisera toute la plage IP publique ! Au total 30 IP !
Ces 2 commandes sont à faire dans le mode de configuration global.
L’ACL ne doit comporter que des permissions pour le Network Address Translation car si à la fin de l’ACL vous faites un « permit any » qui autorise tous les paquets, alors le protocole Network Address Translation provoquera une forte consommation des ressources du routeur, ce qui causera beaucoup de problèmes sur le réseau.
Pour rappel, à la fin de chaque ACL il y a implicitement une ligne qu’on ne voit pas, qui est un « deny any ».
Comme pour le NAT statique, il ne faut pas oublier de taguer nos interfaces en entrée/sortie !
Pour rappel, la commande « ip nat inside » marque l'interface comme étant connectée au réseau intérieur.
Et le « Ip nat outside » marque l'interface connectée au réseau extérieur.
Et pour finir, toujours en mode de configuration global, il faut établir la translation dynamique des IP’s source en spécifiant l’ACL et le pool d’adresses avec la commande « Ip nat inside ».
Et comme pour le NAT statique, la commande show IP NAT translations permet d’afficher les NAT’s actifs !
PAT (PORT ADDRESS TRANSLATION) OVERLOAD
L’une des principales formes du NAT est le PAT, qui se fait aussi appeler « overload ».
Ici, plusieurs adresses locales internes peuvent être traduites en utilisant le Network Address Translation dans une ou plusieurs adresses globales internes. La plupart des box internet à domicile fonctionnent en PAT. Le fournisseur d’accès à internet attribue une adresse à la box, qui fonctionne comme un routeur, et plusieurs personnes peuvent surfer sur Internet à partir d’une seule et même adresse.
Avec le PAT, plusieurs adresses peuvent être traduites en une ou plusieurs adresses grâce à un numéro de port TCP ou UDP qui seront attribués automatiquement et aléatoirement sur chaque adresse privée.
Sur cette topologie, les deux PC’s utilisent la même adresse publique pour communiquer avec le serveur WEB !
Ce sont les numéros de port TCP qui permettent de différencier les paquets du PC A de celui du PC B !
Avec ce système, de nombreux hôtes internes peuvent partager la même adresse globale interne en utilisant de nombreux numéros de port.
Pour la configuration du PAT, et comme toute sorte de NAT, il faut taguer nos interfaces en entrée et sortie !
Ensuite, comme pour le NAT dynamique, il faut créer une access-list pour définir les adresses locales qui pourront être translatées.
Et pour finir, il faut indiquer au routeur de translater notre access-list à travers notre interface sortie, la Fast Ethernet 0/1 avec la commande « ip nat inside ».
Ne pas oublier le petit mot « overload » à la fin de la commande.
Et comme pour tous les types de Network Address Translation, la commande de vérification est identique : C’est show IP NAT translations
Retrouvez tous nos cours pour réussir votre CCNA sur la chaîne YouTube de Formip.