La Translation d`adresses - Université de Reims Champagne
Transcription
La Translation d`adresses - Université de Reims Champagne
La Translation d'adresses F. Nolot 1 Réseaux 2 Université de Reims Champagne-Ardenne Introduction Adressage internet sur 32 bits : a peu près 4 milliards d'adresses Découpage en classes réduit ce nombre Le nombre de machines sur Internet pourrait atteindre vite ce nombre F. Nolot 2 Réseaux 2 Université de Reims Champagne-Ardenne Introduction Ipv6 est la solution à ce problème : 16 octets d'adresses le nombre de machines à adresser un très très grand En attendant, NAT résoud ce problème F. Nolot 3 Réseaux 2 Université de Reims Champagne-Ardenne Qu'estce que la NAT ? NAT : Network Address Translation Différents concepts : NAT statique, NAT dynamique, PAT, IP masquerading... Modification des adresses IP dans l'entête d'un datagramme IP effectuée par un routeur. SNAT : adresse source qui est modifiée, DNAT : adresse destination qui est modifiée F. Nolot 4 Réseaux 2 Université de Reims Champagne-Ardenne NAT statique Le principe NAT statique association de n adresses avec n adresses. une adresse IP interne = uneadresse IP externe. Action effectuée par le routeur : remplacer l'adresse source ou destination par l'adresse correspondante Une adresse privée ne peut être utilisée dans un datagramme IP circulant sur Internet Avoir autant d'adresses privées que d'adresse publics F. Nolot 5 Réseaux 2 Université de Reims Champagne-Ardenne NAT statique Avantages On peut changer de FAI sans toucher au plan d'adressage On ne gache aucune adresse public à cause de la structure du plan d'adresses : Adresses sous réseaux, Broadcast,... Inconvénients Si le nombre d'adresses Privées dépasse le nombre d'adresses publiques, le problème n'est pas résolu. F. Nolot 6 Réseaux 2 Université de Reims Champagne-Ardenne NAT statique Redirection vers adresse virtuelle : Soit M1 avec 10.0.0.1/24| Soit la passerelle P du LAN avec 10.0.0.254/24 et 193.22.35.42/24 Soit le routeur Internet IR avec 193.22.35.254/24 sur une Interface externe IE Quand M1 reçoit un datagramme D d'une machine externe en réponse à une requête (sortie avec 193.22.35.43), au niveau de IR, une requête ARP sera envoyé par IE pour connaître l'interface d'envoie. F. Nolot 7 Réseaux 2 Université de Reims Champagne-Ardenne NAT statique Mais cette adresse n'est pas connue!! Le routeur fait office de PROXY ARP : répond à cette requête. Solutions : Soit mise en place d'un Proxy ARPsur la machine NAT Soit ajout d'une entrée ARP statique dans sur IR (arp -s 193.22.35.43 @MAC_routeur) Soit ajout d'une route host statique pour chacune des adresses virtuelles (route add -p 193.22.35.43 mask 255.255.255.255 193.22.35.42) F. Nolot 8 Réseaux 2 Université de Reims Champagne-Ardenne NAT statique Problèmes de routage Quand P reçoit le datagramme, il le considère pour lui Mais quand la couche IP reçoit la paquet, on voit que l'adresse destination est .43 Consultation de la table de routage Soit existence d'une route spécifique pour le réseau interne, Sinon envoie vers l'adresse externe .42 Soit ajout d'une route explicite (route add -p 193.22.35.43 mask 255.255.255.255 10.0.0.1) F. Nolot 9 Réseaux 2 Université de Reims Champagne-Ardenne NAT dynamique Principe Ap p elé au ssi IP m asq u erad in g Ass ociat ion d e m ad res s es p rivées à n ad res ses p u bliq u es (avec m > n ) Le r ou teu r NAT m od ifie les ad ress es IP d e sort ie ain s i q u e les p ort s TCP/ UDP. En réalit é on fait d u PAT égalem en t ! F. Nolot 10 Réseaux 2 Université de Reims Champagne-Ardenne NAT dynamique Fonctionnement : M1 (10.0.0.1/24) P 10.0.0.254/24 et 193.22.35.42/24 Un paquet partant de M1 sort avec 193.22.35.42 Le paquet de retour sera detiné à 193.22.35.42 aussi !! Au départ M1 a utilisé le port 2453 comme port source, alors au retour P routera vers M1 quand il verra que le port destination est 2435 Le problème se pose si 2 hosts internes utilisent le port source. F. Nolot 11 Réseaux 2 Université de Reims Champagne-Ardenne NAT dynamique Solution : À chaque paquet sortant, on translate également le port de sortie pour garder l'unicité des ports en communication Cette technique permettera de rediriger les paquets de retour sur les bonnes machines Solution : masquer autant de machines que l'on souhaite derrière une adresse routable! F. Nolot 12 Réseaux 2 Université de Reims Champagne-Ardenne NAT dynamique Avantages Pouvoir répondre au soucis de manque d'adresses Apporte plus de sécurité : tout passe par le NAT Inconvénients Ne peut marcher si la connexion est initialisée de l'extérieur Un serveur ne peut être accessible de l'extérieur. F. Nolot 13 Réseaux 2 Université de Reims Champagne-Ardenne NAT dynamique Problèmes avec ICMP ICMP, PPPT, Netbios ne travaille pas au niveau 3 Pour ICMP : Utilisation de l'identifiant ICMP pour informer la machine concernée : l'identifiant sera utilisé comme les ports Utilisation des informations de paquets IP contenus dans le paquet ICMP pour informer la machine concernée F. Nolot 14 Réseaux 2 Université de Reims Champagne-Ardenne Le FTP ? Problèmes avec FTP FTP fonctionne en 2 modes actif ou pasif avec 2 canaux en parallèles (ports 20 et 21) En mode passif les 2 connexions sont initialisées de l'intérieur Mais en mode actif, la connexion de contrôle est initialisée de l'intérieur mais le contrôle de données est réalisée poar le serveur Solution : utilisation d'un PROXY ftp : il suit et contrôle les connexions F. Nolot 15 Réseaux 2 Université de Reims Champagne-Ardenne Statique ou dynamique ? Statique : adresse accessible de l'extérieur Dynamique : cacher des machines clientes Combiner les deux ? C'est la meilleure solution Les serveurs mail, ftp, ww en statique Les autres machines en dynamique F. Nolot 16 Réseaux 2 Université de Reims Champagne-Ardenne Port forwarding Problème posé : Être joignable de l'extérieur avec un NAT dynamique Par exemple pour permettre à un serveur ftp d'être visible sur un lien ADSL avec une seule adresse disponible. On utilise le port forwarding : rediriger un paquet vers une machine précise en fonction du port de destination du paquet lorsque on a une seule adresse publique, possibilité d'initialiser une connexion de l'extérieur vers l'une de ses machines (une seule par port TCP/UDP) F. Nolot 17 Réseaux 2 Université de Reims Champagne-Ardenne Port forwarding Dans l'exemple précédent on initialise le routeur pour diriger toutes les connexions sur le port 21 vers 10.0.0.1. C'est comme si cette adresse est disponible de l'extérieur : elle devient adresse public!! F. Nolot 18 Réseaux 2 Université de Reims Champagne-Ardenne Port mapping Le port mapping est un peu équivalent au port forwarding rediriger la requête sur un port différent que celui demandé Par exmple : serveur web sur le réseau local sur le port 8080 et le rendre accessible par l'extérieur. Rediriger le port 80 vers notre serveur sur le port 8080 Les clients externes auront l'impression de s'adresser à un serveur sur le port usuel pour le web, 80 F. Nolot 19 Réseaux 2 Université de Reims Champagne-Ardenne Limites du port forwarding Problème : Si l'on possède plusieurs serveurs FTP en local et que l'on veut les rendre accessibles Solution : utilisation de proxies Proxy : est un mandataire pour une application donnée sert d'intermédiaire dans une connexion entre le client et le serveur pour relayer la requête qui est faite peut modifier les informations à envoyer au serveur, ainsi que celles renvoyées par celuici. Un proxy par application F. Nolot 20 Réseaux 2 Université de Reims Champagne-Ardenne Qu'estce qu'un proxy n'est pas ? Amalgame est souvent fait entre les fonctionnalités On pense souvent qu'un proxy doit faire de la NAT, ou serveur de cache ==> des fonctionnalités ajoutées il est souvent utile d'ajouter des fonctions de cache à un proxy vu que c'est lui qui centralise l'accès au web Si 15 personnes demandent le même site web, il ne sera chargé qu'une fois puis gardé dans le cache du proxy Par ailleurs, la NAT est elle aussi souvent indispensable pour qu'un proxy fonctionne F. Nolot 21 Réseaux 2 Université de Reims Champagne-Ardenne Vautil mieux faire de la NAT ou avoir un proxy ? Avantages du proxy : Contrôle débits et ports Sécurité Avantages de la NAT : Indépendant des applications F. Nolot 22 Réseaux 2 Université de Reims Champagne-Ardenne La sécurité et la NAT La NAT dynamique permetelle d'améliorer ma sécurité ? Estce utile pour la sécurité d'utiliser un proxy ? La NAT est elle compatible avec IPSEC ? IPSEC ayant différentes implémentations encryption de l'entête IP par les participants au tunnel IPSEC Solution : tout le paquet est encrypté et une autre entête est ajoutée et le contrôle se fait sur le paquet encrypté Solution générale : NATT encapsuler les données dans un tunnel UDP Entête modifiée ne sera pas utilisé pour l'authentification F. Nolot 23 Réseaux 2 Université de Reims Champagne-Ardenne Mise en oeuvre Linux : Noyau 2.4 et 2.6 : Iptables Noyaux plus anciens : IPchains, ipfilter, netfilter. Windows : Wingate, winroute lite, NAT32, TCPrelay F. Nolot 24 Réseaux 2 Université de Reims Champagne-Ardenne Références RFC 1631 <http://fr.comp.securite.free.fr/firewall.txt> Stéphane Catteau newgroups fr.comp.reseaux.ip et fr.comp.reseaux.ethernet. Eric LALITTE sur http://www.lalitte.com/nat F. Nolot 25