L'IP Masquerade est une fonctionnalité réseau en développement de Linux. Si un hôte Linux est connecté à Internet avec l'option IP Masquerade en place, alors les ordinateurs se connectant à celui-ci (que cela soit sur le réseau local ou par modem) peuvent atteindre Internet aussi, même s'il n'ont pas d'adresse IP officielle.
Cela permet à un ensemble de machines d'accéder de manière invisible à Internet, caché derrière une passerelle, qui apparaît comme étant le seul système utilisant la connexion Internet. Il devrait être énormément plus difficile de contourner un système basé sur le masquerade, s'il est bien configuré, que de passer outre un bon firewall effectuant du filtrage de paquets (en supposant qu'il n'y a de bogues chez aucun des deux).
L'IP Masquerade est toujours en phase expérimentale. Cependant, les noyaux, depuis la série 1.3.x, supportent en standard cette fonctionnalité. De nombreuses personnes, et même des entreprises l'utilisent, avec des résultats satisfaisants.
L'utilisation d'IP Masquerade pour parcourir de web, ou pour
le telnet est tout à fait satisfaisante. FTP, IRC, et l'écoute de Real
Audio fonctionnent en utilisant certains modules. D'autres technologies de
flux audio par réseau, telles que True Speech et Internet Wave
fonctionnent également. Certaines personnes, abonnées à la mailing
list ont même essayé des logiciels de vidéo-conférence.
Ping
fonctionne à présent, avec le nouveau patch pour ICMP.
Veuillez consulter la section 4.3 pour une liste complète des logiciels supportés.
L'IP masquerade fonctionne convenablement avec des 'machines clientes' utilisant divers systèmes d'exploitation et différentes plate-formes. On a enregistré des succès pour des systèmes utilisant Unix, Windows 95, Windows NT, Windows pour Workgroups (avec l'extension TCP/IP), OS/2, MacOS avec Mac TCP, Mac Open Transport, DOS avec le package NCSA Telnet, VAX, Alpha sous Linux, et même Amiga avec AmiTCP ou la pile AS225.
D'après la FAQ IP Masquerade, de Ken Eves :
Voici un schema du plus simple cas possible : SLIP/PPP +------------+ +-------------+ vers le provider | Linux | SLIP/PPP | Peu_importe | <---------- modem1| |modem2 ----------- modem | | 111.222.333.444 | | 192.168.1.100 | | +------------+ +-------------+ Dans le schema ci-dessus, un ordinateur sous Linux, utilisant ip_masquerading est connecte a Internet par un lien SLIP ou PPP, utilisant modem1. Il possede l'adresse IP (officielle) 111.222.333.444. Il est configure de telle facon que modem2 permet aux appelants de se connecter et d'initier une connexion PPP ou SLIP. Le second systeme (qui n'utilise par forcement Linux comme systeme d'exploitation) se connecte par modem sur l'hote Linux et entame une liaison SLIP ou PPP. Il NE possede PAS d'adresse IP officielle donc il utilise 192.168.1.100 (voir ci-dessous). Avec l'option ip_masquerade et un routage configure correctement, la machine Peu_importe peut interagir avec Internet comme si elle etait reellement connectee (a quelques exceptions pres). Pour citer Pauline Middlelink : N'oublie pas de rappeler que la machine Peu_importe doit declarer l'hote Linux comme passerelle (que cela soit la route par defaut ou juste un sous reseau importe peu). Si Peu_importe ne peut pas le faire, l'hote Linux devra faire du proxy arp pour toutes les adresses routees, mais la mise en place du proxy arp est hors du domaine de ce document. Ce qui suit est l'extrait d'un article de comp.os.linux.networking qui a ete modifie pour utiliser les noms des machines de l'exemple ci-dessus : o J'indique a la machine Peu_importe que le serveur Linux est sa passerelle. o Quand un paquet en provenance de Peu_importe arrive sur la machine Linux, elle va lui assigner un nouveau numero de port, et indiquer sa propre adresse IP dans l'entete du paquet, tout en sauvegardant l'entete originale. Elle va alors envoyer le paquet modifie a travers son interface SLIP ou PPP, vers Internet. o Lorsqu'un paquet en provenance d'Internet arrive sur la machine Linux, si le numero de port est un de ceux assignes a l'etape precedente, elle va modifier a nouveau l'entete pour y remettre les numeros de port et adresses IP originaux, et alors envoyer le paquet a la machine Peu_importe. o L'hote qui a envoye le paquet ne verra jamais la difference.
Un example d'IP Masquerading
Voici ci-dessous le schéma d'un exemple classique :
+----------+ | | Ethernet | Ordi A |:::::: | |2 :192.168.1.x +----------+ : : +----------+ lien +----------+ : 1| Linux | PPP | | ::::| masq-gate|:::::::::// Internet | Ordi B |:::::: | | | |3 : +----------+ +----------+ : : +----------+ : | | : | Ordi C |:::::: | |4 +----------+ <-Reseau interne->Il y a dans cet exemple 4 ordinateurs qui nous intéressent (il y a sûrement sur la droite quelque chose sur laquelle aboutit notre connexion, et encore plus à droite une autre machine avec laquelle nous échangeons des données). L'ordinateur sous Linux
masq-gate
est la passerelle qui effectue le masquerading pour
le réseau interne des ordinateurs A
, B
, et C
, afin de
les relier à Internet.
Le réseau interne utilise une des adresses assignées des réseaux
privés, à savoir dans ce cas le réseau de classe C 192.168.1.0,
l'ordinateur Linux ayant l'adresse 192.168.1.1 et les autres
ordinateurs ayant d'autres adresses sur ce réseau.
Les trois machines A
, B
et C
(qui peuvent utiliser
n'importe quel système d'exploitation, du moment qu'elles utilisent IP
- comme par exemple Windows 95, Macintosh MacTCP ou
même un autre Linux) peuvent se connecter à n'importe qu'elle machine
sur Internet, mais masq-gate
convertit toutes leurs
connexions de façon à ce qu'elles semblent provenir de
masq-gate
, et s'arrange pour que toutes les données revenant
d'Internet retournent au système qui en est à l'origine. Ainsi, les
ordinateurs du réseau interne voient une route directe vers Internet
et ne sont pas au courant du fait que leurs données ont été
"masqueradées".
** Veuillez s'il vous plaît consulter l' IP Masquerade Resource pour les dernières informations, puisqu'il m'est difficile de mettre à jour ce document fréquemment.**
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre