NAT

NAT Traversal dans SIP

Les routeurs NAT sont utilisés pour palier aux manques d’adresses. Ils sont employés par les fournisseurs d’accès Internet, par les entreprises dont le nombre d’adresses qui lui a été attribuées n’est pas suffisant par rapport au nombre d’ordinateurs qu’elle possède. Par fois même un abonné ayant une connexion DSL et plusieurs ordinateurs qu’il souhaite connectés à Internet. Grâce au NAT il est possible de réaliser toutes les situations citées précédemment en associant aux adresses IP privées, une adresse IP publique.
Tout d’abord NAT veut dire Network Address Translation par conséquent translation d’adresse réseau, c’est un routeur qui remplace les adresses IP contenu dans l’entête d’un datagramme IP.

NAT Statique

La théorie du routeur NAT statique repose sur l’association d’une adresse publique (routable sur Internet) à une machine ayant une adresse privée qui souhaite dialoguer avec une autre machine en passant par le réseau Internet. La table d'association ne contient que des adresses qui sont liées une à une.
Ce type de translation est plutôt utilisé pour un serveur Web, un serveur mail ou un serveur FTP. Le NAT statique à donc permis en partie de gagner un certains nombre d’adresse, cependant d’autres techniques existent afin d’économiser d’avantage d’adresses.

PAT

Cette technique est également appelée PortForwarding, c'est réunion du NAT statique avec un numéro de port. Cette association augmente le nombre d'adressage, en effet pour une adresse IP un numéro de port et lié, soit un nombre de 64522 ports.
Ce type de NAT est souvent utilisé pour un partage de connexion ADSL.

NAT Dynamique

Dans ce cas, la quantité d'adresse est plus faible pour traduire les adresses IP interne d'un réseau local. Mais cette fois ci l'attribution de ces adresses s’effectue durant l'initialisation d'une connexion. Ce sont es numéros de ports qui vont identifier les machines du réseau privé qui ont établies une communication vers l'extérieur.
Un autre NAT dynamique existe c'est le Masquerading. C'est en fait, l'utilisation d'une seule adresse qui est celle du routeur.

Il est existe d’autre technique de NAT celle-ci est encapsulé dans une trame UDP et est appelé NAT Traversal ou NAT-T. Quatre types de NAT se trouvent dans cette technique, le cône plein, le cône restrictif, cône restrictif sur les ports et le symétrique.

Cône plein

Dans le cas du cône plein, la trace est bien établi et n'importe qui souhaitant atteindre un client derrière un NAT a besoin seulement de savoir les paramètres de la trace afin de lui envoyer des paquets.

Par exemple, l’ordinateur Alice situé derrière un NAT avec une adresse IP 10.0.0.1 envoyant et recevant sur le port 4545, est tracé par le routeur NAT à l'adresse et port externe 192.0.2.1 : 9988. À la réception des messages le routeur va contrôler l’adresse IP et le numéro de port afin de savoir s'ils correspondent à la machine Alice.
N'importe qui sur Internet peut envoyer des paquets à Alice du moment qu’elle connaît son adresse et numéro de port. Ces paquets seront passés sur la machine du client écoutant sur 10.0.0.1 : 4545.



Le NAT qui fonctionnent dans cette configuration est susceptible d’attaques de balayage de port et créer des soucis de sécurité.

Cône restrictif

Dans le cas d'un NAT à cône restrictif, l'adresse externe et le port sont seulement ouvert une fois que l'ordinateur du réseau local envoie des données à une IP destination spécifique.
Par exemple, dans le cas où Alice envoie un paquet à l’ordinateur externe Dalentino, le NAT trace Alice 10.0.0.1 : 4545 à 192.0.2.1 : 9988 et Dalentino peut renvoyer des paquets à Alice. Cependant, le NAT bloquera les paquets entrants venant de Mohadina, jusqu'à ce qu Alice ait envoyé un paquet à l'adresse IP et port de Mohadina. Une fois que c'est fait, Dalentino et Mohadina peuvent envoyer des paquets de nouveau à Alice, et ils auront tous les deux la même trace par le NAT.


Cône à port restrictif

Un NAT de type cône à port restrictif est presque identique à un cône restrictif, mais dans ce cas le NAT bloquera tous les paquets à moins que le client du réseau privé ait précédemment envoyé un paquet à l'adresse IP et au port NAT d'une machine extérieur.
Ainsi dans notre exemple, si Alice envoie un paquet à la machine externe Dalentino au port 10101. Tous les paquets ayant l'adresse 222.111.88.2 et le numéro de port 10101 seront transmis à Alice par le routeur NAT. Dans notre exemple les paquets issues de la machine de Mohadina qui a la même adresse IP que Dalentino mais un port différent ne seront pas reçus par Alice. Le NAT les ayant bloqués.
Encore, si Alice a envoyé des paquets à plusieurs adresses et ports, ils peuvent tous répondre à Alice, et tous répondront à la même adresse et port tracée sur le NAT.

Pour une adresse interne donnée, les trois premiers types de NAT maintiennent une trace de cette adresse interne qui est indépendant de l'adresse de destination étant cherché. Le quatrième type de NAT assignera une nouvelle trace pour chaque adresse destination indépendante.

Symétrique

Le NAT symétrique est différent des trois premiers dans la trace spécifique d'adresse et port interne à l’adresse et port publics attribués par le NAT dépendent de l'adresse IP destination à laquelle le paquet va être envoyé.
Ainsi par exemple, si Alice envoie un paquet à partir de l’adresse et port 10.0.0.1 : 4545 à l'ordinateur Dalentino, Alice peut être tracé comme 192.0.2.1 : 9988, tandis que si Alice envoie du même port (10.0.0.1 : 4545) à Mohadina (222.111.99.1 : 20202), il est tracé différemment (192.0.2.1 : 9999). L'ordinateur Dalentino peut seulement répondre à son tracé et l’ordinateur Mohadina peut seulement répondre à sa trace. Si l'un essaye d’envoyer à l'autre adresse et port tracé, ces paquets seront perdus.
Comme dans le cas du cône restrictif, l'adresse externe et port sont seulement ouverts une fois que l'ordinateur interne envoie des données à une destination spécifique.

Néanmoins la trace qui est ouverte dés l’envoie du premier paquet du client par le NAT peut seulement être valide pendant un certain temps en général quelques minutes. A moins que les paquets continuent à être envoyés et reçus sur la même adresse IP et numéro de port.
Par conséquent le NAT résout les problèmes de pénuries d’adresses en traçant les adresses internes aux adresses externes ou publiques. Une adresse IP et port interne sont tracés à une adresse et port externe, et toutes les fois que le NAT reçoit un paquet à une adresse et port externe, il est capable de router le paquet l'adresse et port interne. La trace est validée pour certaines traces prédéfinies après quoi, dans l’absence du trafic réseau entre les deux parties communicantes, cette trace peut être effacé.

haut de page