Free,dégroupage total, speedtouch sous Linux

Tout d’abord, je ne sais pas trop où poster cet article. En effet, je l’ai mis sous Linux, j’aurais très bien pu le mettre sous Réseau, ou Internet. Voici l’histoire…

Rappelons que j’ai commencé l’ADSL au siècle dernier, à l’époque de la seule offre ADSL qui existait dans ma région, à savoir la bonne vieille offre Extense de Wanadoo. Depuis, je suis passé chez free. Au départ, c’était uniquement pour le prix. Mais depuis, je dois avouer que pour ce même prix (~30 euros TTC/mois), j’ai gagné d’années en années moult services :

  • tout d’abord, le dégroupage, ou comment passer de 512 Kbits/s à 1 Mbits/s, puis 2, puis 4… j’en suis à 7 Mbits/s aujourd’hui ;
  • puis, alors que je n’ai rien payé, j’ai reçu un "beau" modem ADSL/USB/Ethernet (la freebox, version 2 à l’époque) ;
  • puis, une ligne téléphonique qui me permettait de ne plus payer les communications vers les téléphones fixes ;
  • puis, la télévision, avec plein de chaînes (et quelques freezes 😉 même si ça s’est bien amélioré depuis) ;
  • puis, le dégroupage total, ou comment ne plus payer un centime à France Telecom.

Bref, j’ai signé pour 512 Kbits/s, et petit à petit, je me retrouve avec tout ça. Difficile de ne pas être un client content. Seulement, free a continué à développer son offre de services (WiFi, multiplayer pour regarder la TV sur le PC sans avoir besoin de carte d’acquisition, activer le routage NAT sur la freebox, la TV haute définition, l’option magnétoscope dans la freebox qui contient maintenant un disque dur, le freeplayer pour lire avec la freebox les DivX stockés sur un PC accessible en réseau, etc.), mais moi, je suis resté bloqué : et oui, ma vieille freebox version 2 ne supporte pas tout ça.

Il était donc temps de passer à la freebox version 5, avec sa TVHD, son disque dur, son WiFi MIMO (future norme 802.11n), etc. D’autant qu’avec plus de deux ans d’ancienneté, cette opération ne me coûte que 30 euros. C’est parti… me voilà dans ma console, à demander l’échange de freebox.

La première étape est rapide : inscription le 03 octobre au soir, affiché comme envoyé le 04 octobre !!! Trop bien. Seulement… le 10 octobre, plus d’internet ! La vielle freebox v2 ne synchronise plus, et je n’ai toujours pas ma v5. Il est temps d’expliquer comment ça marche :

  • lors de l’inscription, free prépare la freebox v5. Mais cette dernière ne vous est pas envoyée par la Poste, mais par un réseau de distribution s’appuyant sur des commerces : le réseau Kiala ;
  • or, rappelons que la freebox a besoin de s’authentifier auprès du DSLAM, qui vérifie l’adresse Mac de la freebox ;
  • alors, quand free reçoit le n° d’expédition "Kiala", il attend 72 heures (temps moyen d’acheminement du colis), puis, configure le DSLAM avec l’adresse Mac de la nouvelle freebox. L’ancienne freebox continue alors à fonctionner, tant qu’elle n’est pas redémarrée.

Aussi, passé les 72 heures après l’expédition, si vous n’avez pas reçu la nouvelle boiboîte, l’ancienne continue de fonctionner… tant qu’une coupure de courant ou une désynchro n’a pas lieu. Mais si ça arrive… Plus d’Internet. Voilà ce qui m’est arrivé. Le page de suivi de Kiala a indiqué "en cours de préparation par l’expéditeur" durant 6 jours, et voilà seulement qu’elle est à l’état "prise en compte dans le réseau Kiala, acheminement en cours"… Bref, je ne l’ai toujours pas reçue, et mon ancienne freebox s’est désynchronisée. Me voilà sans Internet ni téléphone…

Heureusement, j’avais gardé de mon ancien abonnement Extense le vieux modem ADSL USB Speedtouch 330 révision 0, encore appelé "la raie manta" (la photo parle d’elle même si vous voulez savoir pourquoi elle est nommée ainsi). Pour info, Thomson a racheté depuis la licence à Alcatel, puis à repaquagé et vendu ce modem sous d’autres formes. En théorie, ce modem n’est pas compatible avec free en dégroupage. En effet, sous Windows, le driver ne sait faire que du PPP over ATM ou du PPP over Ethernet. Or, free utilise une sauce bien plus simple : pas de PPP, pas d’authentification PAP ou CHAP… Ben oui : quand on est dégroupé, pas besoin de s’authentifier : on sait qui est au bout de la ligne 😉 Alors, free fait simplement du "VC MUX routed 8.36".

Vous l’avez compris, le driver Windows (même dans sa dernière version 4) ne sait pas virer le PPP, et faire du simple "VC MUX routed". Heureusement, sous Linux, tout est possible… 😉

Je dois avouer que j’ai tout de même bien galéré pour y arriver. Pas qu’Internet manque d’information sur ce point. Seulement, les documentations et autres tutoriaux ne sont plus à jour depuis 2 ou 3 ans. Or, depuis, le noyau et les utilitaires ont bien changé.

