HOWTO Neufbox et carte wifi

Un article de Gentoo Linux Wiki.

Sommaire

[modifier] Introduction

La Neufbox peut être utilisée avec une carte USB Wifi si vous la demandez. Le modèle que j'ai reçu n'est pas supporté directement dans les sources du noyau Linux, mais il est reconnu par un des drivers fournis par le package linux-wlan-ng. Il s'agit en l'occurence d'un matériel de type Prism2.

Ayant choisi de compiler moi-même mon noyau, j'ai également dû installer le module correspondant à ma carte Wifi à la main, mais il est probable que la simple utilisation de l'ebuild fonctionne directement (je n'ai pas essayé) :

Code : Installation directe
# emerge linux-wlan-ng

[modifier] Installation manuelle

Il est nécessaire que vous ayez les sources du noyau courant et qu'elles soient configurées de la même manière que le noyau courant.

L'installation est assez classique, mais je vais vous la détailler :

Tout d'abord téléchargez la dernière version sur le site http://www.linux-wlan.org/

Puis décompressez l'archive par la commande :

Code : Décompresser
# tar zxvf linux-wlan-ng-0.2.2.tar.gz

Allez dans le répertoire linux-wlan-ng-0.2.2/ et lancez la commande

Code : Lancer la configuration
# make config

Comme c'est une carte USB, répondez non à toutes les questions, sauf à celle qui concerne USB.

Code : Configurer
Build Prism2.x PCMCIA Card Services (_cs) driver? (y/n) [y]:
Build Prism2 PLX9052 based PCI (_plx) adapter driver? (y/n) [y]:
Build Prism2.5 native PCI (_pci) driver? (y/n) [y]:
Build Prism2.5 USB (_usb) driver? (y/n) [y]:
Linux source directory [/usr/src/linux]:
pcmcia-cs source dir [/usr/src/pcmcia-cs-3.1.29]:
PCMCIA script directory [/etc/pcmcia]:
Alternate target install root directory on host []:
Module install directory [/lib/modules/2.2.20]:
Prefix for build host compiler? (rarely needed) []:
Build for debugging (see doc/config.debug) (y/n) [y]:

Vous pouvez maintenant lancer la compilation

Code : Compiler
# make all

Pour installer, lancez en tant que root

Code : Installer
# make install

[modifier] Configurer l'accès Neuf Telecom

D'abord, il faut bien comprendre les choix imposés par Neuf Télécom :

  • La carte USB se connecte à la NeufBox, mais ceci ne permet pas l'accès à Internet
  • Il faut établir la véritable connexion à Internet par le protocole PPPOE, Point to Point Protocol over Ethernet, ce qui est un peu abusif, puisqu'ici ce n'est plus Ethernet (avec des fils) mais Wifi (sans fil), enfin bon...
  • Il faut s'authentifier au cours de ce processus, c'est-à-dire que le login et le mot de passe fournis doivent être renseignés dans un fichier de configuration

[modifier] Connexion Wifi

Vous devez modifier le fichier /etc/wlan/wlan.cfg et créer le fichier /etc/wlan/wlancfg-N9UF_TEL9COM (attention aux chiffres).

Le fichier /etc/wlan/wlan.cfg doit contenir les valeurs suivantes. Je n'ai pas touché aux autres, car je ne les connais pas.

Code : /etc/wlan/wlan.cfg
WLAN_DEVICES="wlan0"
WLAN_SCAN=n
SSID_wlan0="N9UF_TEL9COM"
ENABLE_wlan0=y

/etc/wlan/wlancfg-N9UF_TEL9COM est une copie de /etc/wlan/wlancfg-DEFAULT, sans modification autant que je me souvienne. Notez cependant que certains paramètres concernent l'encryption WEP, mais que Neuf Telecom ne l'a pas activée dans la NeufBox, et donc qu'on ne peut pas s'en servir.

[modifier] Connexion PPPOE

J'utilise pour cela le package rp-pppoe publié par Roaring Penguin

Code : Installation rp-pppoe
# emerge rp-pppoe

La configuration se fait dans le fichier /etc/ppp/pppoe.conf. Voici les valeurs que j'ai mises :

Code : /etc/ppp/pppoe.conf
ETH='wlan0'
USER='xxxx-xxxx@neuf.fr' # Apparemment le @neuf.fr est nécessaire
DEMAND=no                # La connexion persiste. D'ailleurs ma machine est toujours
                         # en ligne, et accessible avec un nom de domaine par dyndns.
DNSTYPE=SERVER
PEERDNS=yes
DEFAULTROUTE=yes

Il y a de nombreux paramètres, je n'ai pas cherché à comprendre les autres :)

[modifier] Authentification

Votre mot de passe doit être saisi dans le fichier /etc/ppp/chap-secrets, dont voici un exemple :

Code : /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client	server	secret			IP addresses

"xxxx-xxxx@neuf.fr"	*	"yyyyyyyy"

xxxx-xxxx est le login fourni par Neuf Telecom.

yyyyyyyy est le mot de passe fourni par Neuf Telecom.

En général ces deux éléments sont des suites de lettres et de chiffres aléatoire.

Les guillemets et l'étoile entre les deux mots sont nécessaires.

[modifier] Ouverture de la connexion

Maintenant que tout est configuré, il n'y a plus qu'à essayer ! Il faut lancer les services nécessaires :

Code :
# /etc/init.d/wlan start
# /etc/init.d/rp_pppoe start

Si vous souhaitez que votre PC se connecte dès que vous l'allumez, n'oubliez pas de les ajouter aux serevices de démarrage :

Code :
# rc-update add wlan default
# rc-update add rp_pppoe default

[modifier] Note

J'ai eu quelques problèmes avec la carte Wifi. En analysant les logs dans /var/log/messages je me suis rendu compte que lorsque je lançais /etc/init.d/wlan start, un événement hotplug essayait d'accéder à la carte Wifi, alors que celle-ci n'était pas encore initialisée par les modules USB du noyau.

Pour résoudre cela, j'ai ajouté une attente de 3 secondes dans le script /etc/hotplug/wlan.agent

Code : /etc/hotplug/wlan.agent
#!/bin/bash
#
# p80211/wlan hotplug policy agent.
#
# wlan hotplug params include:
#	
#	ACTION=%s [register|remove|shutdown|startup|suspend|resume]
#	INTERFACE=%s
#       NSDNAME=%s
#

# Attendre l'événement suivant :
# usbcore: registered new driver prism2_usb
# Sinon, pas possible de se servir de la carte !!
sleep 3

(...)

Depuis, je n'ai plus aucun problème :))