Mini-HOWTO SLIP+ProxyARP

Dave Kennedy davek@melita.com

v1.2 04/02/1994
Ce document montre comment utiliser SLIP et Proxy ARP pour relier un réseau local Ethernet à un autre réseau connecté à Internet. Adaptation française réalisée par Nicolas Lejeune (nl@freenix.fr), février 1996.

1. Introduction

En deux mots, j'ai chez moi un petit réseau local Ethernet que je souhaitais connecter à Internet. Comme je n'ai pas d'adresse de réseau personnelle, je voulais vampiriser l'adresse du réseau de mon bureau. Je suis parvenu à mes fins en utilisant SLIP et proxy ARP. Ce document explique rapidement comment.

2. Résultat

Je vais d'abord présenter le résultat, puis comment l'atteindre.

Le réseau final appartient à un réseau de classe C (a.b.c.0) :

           Internet
              |               
      o-------+---------+----------------o     <- Ethernet distant
                        | .126
                    NetBlazer
                        | .215                 <- SLIP (par modem 14.4)
                       gw
                        | .253
      o-----------------+--------+-------o     <- Ethernet local
                                 | .254 
                                mus

3. Installation

La solution repose sur l'utilisation du routage et de Proxy ARP.

Voici la table de routage de gw :

Kernel routing table
Destination     Gateway    Genmask         Flags Metric Ref    Use Iface
a.b.c.254       *          255.255.255.255 UH    0      0     5628 eth0
a.b.c.253       *          255.255.255.255 UH    0      0        0 eth0
a.b.c.126       *          255.255.255.255 UH    0      0       22 sl0
127.0.0.0       *          255.0.0.0       U     0      0       32 lo
default         a.b.c.126  *               UG    0      0        9 sl0

Cette table a été créée grâce aux commandes suivantes :

  1. La connexion SLIP a été établie, ce qui a créé une entrée pour la passerelle par défaut ("gateway", NDT) et une autre pour a.b.c.126.
  2. ifconfig eth0 a.b.c.253
  3. route add a.b.c.253 eth0
  4. route add a.b.c.254 eth0

Gw est désormais configuré pour parler aussi bien avec eth0 qu'avec sl0 (ça pourrait être le moment de signaler que mon noyau est compilé avec l'option "IP forwarding"). Il est peut-être inutile de justifier la route explicite vers a.b.c.253, mais, sans elle, un ping .253 depuis .253 sort par la liaison SLIP.

Voici la table de routage de mus :

Kernel routing table
Destination     Gateway    Genmask         Flags MSS    Window Use Iface
a.b.c.253       *          255.255.255.255 UH    1436   0       59 eth0
127.0.0.0       *          255.0.0.0       U     1936   0       52 lo
default         a.b.c.253  *               UG    1436   0    21661 eth0

Cette table a été créée grâce aux commandes suivantes :

  1. ifconfig eth0 a.b.c.254
  2. route add a.b.c.253 eth0
  3. route add default gw 192.68.22.253

A ce moment, j'ai essayé un ping vers NetBlazer. Je voyais sortir les paquets par le modem (SD clignotait), mais il n'y avait pas de réponse. C'était bon signe puisque cela montrait que gw recevait les paquets par eth0 (Ethernet) et les renvoyait par sl0 (SLIP).

L'étape suivante consistait à configurer l'autre côté de la connexion SLIP (NetBlazer) afin qu'elle me reconnaisse et sache me parler. Ce fut le rôle de sa commande proxy arp.

    Usage: proxy  ether|token| 

    proxy a.b.c.253 ether 00:c0:6d:11:66:d3
    proxy a.b.c.254 ether 00:c0:6d:11:66:e4

Je pouvais désormais faire un ping depuis mus vers Internet : tout allait pour le mieux. :)

4. Noyau et logiciels

Le noyau utilisé sur gw était un 1.1.88 compilé avec l'option "IP Forwarding", indispensable ici. Le noyau de mus était également un 1.1.88 mais sans "IP Forwarding" (inutile).

Il convient de remarquer que l'on aurait pu utiliser PPP aussi bien que SLIP.

5. En résumé

(paragraphe vide dans le texte original, NDT)

6. Problèmes et questions en suspens

La principale question s'est posée alors que je rédigeais ce HOWTO. Quand j'ai vérifié la table ARP sur NetBlazer, mes entrées ARP n'étaient plus là, alors que, pourtant, tout marchait correctement. J'ai retapé l'entrée associée à mus et ça n'a rien changé. Si quelqu'un a une idée sur la question, qu'il m'en fasse part.

7. Remerciements

Mes remerciements à John Garnett garnett@actlab.rtf.utexas.edu pour son message du 21 Dec 1994 "A Guide on Using SLIP with ProxyARP..." Je ne suis pas sûr que mon document soit autre chose qu'un réchauffé de ce qu'il avait écrit, si ce n'est que j'utilise un NetBlazer du côté d'Internet et que lui avait un modem connecté à un ordinateur. Quoi qu'il en soit, merci, John !

8. Documentation complémentaire

| Dave Kennedy (davek@melita.com)                Voice: 404-409-4575 |
| UUCP: emory!melupl!davek                       Whois: DK87         |