Nat Pat
Le terme NAT représente les initiales de "Network Address Translation"
Si l'on s'en tient intrinsèquement à la définition du terme NAT, cela représente la modification des adresses IP dans l'en-tête d'un datagramme IP effectuée par un routeur.
On parlera de SNAT quand c'est l'adresse Source du paquet qui est modifiée et de DNAT quand il s'agit de l'adresse Destination.
La NAT dynamique, aussi appelée IP masquerading, associe une seule adresse à n adresses. Ainsi, on peut associer une adresse publique à n adresses privées et permettre ainsi à un grand nombre de machines ayant des adresses privées d'accéder à Internet !
Par contre, nous verrons que cette méthode possède quelques inconvénients. Le routeur qui effectue la NAT dynamique devra à la fois modifier les adresses IP mais aussi les ports TCP/UDP (ce que l'on appelle PAT, Port Address Translation) (d'où l'utilisation pour l'ensemble NAT et PAT de l'acronyme PNAT).
Exemple : Le PC2 veut accéder au site meteo.web ...
Le PC2 veut accéder au site meteo.web ...[1]
Le routeur voit que l'IP de destination n'appartient pas au réseau local : il va donc envoyer le paquet sur le WAN. Pour cela il va remplacer l'adresse de IP source (192.168.1.5) par son adresse IP_WAN(82.126.85.216) [SNAT]
De plus le routeur va noter le numéro de port UDP/TCP source (px) utilisé par l'application de PC2.
Il va ensuite remplacer ce numéro de port (px) par un autre numéro (unique, entre 1025 et 65535) (py). Pour finir, il va mémoriser ces numéros de port et adresses IP dans une table. [PAT]
Le site meteo.web renverra donc ses paquets à l'adresse IP_WAN du routeur avec (py) comme numéro de port de destination.
Lorsque le routeur reconnaît le numéro de port UDP/TCP (py) il en déduit que le message est destiné au PC2 :
Il va donc (grâce à sa table de correspondance) remplacer le numéro de port de destination (py) par (px) [PAT] puis remplacer l'adresse IP de destination (82.126.85.216) par l'adresse IP du PC2 (192.168.1.5) [DNAT]
Pour finir il va envoyer le paquet sur le réseau local.
Remarque :
Cependant la NAT dynamique ne permet pas d'être joint par une machine externe. Effectivement, si la NAT dynamique marche, c'est parce que le routeur qui fait la NAT reçoit les informations de la machine en interne (Adresse IP, port TCP/UDP). En revanche, il n'aura aucune de ces informations si la connexion est initialisée de l'extérieur. Le paquet arrivera avec comme adresse de destination le routeur, et le routeur ne saura pas vers qui rediriger la requête en interne.
De plus la NAT Dynamique est incompatible avec les protocoles : ICMP et FTP en mode actif.