Alors, pour les personnes qui sont dans la même "galère" que moi, ou tout simplement, pour ceux qui veulent utiliser pour une raison X ou Y leur vieille raie manta pour surfer avec free en dégroupé, voici le petit tutorial.

Tout d’abord, je n’ai rien inventé. Je suis parti de cette page : http://mon.adsl.chez.free.fr/modemdegroupe/spedtoucheusb/config.html

Si vous avez un noyau 2.4, allez sur cette page, ça marche. Mais si vous avez un noyau 2.6, sachez que plusieurs choses ont changé :

  • les drivers du speedtouch sont inclus de base dans le noyau 2.6.9 et plus,
  • plus besoin de l’utilitaire modem_run pour charger le firmware dans le modem, le noyau s’en charge tout seul.

Et évidemment, pas beaucoup de documentation sur le net pour expliquer tout ça. J’ai du décortiquer les sources du noyau pour comprendre… Alors, pour gagner du temps, voici la procédure.

1) vérifier que l’ATM et le driver speedtouch sont bien compilé dans votre noyau (je ne sais pas si les distributions classiques type Debian, Mandriva et autre Fedora – pour ne citer qu’elles – l’activent de base ; à vous de voir). Pour ce, si vous utiliser comme moi un noyau compilé à la main, il faut vérifier que :

  • Networking/Networking options/Asynchronous Transfer Mode (ATM) et tout ce qui est dessous est à "y" ou à "M" (inclus en dur ou compilé sous forme de module),
  • Device Drivers/USB support/USB DSL modem support/USB DSL modem support et Speedtouch USB support soient à "M".

Pour le reste, compilation classique du noyau (make), des modules (make modules) et installation de ces derniers (make modules_install). Ne pas oublier de réinstaller votre Lilo ou Grub si nécessaire (pas moi, j’ai une xbox modchipée 😉 ).

2) aller sur http://sourceforge.net/projects/linux-atm/ récupérer le paquet "ATM on Linux" (on en est à la version "linux-atm-2.4.1" à l’heure où j’écris ces lignes). Compiler et installer ce paquetage avec le classique :

tar xfz linux-atm-2.4.1.tar.gz && cd linux-atm-2.4.1 && ./configure –prefix=/usr && make && make install

3) comme je l’ai déjà dit, le driver charge lui-même le firmware dans le modem. Plus besoin d’outils comme modem_run ou modem_mngr comme on peut le lire sur le net. Encore faut-il avoir ce firmware au bon format, et le placer au bon endroit. Pour ma part, avec la xebian de ma xbox, le bon endroit est "/usr/lib/hotplug/firmware/". Sur d’autres distributions, il faut aller lire dans le fichier "/lib/udev/firmware.sh" pour connaître la valeur de la variable d’environnement "$FIRMWARE_DIRS" afin de trouver la liste des chemins que le noyau parcoure à la recherche des firmwares.
Quant au firmware, pour le trouver… ça peut être fastidieux. Il faut récupérer le fichier firmware.bin (sous Windows) ou mgmt.o (sous Linux), puis utiliser un utilitaire disponible sur le net (firmware-extractor), qui va chercher à l’intérieur de ce fichier les deux morceaux du firmware. Bref, comme je suis sympa, voici les deux fichiers en question :

  • si vous possédez les toutes premières versions des modems speedtouch 330 (la raie manta verte – rev. 0 -, ou le modem violet – rev. 2 -) : téléchargez ce fichier
  • si vous possédez une version récente (boîtier argenté) – rev. 4 – : téléchargez ce fichier

Bref, décompressez l’archive qui vous convient, et copiez les fichiers speedtch-1.bin et speedtch-2.bin dans le répertoire "/usr/lib/hotplug/firmware/" ou tout autre répertoire dans lequel votre noyau va chercher ses firmwares. Pour moi, ça a été un :

# cp speedtch*.bin /usr/lib/hotplug/firmware/ (ou /lib/hotplug/firmware pour les anciennes Ubuntu, ou /lib/firmware pour les nouvelles Ubuntu, …)

4) il ne reste plus qu’à brancher le modem sur un port USB, activer le module, lancer la couche ATM, configurer le périphérique et le routage, avec les lignes suivantes :

  • # modprobe speedtch (attendre que le modem se synchronise),
  • # atmarpd -b -l syslog
  • # atmarp -c atm0
  • # ifconfig atm0 VOTRE_ADRESSE_IP_FIXE netmask 255.255.255.0 mtu 1500 up
  • # atmarp -s ADRESSE_ROUTEUR_FREE 8.36 null
  • # route add default gw ADRESSE_ROUTEUR_FREE

Votre adresse IP fixe est disponible depuis la console d’administration de free. Idem pour l’adresse du routeur free (passerelle ou gateway), qui peut se déduire en remplaçant le dernier octet de votre adresse IP par 254.

Après, rien n’empêche de transformer votre machine Linux en routeur NAT, etc. Bref, la procédure ci-dessus est peut-être à adapter selon votre distribution et votre environnement. Mais pour moi, elle marche, et elle me permet d’avoir le net, en attendant l’arrivée (prochaine je l’espère) de ma freebox V5.


Laisser un commentaire