Page suivante Page précédente Table des matières

2. Connaissances de base

2.1 Qu'est-ce que l'IP Masquerade?

L'IP Masquerade est une fonctionnalité réseau 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).

2.2 Où cela en est ?

L'IP Masquerade est utilisé depuis quelques années et murit alors que Linux arrive dans les 2.2.x. 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 le 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. La liste continue à n'en plus finir, en réalité, si votre systeme d'exploitation parle TCP/IP, cela marcher avec l'IP Masquerade.

2.3 A qui peut être utile IP Masquerade?

2.4 Qui n'a pas besoin d'IP Masquerade?

2.5 Comment fonctionne IP Masquerade ?

D'après la FAQ IP Masquerade, de Ken Eves :

  Voici un schéma 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 schéma ci-dessus, un ordinateur sous Linux, utilisant
    ip_masquerading est connecté à Internet par un lien SLIP ou PPP, utilisant
    modem1. Il possède l'adresse IP (officielle) 111.222.333.444. Il est
    configuré de telle façon que modem2 permet aux appelants de se connecter
    et d'initier une connexion PPP ou SLIP.

    Le second système (qui n'utilise par forcément Linux comme système
    d'exploitation) se connecte par modem sur l'hôte Linux et entame une
    liaison SLIP ou PPP. Il NE possède PAS d'adresse IP officielle donc il
    utilise 192.168.1.100 (voir ci-dessous).

    Avec l'option ip_masquerade et un routage configuré correctement, la
    machine Peu_importe peut interagir avec Internet comme si elle était
    réellement connectée (à quelques exceptions près).

Pour citer Pauline Middlelink~: N'oublie pas de rappeler que la machine
Peu_importe doit déclarer l'hôte Linux comme passerelle (que cela soit la
route par défaut ou juste un sous réseau importe peu). Si Peu_importe ne peut
pas le faire, l'hôte Linux devra faire du proxy arp pour toutes les adresses
routées, 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 été
modifié pour utiliser les noms des machines de l'exemple ci-dessus~:
   o J'indique à 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 numéro de port, et indiquer sa propre
     adresse IP dans l'entête du paquet, tout en sauvegardant l'entête
     originale. Elle va alors envoyer le paquet modifié à travers son
     interface SLIP ou PPP, vers Internet.
   o Lorsqu'un paquet en provenance d'Internet arrive sur la machine Linux, si 
     le numéro de port est un de ceux assignés à l'étape précédente, elle va
     modifier à nouveau l'entête pour y remettre les numéros de port et
     adresses IP originaux, et alors envoyer le paquet à la machine
     Peu_importe.
   o L'hôte qui a envoyé le paquet ne verra jamais la différence.

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
    +----------+


    <-Réseau 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".

2.6 Ce qui est requis pour utiliser IP Masquerade sur un Linux 2.2.x

** Référez vous à IP Masquerade Resource pour les dernieres informations (en anglais). **

2.7 Ce qui est requis pour utiliser IP Masquerade sur un Linux 2.0.x

** Veuillez s'il vous plaît consulter l' IP Masquerade Resource pour les dernières informations.**


Page suivante Page précédente Table des matières