NAT et ses différents modes

NAT et ses différents modes - Sécurité - Réseaux grand public / SoHo

Marsh Posté le 28-05-2008 à 10:06:09    

Bonjour,  
 
Je recherche un firewall hardware pour ma société. Dans la plupart des datasheets, je vois marquer qu'il y a differents modes:1:1, 1:many, many:many, many:1. J'ai fait pas mal de recherche sur NAT, Cependant je ne comprends pas toujours leur possible utilisation.
 
X:Y signifie que X est une/pls adresse privée que l'on souhaite mapper sur Y une/pls adresse publique ? Est ce toujours dans ce sens du privé vers le public? ou est ce que NAT est aussi utilisé pour mapper une adresse publique vers une ou plusieurs adresses privées (ce que je réferre plutôt à la fonction port forwarding des routeurs)
 
1:1 correspond au static NAT qui map une adresse privée à une adresse publique de façon fixe. Ce mode considère que NAT change l'adresse IP source d'un paquet sortant avec l'adresse IP publique et en retour convertit l'adresse IP dest du paquet rentrant avec l'adresse privée. Est ce que l'on considère que NAT accepte un paquet entrant (du public au privé) seulement s'il correspond à une réponse à une requête interne ou est ce qu'il est possible que n'importe qui de l'extérieur accède à l'adresse interne?
 
many:1 permet à plusieurs adresses privées de partager une unique adresse publique. Est ce que l'on sous entend qu' 1 seul accès à internet à la fois est possible et que l'hote doit attendre que NAT cloture le mapping avec l'autre hôte? ou sous-entend on qu'on utilise PAT pour permettre à plusieurs hote d'avoir la meme adresse mais avec un port different?

many:many a le même fonctionnement que many:1 sauf que plusieurs adresses publiques sont allouées ce qui permet un meilleur rendement. Le nombre de connection simultanée est limité au nombre d'adresses publiques disponibles.
 
1:many ???? Si cette notation se lit : "mapper une adresse privée vers plusieurs adresses publiques", je ne comprends pas son utilisation!!
si par contre, ça se lit dans l'autre sens : "mapper une adresse publique vers plusieurs adresses privées" alors son utilité est évident: load balancing.
Ca permet notamment d'avoir plusieurs servers (identiques en contenu) localisés à différentes adresses (normal lol), mais dont l'accès externe via l'adresse public est réparti sur les differents servers.
 
Mon problème est que je ne comprends pas la logique de lecture de cette notation. Je comprend que ce genre de question n'est pas des plus intéressante puisque théorique, mais comment passer à la pratique si on ne maitrise pas la théorie.
 
Merci de votre aide
 

Reply

Marsh Posté le 28-05-2008 à 10:06:09   

Reply

Marsh Posté le 28-05-2008 à 10:53:53    

Je suis un peu embrouillé par tout ce qui se dit sur NAT. Certains disent que NAt est seulement utilisé pour permettre l'accès de une ou plusieurs adresse privé à une adresse publique, mais pas l'inverse. Et d'autres disent que NAT peut être utilisé pour une adresse privée vers une autre adresse privée et ainsi permettre de connecter 2 réseaux qui aurait les mêmes plages d'adresses.

Reply

Marsh Posté le 28-05-2008 à 20:27:17    

Je vois que mon sujet ne motive guère d'intérêt auprès de vous. Mais preuve qu'il y a de quoi galérer sur ce concept de NAT:
CISCO définit la notion de static NAT, Dynamic NAT et Overloading NAT (PAT).
SonicWALL définit 1:1, 1:many, many:1, many:many, flexible NAT (overlappinp IPs), transparent mode
http://www.vocal.com/nat.html définit Full Cone NAT, restricted cone NAT, port restricted cone NAT, et symmetric NAT
 
Quelqu'un serait-il capable de donner une différence claire entre tous ces modes??

Reply

Marsh Posté le 28-05-2008 à 21:27:47    

Tu aurais peut-être plus de réponses en postant sur la sous-cat. pro.
 
Reste que la question m'intéresse aussi.


---------------
Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h
Reply

Marsh Posté le 28-05-2008 à 21:30:21    

Si vous parlez anglais, un très bon article :
http://www.cisco.com/web/about/ac1 [...] atomy.html


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 28-05-2008 à 22:02:12    

Merci pour le site. Je suis effectivement tombé sur ce site assez complet, je l'avoue. Mais il n'en reste que pour mapper la théorie et la pratique c'est difficile. Si mon firewall support NAT-T, est-ce que ça veut dire qu'il supporte Full Cone NAT, restricted cone NAT, port restricted cone NAT, et symmetric NAT. Je vois pas mal de contradictions dans la définition des 1:1, 1:many... Chacun y voit un peu ce qui veut. Alors difficile d'avoir les idées claires.
Merci tout de même, n'hésitez si vous avez d'autres bons articles.

Reply

Marsh Posté le 28-05-2008 à 22:14:26    

NAT-T c'est NAT traversal (normalement). C'est pour un mécanisme pour les VPN IPsec, afin qu'il puisse traverser certains NAT sans trop de probleme, ce n'est pas un type de NAT.


Message édité par o'gure le 28-05-2008 à 22:15:08

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-08-2008 à 16:10:14    

Hello,  
 
