[Résolu] Driver wifi capricieux

Bonjour,

J’ai installé une Debian Etch sur un vieux PC qui me fait office de serveur.
Pour la connectée à mon réseau local j’ai dû acheter une carte wifi.
Cette carte wifi comporte un chipset RaLink rt61

Après plusieurs jours je bagarre, j’ai fini par faire fonctionner un satané driver pour cette carte, le driver rt61 fourni sur le site RaLink.

Je voulais que ce driver se lance automatiquement et que la machine se connecte au réseau dès le boot. Malheureusement par défaut, le driver se lance bien mais je ne sais pas pourquoi ça buggue, il ne peut pas se connecter au réseau.
Après plusieurs essais infructueux pour le faire marcher convenablement et quand je le souhaite, j’ai trouvé la seule façon de faire fonctionner tout ça :
(ra0 est l’interface réseau pour la carte wifi)
Si tout tout est désactivé, tant mieux sinon, je désactive tout :

ifconfig ra0 down modprobe -r rt61 /etc/init.d/networking stop

Et le seul enchainement de commandes possible qui marche à tout les coups :

modprobe rt61 ifconfig ra0 up /etc/init.d/networking start

Vous l’aurez compris, il faut absolument que j’up ra0 avec de démarrer le service networking sinon ça marche pas (je ne sais toujours pas pourquoi), je pensais que ça marcherai juste en démarrant networking puisque les informations de connexion pour ra0 sont très bien indiquées dans /etc/network/interfaces

J’ai alors eu la bonne idée d’inscrire dans le /etc/rc.local les lignes suivantes :

ifconfig ra0 down modprobe -r rt61 /etc/init.d/networking stop modprobe rt61 ifconfig ra0 up /etc/init.d/networking start

Cela s’exécute à la fin du boot (dernier travail de init)

Testé et approuvé, quelques secondes après avoir appuyé sur Power, tout fonctionne merveilleusement bien.
Cependant, je trouve pas ça très propre et j’aimerai savoir si il était possible de configurer plus proprement ceci.
Le truc principal à faire serait de ifconfig ra0 up AVANT que le service networking démarre et APRÈS le modprobe rt61

Si vous pouvez me donner un coup de pousse là-dessus, cela mettrai fin à tous mes problèmes avec ce serveur ^^

Merci !

Met dans /etc/network/interfaces

iface ra0 inet dhcp
pre-up /usr/local/bin/relancewifi
...

avec /usr/local/bin/relancewifi contenant

ifconfig ra0 down
modprobe -r rt61
modprobe rt61
ifconfig ra0 up

bonjour,
ne faudrait il pas ajouter cette astuce dans le tuto http://forum.debian-fr.org/viewtopic.php?t=6135&start=0, qui d’ailleurs mériterai de passer en post it

qu’est ce que ça fait sans le script en rajoutant juste rt61 dans /etc/modules ?

chez moi, un iwlist rao scan ne renvoie rien (pas de réseau).

Je sais pas si c’est une faute de frappe mais c’est pas rao mais ra0 (zéro)

Bonne chance. @+

Bizarre, je n’ai pour ma part aucun problème avec ce chipset.

J’ai fais ce que fran.b m’a conseillé, ça marche niquel :slightly_smiling: et c’est un peu plus propre ^^
Je ne connaissais pas la directive pre-up.

Merci pour vos réponses rapides !

Bizarrement, il faut qu’il charge le module, le décharge et le recharge pour que ça marche (si j’ai bien compris…)

Euh nan c’est plutôt qu’il faut qu’il se charge avant ifconfig ra0 up et cela avant /etc/init.d/networking start
Il faut que ça respecte cet ordre quoi :

  1. Chargement du module
  2. up de l’interface réseau
  3. Démarrage du service networking

Mais lors du boot, il n’y a apparemment pas d’étape 2 ou alors après la 3.
Donc je décharge le module et désactive tout pour être sûr puis j’effectue les 3 étapes dans l’ordre.

Dans ce cas Mattotop a raison, il suffit de le mettre dans /etc/modules avant… Mais pourquoi ce modprobe -r avant dans ce cas?

J’ai essayé en mettant juste rt61 dans /etc/modules mais ça change rien
le truc c’est de faire ifconfig ra0 up avant de démarrer networking

nan mais c’est pas grave ça marche bien avec le script :slightly_smiling: