#1 Le 08/06/2006, à 10:36
- Cathou
[HowTo] Sagem fast usb - Free dégroupé - ueagleatm
1 - Rappels
2 - Contexte et prérequis
3 - Méthodes proposées : avantages et inconvénients
4 - Méthode à script unique
5 - Méthode ifupdown
6 - Remarques
1 - Rappels
Pour utiliser un modem Sagem Fast USB sous linux, on a le choix entre deux pilotes: ueagle-atm et eagle-usb. Ils se distinguent l'un de l'autre par leurs performances, leurs méthodes d'installation et surtout par le fait que le pilote eagle-usb n'est plus maintenu depuis août 2006.
Le pilote ueagle-atm est donc la solution à préférer, d'autant qu'une de ses parties (usbatm) est directement intégrée aux noyaux disponibles sur les dépots de Dapper.
En lui-même, le pilote ueagle-atm n'est pas utilisable qu'avec le Sagem F@st800, mais doit en principe convenir à tous les modems de cette page.
2 - Contexte et prérequis
On se limite donc à l'utilisation du pilote ueagle-atm en supposant de plus que son installation a été effectuée. Il existe déja de bonnes sources d'information pour cela, notamment cette page du wiki, ainsi que ce thread.
Ce qui suit servira essentiellement aux utilisateurs de Free en dégroupé mais devrait intéresser les internautes qui ont une adresse ip fixe et qui se connectent chez leur FAI par 'IPoverATM' VCmux.
Il suffit d'interrompre le déroulement décrit dans la page du wiki à la fin de la 5ème étape et de poursuivre par ce HowTo.
Avoir une adresse ip fixe permet de jeter aux oubliettes ppp, dhcp, etc..
Les paquets ubuntu suivants sont requis: atm-tools et libatm1. Le paquet libatm1 est présent par défaut quand vous installez Ubuntu 6.06.1 et il ne vous manque que le paquet atm-tools en principe. Ces paquets sont disponibles ici:
atm-tools (dépot Universe)
libatm1
Il suffit de transférer le(s) paquet(s) nécessaire(s) vers votre répertoire personnel via une clé usb ou un CD-RW. Si vous êtes expérimenté, vous pouvez également utiliser un point de montage..
A partir de là, faire:
sudo dpkg -i nom_du_paquet
L'étape suivante consiste à fixer les serveur DNS, en éditant le fichier de résolutions:
sudo gedit /etc/resolv.conf
et en lui donnant ce contenu:
nameserver 212.27.54.252
nameserver 212.27.53.252
Il s'agit des DNS 'officiels' de Free. On peut en rajouter d'autres par la suite.
Enfin, connaître son adresse ip et l'avoir à portée de main est indispensable.
3 - Méthodes proposées : avantages et inconvénients
La méthode à script unique:
++ facile à installer
++ non intrusive vis à vis de /etc
++ facile à utiliser: le script sert à se connecter et à se déconnecter manuellement
-- mais il faut penser à le faire
-- et surtout, root est le seul à pouvoir l'utiliser (utilisation de sudo)
La méthode ifupdown:
-- plus délicate à installer
-- modification de /etc/network/interfaces
++ mais en contrepartie c'est fait une fois pour toutes par sudo
++ le comportement est conforme à ifupdown, en particulier à l'init
++ très facile à utiliser: il n'y a rien à faire
-- rallonge la durée du boot
4 - Méthode à script unique
Créer un répertoire de travail et un fichier:
cd ~
mkdir ueagle
cd ueagle
touch freedeg
Editer le fichier freedeg et lui donner ce contenu:
#!/bin/bash
MYIP=AAA.BBB.CCC.DDD
VPI=8
VCI=36
MYGATEWAY=`echo $MYIP | sed -e 's/[0-9]\+$/254/'`
ps -e | grep atmarpd > /dev/null
stat_daemon=$?
ifconfig -a | grep atm0 > /dev/null
stat_interface=$?
ifconfig | grep atm0 > /dev/null
interface_up=$?
case "$1" in
start)
if [ $stat_daemon -ne 0 ] ; then
atmarpd -b 2> /dev/null
sleep 2
fi
if [ $stat_interface -eq 0 ] ; then
ifconfig atm0 up
else
atmarp -c atm0
ifconfig atm0 $MYIP netmask 255.255.255.0 mtu 1500 up
fi
atmarp -s $MYGATEWAY $VPI.$VCI null 2> /dev/null
route del default 2> /dev/null
route add default gw $MYGATEWAY
echo -e "\nconnecté\n"
exit 0
;;
stop)
if [ $interface_up -eq 0 ] ; then
if [ $stat_daemon -eq 0 ] ; then atmarp -d $MYGATEWAY ; fi
route del default 2> /dev/null
ifconfig atm0 down
fi
echo -e "\ndéconnecté\n"
exit 0
;;
*)
echo -e "\nUsage: sudo freedeg [start|stop]\n"
exit 1
;;
esac
Penser à remplacer AAA.BBB.CCC.DDD par votre vraie adresse ip.
De plus les utilisateurs qui ne sont pas chez Free mais qui ont un protocole similaire (voir paragraphe 2) devront remplacer également les valeurs 8 et 36 par celles que leur auront fourni leur FAI.
Rendre le fichier exécutable:
chmod +x freedeg
Pour se connecter ou se déconnecter, il suffit d'exécuter une de ces deux commandes:
sudo ./freedeg start
sudo ./freedeg stop
Si le fonctionnement est correct, on pourra déplacer le script vers un endroit connu du path:
sudo mv freedeg /usr/local/sbin/
sudo chmod 744 /usr/local/sbin/freedeg
Ce qui permettra de l'invoquer par sudo freedeg depuis n'importe quel terminal.
Pour votre convenance, le script freedeg est disponible en téléchargement direct --> ICI
5 - Méthode ifupdown
Avertissement: l'avantage de cette méthode est que la connexion se fait automatiquement au démarrage de la machine. Malheureusement, il faut être conscient que le temps que met le modem à se synchroniser va rallonger d'autant la durée du démarrage. Or, il n'est pas rare qu'il ait besoin de plus d'une tentative pour y arriver (cela dépend de beaucoup de choses: distance par rapport au DSLAM, qualité de la ligne, présence de filtres).
Au pire, s'il n'arrive pas à se synchroniser, il existe dans /etc/init.d/networking un timeout de deux minutes. Mais si on rajoute cette durée à celle des autres initialisations, ça commence à faire long
Pour cette raison, il vaut mieux essayer en premier la méthode du script unique et lancer un diagnostic syslog (voir paragraphe 6) pour déterminer si le modem arrive à se synchroniser en un temps acceptable.
Dans le répertoire de travail, créer un fichier:
cd ~/ueagle
touch ueagle-updown
Editer le fichier ueagle-updown et lui donner ce contenu:
#!/bin/bash
# todo: éliminer les redirections stderr pour documenter ifup et ifdown en --verbose
if [ "$IFACE" != atm0 ] ; then exit 0 ; fi
gateway=`echo $IF_ADDRESS | sed -e 's/[0-9]\+$/254/'`
case "$PHASE" in
pre-up)
# si démon absent, le relancer
! ps -e | grep atmarpd > /dev/null && atmarpd -b 2> /dev/null && sleep 2
# si l'interface n'existe pas, la créer
! ifconfig -a | grep atm0 > /dev/null && atmarp -c atm0
;;
post-up)
atmarp -s $gateway $IF_VPI.$IF_VCI null 2> /dev/null
# parano
route del default 2> /dev/null
route add default gw $gateway 2> /dev/null
;;
pre-down)
# échec si le démon a disparu - sans conséquence
atmarp -d $gateway 2> /dev/null
route del default 2> /dev/null
;;
*)
;;
esac
exit 0
Positionner ce script dans un répertoire dédié de /etc:
sudo mkdir /etc/ueagle-iface
sudo mv ueagle-updown /etc/ueagle-iface/
sudo chmod 744 /etc/ueagle-iface/ueagle-updown
Créer trois liens symboliques qui pointent dessus:
cd /etc/network/if-pre-up.d/
sudo ln -s /etc/ueagle-iface/ueagle-updown
cd /etc/network/if-up.d/
sudo ln -s /etc/ueagle-iface/ueagle-updown
cd /etc/network/if-down.d/
sudo ln -s /etc/ueagle-iface/ueagle-updown
Enfin, éditer le fichier des interfaces..
sudo gedit /etc/network/interfaces
..et rajouter ces lignes en fin de fichier:
auto atm0
iface atm0 inet static
address AAA.BBB.CCC.DDD
netmask 255.255.255.0
mtu 1500
vpi 8
vci 36
sans oublier de remplacer AAA.BBB.CCC.DDD par l'adresse ip fixe
Il ne reste plus qu'à redémarrer la machine.
Pour votre convenance, le script ueagle-updown est disponible en téléchargement direct --> ICI
6 - Remarques
- Ceux qui ont déja utilisé le pilote eagle-usb auront remarqué que l'interface atm0 est une pseudo carte réseau ATM de la même manière qu'une pseudo carte ethernet était créée par ueagle-usb.
- Dans le cas de la méthode ifupdown, le fichier /var/run/network/ifstate reflète l'état de l'interface atm0 quand on fait des ifup / ifdown.
- Les deux méthodes proposées sont incompatibles. Si après avoir installé la méthode ifupdown on veut pouvoir se connecter ou se déconnecter manuellement, il faut tout simplement utiliser une de ces commandes:
sudo ifup atm0
sudo ifdown atm0
- Les deux méthodes sont robustes vis à vis d'un débranchement de la ligne téléphonique et vis à vis d'une déconnexion par le DSLAM. En revanche, la connexion ne se rétablit pas correctement si on s'amuse avec la prise USB. S'il y a des spécialistes de hotplug et/ou udev dans le coin..
- A la place des DNS proposées, on peut aussi essayer les vieilles DNS de Free (212.27.32.176 et 212.27.32.177) mais celles-ci sont bien fatiguées. Occasionnellement, Free a des problèmes de fiabilité de ses DNS, ce qui se manifeste par une lenteur du navigateur web, voire même pas de surf du tout. Quand cela arrive, il est tout à fait possible de mettre dans le resolv.conf des DNS qui ne sont pas celles de Free, ne serait-ce que temporairement. A cet effet, beaucoup de gens utilisent des DNS de chez Oleane, réputées fiables.
- Les liens proposés pour télécharger les scripts sont sur un FTP Free. Si vous n'arrivez pas à les télécharger du premier coup, il suffit de réessayer à un autre moment. Puisque vous êtes chez Free, vous savez ce qu'il en est
- Diagnostics utiles
Pour visualiser la bande passante, le nombre de paquets reçus/envoyés, les erreurs et les atténuations de ligne:
cat /proc/driver/ueagle-atm/*
Pour observer dynamiquement ce qui se passe quand on débranche/rebranche le câble USB:
tail -f /var/log/syslog
[Edit 22/11/06]
- obsolescence du pilote eagle-usb
- meilleures adresses DNS dans resolv.conf, plus remarque sur les DNS
[Edit 03/12/06]
- simplification de la liste de paquets
- liens directs vers les scripts, plus remarque correspondante
Dernière modification par Cathou (Le 03/12/2006, à 16:08)
#2 Le 08/06/2006, à 11:05
- Vincent d'Eaubonne
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Je vois que tu est toujours sur le coup...
Tu as fait évoluer le script que tu m'avais proposé. Pour ma part, je passerai à la deuxième méthode par la suite, la première marche déjà très bien. Merci de ta persévérance, salut !
La liberté des autres étend la mienne à l'infini...
Hors ligne
#3 Le 08/06/2006, à 19:38
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Merci de tes encouragements
#4 Le 09/06/2006, à 10:03
- Vincent d'Eaubonne
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Bravo, de la belle ouvrage !
Avoir la solution technique et prendre le temps d'en faire un document explicatif , détaillé et à la portée de ceux qui nous suivent, voilà qui ne fait pas mentir la réputation de ce forum.
Merci à toi Cathou, bonne route
Et en plus, ça marche !
La liberté des autres étend la mienne à l'infini...
Hors ligne
#5 Le 09/06/2006, à 10:48
- xxc
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Salut Cathou !
J'ai suivi le wiki comme il fallait ainsi que ton tuto mais une fois arrivé à la phase terminale :
sudo ./freedeg start
Le terminal me renvoie ça :
sudo: ./freedeg: command not found
J'ai pourtant bien rendu le script exécutable me semble-t il...
Que puis-je faire stp ?
Hors ligne
#6 Le 09/06/2006, à 14:42
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
L'erreur la plus probable est que tu te sois trompé en recopiant le contenu du fichier freedeg.
En particulier, la première ligne doit être:
#!/bin/bash
Il ne faut pas rajouter des espaces pour faire joli, ni à cet endroit du script ni ailleurs
Comment as-tu recopié? A la main? Par copier/coller d'un fichier venant de windows?
(EDIT)
merci Vincent
Dernière modification par Cathou (Le 09/06/2006, à 15:43)
#7 Le 09/06/2006, à 15:14
- Vincent d'Eaubonne
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
tu veux dire :
#!/bin/bash
je suppose...
La liberté des autres étend la mienne à l'infini...
Hors ligne
#8 Le 09/06/2006, à 16:39
- xxc
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Merci de vous pencher sur mon cas
Mais j'ai copié/collé le script
Donc pas d'espace pour faire beau...
Une autre idée ?
Hors ligne
#9 Le 09/06/2006, à 17:04
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Tu l'as copié à partir d'un fichier édité par notepad?
Dans ce cas essaye ça:
mv freedeg .freedeg
sed 's/\x0D$//' .freedeg > freedeg
rm .freedeg
Une autre explication serait que tu n'as pas bash. Ce qui serait très bizarre.. Essaye ceci:
whereis bash
Que vois-tu?
Dernière modification par Cathou (Le 09/06/2006, à 17:05)
#10 Le 09/06/2006, à 17:51
- Bronco
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Bravo, de la belle ouvrage !
Avoir la solution technique et prendre le temps d'en faire un document explicatif , détaillé et à la portée de ceux qui nous suivent, voilà qui ne fait pas mentir la réputation de ce forum.
+1
Hors ligne
#11 Le 09/06/2006, à 20:44
- xxc
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Merci de ta rapidité de réaction Cathou !
Je vais voir ça des que possible !
Tu l'as copié à partir d'un fichier édité par notepad?
Exactement une bidouille pour passer d'un PC à un autre mais j'aurais pu faire mieux..
Il se pourrait bien que ce soit la cause en effet.
Hors ligne
#12 Le 11/06/2006, à 07:35
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
une bidouille pour passer d'un PC à un autre mais j'aurais pu faire mieux..
T'aurais pu faire pire aussi..
J'en connais qui auraient utilisé Word..
#13 Le 12/06/2006, à 09:10
- xxc
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Le gag !
Vendredi soir tu me donnes la solution pour le sagem et samedi matin je reçois la freebox ... Je l'avais presque oubliée celle-là depuis 2 mois que je l'ai commandée..
M'enfin je retesterai quand même le sagem pour prouver à mon frère qu'Ubuntu fait mieux qu'XP (qui ne fait pas fonctionner ce modem)
En tout cas merci !
Ah.. Et sinon tu saurais m'expliquer pourquoi le fait de l'avoir copier dans un fichier texte a créé ce disfonctionnement ?
J'suis curieux moi ...
Dernière modification par xxc (Le 12/06/2006, à 09:12)
Hors ligne
#14 Le 12/06/2006, à 13:31
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
J'ai pas la télé donc j'ai jamais demandé la freebox, mais d'après ce que je sais elle se comporte comme routeur ethernet. Donc c'est sûr qu'avec t'auras moins de problèmes qu'avec le sagem
J'ai pas très bien compris: tu as déja essayé le script ou c'est remis à plus tard?
Les fichiers sont sauvés par notepad au format DOS. C'est à dire que les lignes ne se terminent pas comme sous unix, il y a un caractére CR (0x0d, ou \r) avant le LF (0x0a, ou \n) final. La bidouille avec sed que je t'ai indiquée supprime tous ces caractères CR superflus.
Si on utilise le fichier issu de notepad sous unix sans l'avoir traduit avant, logiquement l'exécution du script doit planter dès la première ligne, il cherche dans /bin/ un shell qui n'existe pas (nommé bash? où ? est le caractère CR).
Il faudrait que je précise ça dans le howto. En fait la solution idéale serait de proposer les scripts décrits dans le howto en téléchargement direct. Malheureusement, je peux pas utiliser mon espace chez Free pour ça, trop long à expliquer.
Si tu connais un espace ftp fiable et gratuit de quelques megas ça m'intéresse
#15 Le 17/06/2006, à 21:09
- tuxedo
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Trop bon!!
J'utilise la méthode ifudown. Sous win$ je me fais déconnecter toutes les 20 minutes et la c good ))
Le boot est aussi rapide qu'avant, j'ai pas compri cette histoire du boot rallonger.
Merci ))
#16 Le 18/06/2006, à 08:12
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Contente pour toi
Au sujet du rallongement de boot, moi non plus je n'ai pas ce problème mais théoriquement il peut se produire. Et dans le cadre d'un howto, la moindre des choses est d'envisager le pire et de prévenir les gens.
Bonne continuation.
#17 Le 18/06/2006, à 11:03
- Yass
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Bonjour,
Merci Cathou pour le HowTo..
En fait, j'utilise le Sagem F@st mais pas avec Free.. j'aurai plutot l'IP dynamique ! j peux pas utiliser la meme methode, non ? Merci
Hors ligne
#18 Le 18/06/2006, à 13:18
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Non tu ne peux pas, avoir une ip statique est nécessaire.
Ceci dit, dans le cas d'une ip dynamique, il existe de bonnes sources d'info dans les forums. Beaucoup de gens y sont arrivés, il n'y a pas de raison que tu n'y arrives pas
Je te suggère de faire une recherche dans les forums en utilisant et/ou combinant ces mots-clés:
- sagem
- ueagle
- 800
- le nom de ton FAI
.. et souviens-toi de ceci: le plus important est d'arriver à installer le pilote ueagle. C'est complètement inutile d'essayer de configurer ta connexion (dns, ppp, dhcp, etc..) tant que cette installation n'a pas abouti.
#19 Le 18/06/2006, à 14:47
- Yass
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Merci pour l'info..
Hors ligne
#20 Le 18/06/2006, à 17:44
- xxc
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
@Cathou : Merci pour l'explication
J'ai remis le test du script pour plus tard, parce que bon là ça marche sans soucis alors...
En ce qui concerne le ftp, j'ai dans l'idée de me créer ça dans pas trop longtemps normalement (enfin vers septembre/octobre quand même)..
Donc je te ferai signe
Hors ligne
#21 Le 19/06/2006, à 06:53
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Merci de ta proposition xxc mais je viens de trouver une solution. Il ne me reste plus qu'à la mettre en oeuvre.
Bonne continuation.
#22 Le 10/07/2006, à 16:54
- elalaoui.omar
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
salut,
comment faire pour l adss dynamique.
merçi d avance
Hors ligne
#23 Le 11/07/2006, à 12:53
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
#18
#24 Le 22/11/2006, à 18:38
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
UP
Mise à jour du HowTo
#25 Le 03/12/2006, à 16:25
- Cathou
Re : [HowTo] Sagem fast usb - Free dégroupé - ueagleatm
Mise à jour.
Par ailleurs, je proposerai dans le cours de la semaine un ensemble de paquets deb qui:
- rendent le modem fonctionnel sous dapper, edgy et feisty
- implémentent la connexion chez Free par la méthode ifupdown.
Dans ces conditions, pour installer et utiliser leur modem Fast800, les freenautes dégroupés
pourront oublier ce HowTo et il leur suffira de connaître leur adresse IP