Alcatel Speedtouch USB sous GNU/linux
Le speedtouch usb, modem permettant de bénéficier d'une connexion adsl, fonctionne parfaitement sous GNU/linux et ce depuis longtemps. Il existe deux types de drivers pour ce modem sous notre système:
* Les drivers officiels fournis par le manufacturier Alcatel qui présente le double désavantage d'être propriétaire et d'être assez difficile à installer.
* Les drivers libres [GPL] de Benoît Papillault qui sont très performant, et facile d'installation. Nous nous intéresserons ici qu'à l'installation de ces derniers que j'utilise depuis plus d'un an sans aucun souci.
1.Pré-requis :
* La dernière version des drivers de Benoît papillault. Prenez bien, la version stable c'est à dire 1.1 tant que la 1.2 est en version beta.
* Le microcode du modem : mgmt.o fourni par Alcatel :
si vous avez déjà installé ce modem sous Windows, il s'agit du fichier C:\WINNT\SYSTEM32\DRIVERS\alcaudsl.sys (pour windows XP,2000 ou NT) ou C:\WINDOWS\SYSTEM\alcaudsl.sys (pour windows Me et 9.x). Vous devez récupérer ce fichier et le placer dans /root/ par exemple.
Plus généralement, vous trouverez le fichier mgmt.o sur le site d' alcatel (
http://www.speedtouchdsl.com/dvrdownload_lx.htm) prenez, le "binary" et vous placerez le mgmt.o dans /root/ par :
tar -xzvf /où_est/speedmgmt.tar.gz
cp mgmt/mgmt.o /root/
* Une version de pppd récente (>=2.3.11). Pour connaître votre version de pppd:
pppd --version
* Un noyau assez récent (2.4.18 ou plus de préférence) :
uname -r
Supportant les options suivantes, pour l'USB :
<M>/<*> Support for USB (CONFIG_USB)
<*> Preliminary USB device filesystem (CONFIG_USB_DEVICEFS)
<M> UHCI (Intel PIIX4, VIA, ...) support (CONFIG_USB_UHCI)
<M> UHCI Alternate Driver (JE) support (CONFIG_USB_UHCI_ALT)
<M> OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support (CONFIG_USB_OHCI)
pour PPP :
<M> PPP (point-to-point protocol) support (CONFIG_PPP)
<M> PPP support for sync tty ports (CONFIG_PPP_SYNC_TTY)
pour hdlc :
Character devices --->
[*] Non-standard serial port support
<M> HDLC line discipline support
[*]Unix98 PTY support
Si vous êtes un heureux utilisateur de Mandriva 8.2, RedHat 7.3 ou Slackware 8.1, (et plus pour chacune) vous n'avez rien à toucher. Pour les heureux utilisateurs de woody, installez un noyau 2.4.18 si ça n'était pas encore fait et vérifier simplement que vous avez les bonnes options.
* Le paquetage kernel-headers.
* Les outils GNU indispensables à toute compilation: gcc, make ...
2. Installation sur une Mandriva.
Si vous disposez d'une distribution Mandriva GNU/linux, sachez que les pilotes speedtouch usb sont livrés avec votre distribution.
Donc pour installer ces pilotes:
* Soit vous faîtes cela dès l'installation de la distribution. En spécifiant à l'étape de la configuration de votre connexion Internet que vous disposez d'un modem speedtouch usb.
* Soit vous avez loupez cette étape et vous faîtes cela après l'installation à l'aide du programme draknet:
* Lancez draknet en tapant (dans un terminal) : draknet &
* Puis copiez le microcode mgmt.o du modem dans /usr/share/speedtouch/:
cp /root/mgmt.o /usr/share/speedtouch/
* Voilà votre modem est installé et configuré. Si vous l'avez demandé, votre connexion sera automatiquement activé à chaque démarrage sous GNU/linux. Sinon pour l'activer manuellement, il vous suffira de taper :
/usr/share/speedtouch/speedtouch.sh start
3. Installation sur les autres distributions :
3.1 Support de l'USB :
Une fois convaincu des capacités usb de votre noyau, vous devez vérifier qu'un module usb correspondant à votre carte mère est chargé. Si vous disposez d'un chipset de marque via ou intel, il s'agira de usb-uhci. S'il est à base de chipset ALi, se sera probablement uhci. Chez mois quand je tape lsmod j'obtiens entre autres) :
usb-uhci 21452 0 (unused)
C'est une carte mère à base de via. Si vous n'avez ni usb-uhci, ni uhci, c'est que le module n'est pas chargé. Chargez-le par : modprobe usb-uhci
Maintenant tapez : cat /proc/bus/usb/devices il devrait vous renvoyer (entre autres) :
P: Vendor=06b9 ProdID=4061 Rev= 0.00
S: Manufacturer=ALCATEL
S: Product=Speed Touch USB
S: SerialNumber=0090D02DF8C7
Si le fichier n'existe pas c'est que le système de fichier n'est pas monté, vous pouvez, le monter par :
mount -t usbdevfs none /proc/bus/usb
Profitez-en pour rajouter, ceci dans votre /etc/fstab :
none /proc/bus/usb usbdevfs defaults 0 0
Retentez, si le fichier est vide c'est que le module usb chargé n'était pas le bon, essayez avec l'autre en ayant pris soin de décharger le précédent par : modprobe -r usb-uhci
3.2 Compilation des drivers :
On part du principe que vous possédez une distribution avec un noyau récent et le support de l'usb qui est ok. Une compilation qui ne devrait poser aucun problème :
tar -jxvf /où_est/speedtouch-1.1.tar.bz2
cd speedtouch-1.1/
./configure
make
make install
3.3 Configuration :
* Commencez, par éditer le fichier /etc/ppp/options, qui ne devra contenir que les 4 lignes suivantes :
usepeerdns
noauth
lock
noipdefault
* Editez ensuite, le fichier /etc/ppp/peers/adsl, s'il n'existe pas vous pouvez, le créer par :
mkdir /etc/ppp/peers
touch /etc/ppp/peers/adsl
Assurez-vous simplement qu'il ressemble à ceci :
debug
kdebug 1
noipdefault
defaultroute
pty "/usr/local/sbin/pppoa3 -m 1 -c -vpi 8 -vci 35"
sync
user "votre_login_ici"
noauth
noaccomp
nopcomp
noccp
novj
holdoff 4
persist
maxfail 25
usepeerdns
remplacez "votre_login_ici" par : "fti/votre_login@fti" si vous êtes chez France Telecom et "votre_login@clubadsl1" pour Club Internet.
Quand vous êtes satisfait éditez, les fichiers /etc/ppp/chap-secrets et /etc/ppp/pap-secrets, pour qu'ils ressemblent à ceci :
# client server secret IP addresses
"votre_login_ici" "*" "votre_password_ici" "*"
"votre_password_ici" est bien-sûr à remplacer par le bon mot de passe (toujours entre ""). "votre_login_ici" suit la même logique que précédemment (toujours entre "").
* Le dernier fichier à modifier dépends de votre distribution, en clair
* Pour RedHat :
rajoutez les lignes suivantes à votre fichier /etc/modules.conf (si elles n'existent déjà pas)
alias usb-interface usb-uhci #ou alias usb-interface uhci
alias char-major-108 ppp_generic
alias /dev/ppp ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-13 n_hdlc
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
* Pour woody :
rajoutez les lignes suivantes à votre fichier /etc/modules (si elles n'existent déjà pas)
usb-uhci #ou uhci
ppp_generic
ppp_async
n_hdlc
ppp_synctty
bsd_comp
ppp_deflate
ppp_async
* Pour Slackware :
C'est le fichier /etc/rc.d/rc.modules, qu'il faut éditer, assurez-vous simplement que la section "Serial line IP support (SLIP/CSLIP/PPP)" (en début de fichier) ressemble à ça :
#### Serial line IP support (SLIP/CSLIP/PPP) ###
## This module is for SLIP/CSLIP support:
#/sbin/modprobe slip
## Load PPP:
## Check kernel version to determine module names to use
/sbin/modprobe ppp_generic
/sbin/modprobe ppp_async
/sbin/modprobe n_hdlc
/sbin/modprobe ppp_synctty
/sbin/modprobe bsd_comp
/sbin/modprobe ppp_deflate
/sbin/modprobe ppp_async
Ecrasez-la par ce qui précède. Allez maintenant dans la section "USB Host Controllers" juste en dessous et décommentez, la ligne qui correspond à votre carte mère. Chez moi, pour un chipset via, j'ai ceci :
### USB Host Controllers:
# Universal Host Controller Interface (Intel standard):
/sbin/modprobe usb-uhci
# Universal Host Controller Interface (alternate JE):
#/sbin/modprobe uhci
# Open Host Controller Interface (Compaq/Microsoft/National standard):
#/sbin/modprobe usb-ohci
* Il ne vous reste plus qu'à copier le microcode mgmt.o dans /usr/local/bin par :
cp /root/mgmt.o /usr/local/bin/
3.4 Première Connexion :
* Commencez par charger, les modules restant par :
/sbin/modprobe ppp_generic
/sbin/modprobe ppp_async
/sbin/modprobe n_hdlc
/sbin/modprobe ppp_synctty
/sbin/modprobe bsd_comp
/sbin/modprobe ppp_deflate
/sbin/modprobe ppp_async
* Puis chargez, le microcode dans le modem :
/usr/local/sbin/modem_run -m -f /usr/local/bin/mgmt.o
* Lancez la connexion :
pppd call adsl &
* Pinguez yahoo.fr! :
ping 217.12.3.11
ping fr.yahoo.com
Si le premier ping est sans réponse, inutile de faire le second, revoyez votre configuration. Si c'est le deuxième qui est sans réponse, tapez simplement ceci :
rm /etc/resolv.conf
ln -s /etc/ppp/resolv.conf /etc/resolv.conf
Puis retentez le second ping.
3.5 Les prochaines connections :
Désormais pour vous connecter à Internet, il suffira de taper les lignes suivantes :
/usr/local/sbin/modem_run -m -f /usr/local/bin/mgmt.o
pppd call adsl &
Pour être connecté à chaque démarrage, rajouté simplement les lignes précédentes à la fin de votre /etc/rc.d/rc.local.