L'IP Masquerade est une fonctionnalité réseau de Linux similaire à la Translation d'Adresse Réseau un-vers-plusieurs que l'on trouve dans beaucoup de firewalls et de routeurs commerciaux. Par exemple, si une machine Linux est connectée à Internet via PPP, Ethernet, etc., l'IP Masquerading permet aux ordinateurs "internes" connectés à cette machine Linux (via PPP, Ethernet, etc.) d'accéder aussi à Internet. L'IP Masquerading fonctionne même si ces machines internes n'ont pas d'adresses IP officielles.
MASQ permet à un groupe de machines d'avoir accès à Internet via la passerelle MASQ de manière transparente. Pour les autres ordinateurs connectés à Internet, tout le traffic généré va sembler provenir du serveur Linux IP MASQ lui-même. En plus de ces fonctionnalités, IP Masquerade fournit les bases de la création d'un environnement réseau de HAUTE sécurité. Avec un firewall bien configuré, casser la securité d'un système de masquerading et d'un LAN interne bien configuré devrait être très difficile.
Si vous voulez savoir en quoi MASQ diffère des solutions 1:1 NAT and Proxy, reportez vous à la partie what-is-masq de la FAQ.
IP Masquerade est sorti il y a plusieurs années maintenant et il est plutôt mature depuis les noyaux 2.2.x. Depuis le noyau 1.3.x, Linux est fourni avec MASQ. Aujourd'hui de nombreuses personnes et entreprises l'utilisent avec d'excellents résultats.
Les utilisations courantes du réseau tels que la navigation Web, les TELNET, PING, TRACEROUTE, etc. fonctionnent bien avec IP Masquerade. D'autres types de communications, tels que FTP, IRC, et Real Audio fonctionnent bien avec les modules IP MASQ appropriés chargés en memoire. Certains programmes réseaux tels que les streaming audio (MP3s, True Speech, etc.) fonctionnent aussi. Quelques personnes sur la mailing list ont même réussi à obtenir de bons résultats avec des logiciels de video conferencing.
A noter aussi que faire de l'IP Masquerading avec UNE seule carte réseau (NIC) pour MASQuer entre des réseaux Ethernet interne et externe N'est PAS recommandé. Pour plus de détails, reportez vous SVP à la partie aliasing de la FAQ.
Dans tous les cas, reportez vous SVP à la partie Supported Client Software pour une liste plus complète des logiciels fonctionnant sous IP MASQ.
IP Masquerade fonctionne bien comme serveur pour des 'machines clientes' tournant sous différents systèmes d'exploitations (operating sytems ou OS en anglais) et différents materiels dont :
Cette liste continue encore et toujours mais ce qu'il faut bien comprendre, c'est que si votre OS comprend le TCP/IP, il devrait fonctionner avec l'IP Masquerade !
Tiré de la FAQ sur l'IP Masquerade de Ken Eves:
Voici un dessin de la configuration la plus simple: SLIP/PPP +------------+ +-------------+ vers votre FAI | Linux | SLIP/PPP | un | <---------- modem1| #1 |modem2 ----------- modem3| ordinateur | 111.222.121.212 | | 192.168.0.100 | | +------------+ +-------------+ Sur le dessin ci-desus, une machine Linux, Linux #1, avec IP_MASQUERADING d'installe est connecte a Internet par le modem1 via SLIP/ou/PPP. Elle a une adresse IP publique : 111.222.121.212. Elle a aussi un modem2 qui permet a l'appelant des connexions SLIP/ou/PPP. La seconde machine (qui n'a pas besoin de tourner sous Linux) ce connecte a la machine Linux #1 et commence une session SLIP/ou/PPP. Elle N'a PAS d'adresse IP publique sur Internet c'est pourquoi elle utilise l'adresse privee 192.168.0.100 (voir ci-dessous). Avec IP Masquerade et une configuration de routage correcte, la machine "un ordinateur" peut interagir avec Internet comme si elle y etait directement connectee (a quelques petites exceptions pres). Citons Pauline Middelink: N'oublions pas de mentionner le fait que la machine "un ordinateur" doit avoir Linux #1 configure comme sa passerelle (que ca soit la route par defaut ou juste un sous reseau n'a pas d'importance). Si la machine "un ordinateur" ne peut pas faire ca, alors la machine Linux doit etre configuree de telle sorte que le proxy arp fonctionne pour toute les adresses de routage. Mais la mise en place et la configuration d'un proxy arp depasse le cadre de ce document. L'extrait suivant est tire d'un post sur comp.os.linux.networking qui a ete modifie de facon a tenir compte des noms utilises dans l'exemple precedent : o Je dis a la machine "un ordinateur" que mon Linux, connecte via PPP ou SLIP, est sa passerelle. o Quand un paquet provenant d"un ordinateur" arrive a ma machine Linux, elle va lui assigner un nouveau numero de port source TCP/IP et va coller sa propre adresse IP dans l'entete du paquet, tout en sauvegardant l'entete originale. Le server MASQ va ensuite envoyer le paquet ainsi modifie sur Internet via son interface SLIP/PPP. o Quand un paquet arrive d'Internet vers la machine Linux, Linux va examiner si son numero de port est l'un des numeros qu'il avait assigne precedement. Si c'est le cas, le server MASQ va recuperer le port et l'adresse IP originale et les remettre dans l'entete de paquet qui est revenu. Enfin Linux va renvoyer ce paquet a la machine "un ordinateur". o La machine qui a envoye le paquet ne fera pas la difference.
Un Autre Exemple d'IP Masquerading :
Un exemple typique est donné dans le diagramme ci-dessous :
+----------+ | | Ethernet | A |:::::: | |.2 : 192.168.0.x +----------+ : : +----------+ PPP +----------+ : .1 | Linux | link | | :::::::| Masq-Gate|:::::::::::::::::::// Internet | B |:::::: | | 111.222.121.212 | |.3 : +----------+ +----------+ : : +----------+ : | | : | C |:::::: | |.4 +----------+ | | | | <- Reseau Interne --> | | <- Reseau Externe ----> | | |
Dans cet exemple, il y a (4) ordinateurs qui méritent notre attention.
Il y a aussi sans doute quelque chose tout à droite d'où provient votre
connexion PPP à Internet (serveur terminal, etc.) et il y a aussi un
serveur distant (très très loin de la droite de cette page) sur Internet
avec qui vous voulez communiquer. Le serveur Linux Masq-Gate
est la passerelle d'IP Masquerading pour TOUT le réseau interne constitué des
machines A
, B
et C
. C'est
par là que se fera leur accès à Internet. Le réseau interne utilise une des
adresses reservées pour les réseaux privés par le RFC-1918. Dans notre cas,
c'est les adresses de Classe C 192.168.0.0. Le serveur Linux a l'adresse 192.168.0.1
alors que les autres ordinateurs ont les adresses suivantes :
Les trois machines, A
, B
et C
, peuvent tourner
sous n'importe quel système d'exploitation pour peu qu'ils puissent communiquer
par TCP/IP. Les OS tels que Windows 95, Macintosh MacTCP ou OpenTransport et Linux peuvent se connecter à d'autres machines sur Internet.
Lorsqu'il est lancé, le serveur IP Masquerade ou portail MASQ
convertit toutes
les connexions internes de telle sorte qu'ells semblent provenir du passerelle MASQ
lui même. MASQ reconvertit ensuite les données qui lui reviennent sur un port masqueradé
et ces données sont renvoyées vers la machine qui en est à l'origine.
A cause de cela, les ordinateurs du réseau interne voient une route directe vers Internet
et ne sont pas au courant que leurs données sont masqueradées. C'est ce que l'on appelle
une connexion "transparente".
NB: Vous pouvez vous reporter à FAQ pour de plus amples détails sur les sujets tels que :
** Reportez vous SVP à l' IP Masquerade Resource pour les informations les plus récentes**
NOTE #2: La plupart des nouvelles distributions compatibles MASQ-supported-Distributions tels que Redhat 5.2 peuvent ne pas correspondre à l'installation de Linux 2.2.x requise. Des utilitaires tels que DHCP, NetUtils, etc. vont devoir être mis à jour. Vous pourrez trouver plus de details dans ce HOWTO.
module ICQ MASQ
Solutions de PORTFW pour FTP:
IPROUTE2 pour la vraie 1:1 NAT, le routage basé sur la source (Policy-based / source routing), et le façonnage du Traffic :
Voici quelques serveurs mirroirs pour le code source:
ftp://linux.wauug.org/pub/net ftp://ftp.nc.ras.ru/pub/mirrors/ftp.inr.ac.ru/ip-routing/ ftp://ftp.gts.cz/MIRRORS/ftp.inr.ac.ru/ ftp://ftp.funet.fi/pub/mirrors/ftp.inr.ac.ru/ip-routing/ (STM1 to USA) ftp://sunsite.icm.edu.pl/pub/Linux/iproute/ ftp://ftp.sunet.se/pub/Linux/ip-routing/ ftp://ftp.nvg.ntnu.no/pub/linux/ip-routing/ ftp://ftp.crc.ca/pub/systems/linux/ip-routing/ ftp://ftp.paname.org (France) ftp://donlug.ua/pub/mirrors/ip-route/ ftp://omni.rk.tusur.ru/mirrors/ftp.inr.ac.ru/ip-routing/
les RPMs sont disponibles ici : ftp://omni.rk.tusur.ru/Tango/ et la : ftp://ftp4.dgtu.donetsk.ua/pub/RedHat/Contrib-Donbass/KAD/
Reportez vous SVP à l' IP Masquerade Resource pour plus d'informations sur ces patches ou d'autres éventuels patches.
** Reportez vous SVP à l' IP Masquerade Resource pour les informations les plus récentes**
Voici quelques avantages et inconvenients des nouvelles fonctionnalités :
avantages:
inconvénients:
ip_masq_cuseeme.o ip_masq_icq.o ip_masq_quake.o ip_masq_user.o ip_masq_irc.o ip_masq_raudio.o ip_masq_vdolive.o
Il existe un document expliquant comment faire ce portage ici : http://netfilter.kernelnotes.org/unreliable-guides/netfilter-hacking-HOWTO-5.html, Si vous avez le temps, votre talent serait d'une grande aide pour porter ces modules plus rapidement.
Dans la version actuelle de ce HOWTO, NetFilter N'est PAS traité. Une fois que les fonctionnalité de NetFilter seront fixées, NetFilter sera traité dans -ce- HOWTO ou peut être éventuellement dans un nouveau HOWTO. D'ici là, vous pouvez vous tournez vers ces liens pour la documentation de NetFilter. Pour le moment, la configuration et la résolution des conflits et problèmes du nouveau NetFilter va être similaire à 95% à celles du IPCHAINS actuel. En raison de tout ça, ce HOWTO va être utile aux utilisateurs de firewall NetFilter et de NAT.
http://netfilter.filewatcher.org/unreliable-guides/index.html et plus spécifiquement http://netfilter.filewatcher.org/unreliable-guides/NAT-HOWTO.html
Reportez vous SVP à l' IP Masquerade Resource pour plus d'informations sur ces patches ou d'autres eventuels patches.
** Reportez vous SVP à l' IP Masquerade Resource pour les informations les plus récentes**
Solutions de PORTFW pour FTP: :
forwarder des écrans X-Window :
module MASQ ICQ :
forwarders PPTP (GRE) et VPNs SWAN (IPSEC) tunneling :
Patches spécifiques aux jeux:
Jetez un coup d'oeil à la Page NAT de Dan Kegel pour plus d'informations. De plus amples informations se trouvent à la section Game-Clients et dans la section FAQ .
Reportez vous SVP à l' IP Masquerade Resource pour plus d'informations sur ces patches ou d'autres éventuels patches.