J'ai toujours pas réglé mon problème de compréhension de NAT. J'en appelle aux spécialiste de NAT et de ses possibles implémentations.
Je lis pleins de choses contradictoire sur NAT.  
 
Deux principales définition:
 
NAT pour traduire uniquement une ou plusieurs adresses privées en une adresse publique.  
 
NAT pour traduire plus généralement n'importe quelle adresse (privée ouu public) en une autre adresse (privée ou publique), notamment pour migrer 2 réseaux, changer d'ISP...
 
Là où je butte, c'est sur la deuxième définition. Elle veut dire que NAT est aussi utiliser pour rediriger les requêtes initiées d'internet vers le réseau interne.
Je pensais que cette fonction était réalisé par une simple redirection de port.  
 
Je voudrais connaître la différence entre redirection de port "port forwarding" et NAT, et savoir si NAT peut réellement être configurer pour translater des adresses publiques en privée (sans qu'une requête au préalable n'ait été initiée de l'intérieur).
 
Merci  
 

Reply

Marsh Posté le 19-08-2008 à 16:28:43    

NAT : network address translation : Changement de l'adresse IP (source ou destination)
NAPT : network address port translation : changement d'adresse IP et de port.
 
On fait beaucoup d'abus de langage en mettant NAT à toute les sauces...
 
Dans le sens :
Internet -> LAN (par là j'entend mettre à disposition par exemple un service web derrière un équipement faisant du NAT/NAPT)
on va généralement utiliser du NAT. Un paquet arrivant sur le port 80 de l'adresse publique ne verra que son adresse destination changer (changement vers l'adresse privée du serveur web).
 
mais on pourra également implémenter du NAPT pour rediriger les requêtes du port 81 arrivant sur l'adresse publique de ton routeur vers le port 80 de l'adresse IP privée de ton serveur web.
 
Par abus de langage on appelle ça de la redirection de port. C'est un abus de langage. Ce qu'il faut retenir c'est que le trafic sera redirigé dans tous les cas vers une adresse IP privée, et éventuellement, le port sera changé
 
LAN -> Internet (par là j'entend par exemple quelqu'un souhaitant surfer sur le Web depuis un poste ayant une adresse IP privée, derrière un routeur opérant du NAT/NAPT)
Généralement on va utiliser du NAPT :
- translation de l'adresse source vers l'adresse IP publique
- translation du port source vers un port choisis par l'équipement faisant du NAT. Il se peut que ce port soit le même port que le port originel. Peut importe. Afin de multiplexer correctement une adresse IP, l'équipement va modifier le port source pour qu'il n'y ait aucune ambiguité pour renater correctement le trafic retour.
 
Sinon on peut utiliser uniquement du NAT, c'est à dire translation simple de l'adresse IP source vers l'adresse IP publique. Cependant ceci peut amener des problèmes lorsque deux équipements du LAN vont contacter le même serveur en utilisant le même port source (qui est généralement aléatoire mais ça peut arriver). Donc pour éviter ce cas on a recourt au NAPT. L'équipement faisant du NAT gère lui même une base de donnée avec les infos qu'il faut.
 
 
 
Dans les scénarios ci dessus j'ai utilisé simplement privé/public pour pas mélanger. On peut très bien avoir 2 réseaux public ou 2 réseaux privés.
 
 
Il ne faut pas forcément croire aveuglément ce que tu lis partout, beaucoup font des abus de langage/raccourci. C'est à toi de les trouver et de comprendre réellement ce qu'il y a derrière.
 
Quoiqu'il en soit, le NAT complexifie énormément les réseaux, il vaut mieux recourir au plus simple, pas de NAT, dès que c'est possible !


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-08-2008 à 16:31:13    

Prends le temps de faire des dessins et de faire évoluer tes paquets IP/TCP au niveau des ports et adresses dans différents scénarios pour voir les problèmes qui peuvent avoir lieu.
 
- problème de routage.
- problème de port fermé.
- problème de filtrage.
 
A partir de là tu comprendras bien mieux au lieu de rester dans l'abstraction.


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-08-2008 à 16:31:13   

Reply

Marsh Posté le 19-08-2008 à 17:32:53    

Je te remercie.
 
Je fais des schémas, mais quand les choses ne sont pas clairement définis et contradictoire d'une source à l'autre, c'est difficile de savoir qui croire.
Vue que j'aime bien les concepts généraux, je ne restreint pas NAT à l'unique translation privé-public.
 
2 types basics: static et dynamic
 
Plusieurs implémentations sont possibles:
# Le NAT à cône restrictif (http://www.cisco.com/web/about/ac1 [...] gure_7.gif)
# Le NAT à cône restrictif sur les ports (http://www.cisco.com/web/about/ac1 [...] gure_8.gif
# Le NAT symétrique (http://www.cisco.com/web/about/ac1 [...] gure_5.gif)
# Le NAT à cône plein (http://www.cisco.com/web/about/ac1 [...] gure_6.gif)
 
voir ici pour la doc complète: http://www.cisco.com/web/about/ac1 [...] atomy.html
 
Cette doc explique les possibles comportement de NAT suivant son implémentation. Ceci résulte à différent niveau de sécurité.
Je voudrais si tous ces modes sont configurables sur n'importe quel routeur NAT, où si ce doit être spécifié dans la doc.
Y a t'il un rapport avec la notation:1.1, 1.many, many1, many.many??????
 
 
Merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed