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~:
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~:
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 <hostid> ether|token|<interface> <mac-addr>
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. :)
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