Internet par cellulaire/bluetooth sur un laptop Debian GNU/Linux (avec Fido 3G)

L'Internet par téléphone cellulaire est dispendieux qualité/prix (environ 30$/mois pour 1go/mois, si on a déjà un forfait voix de 15 à 20$/mois, donc environ 50$/mois+tx). Mais ça peut dépanner. Je m'en sers depuis quelques mois sur mon vieux Nokia n800 (ancêtre des smart phones) qui se connecte sur mon cellulaire Motorolla BZ60 acheté 40$ usagé. Sous Debian (circa 2010), Gnome ne semble pas avoir d'interface fonctionnelle pour configurer le PPP par cellulaire.

Bref, voici comment configurer l'Internet avec le fournisseur Fido.ca sur un ordinateur avec le système d'exploitation Debian GNU/Linux. Ça devrait également s'appliquer à Ubuntu ou autres.

Évidemment, il faut que l'ordinateur ait une interface bluetooth. Sur mon EeePC 901, c'est intégré. Il faut s'assurer que c'est actif dans le BIOS. À noter aussi que pas tous les "dongles" bluetooth externes sont bien supportés par Linux.

0- Désactiver le réseau dans le "network manager" de Gnome

Peut-être pas obligatoire, mais recommandé.

1- Détecter que l'interface bluetooth est bien active:

# hciconfig


hci0: Type: USB
BD Address: 00:11:22:33:44:55 ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING PSCAN ISCAN
RX bytes:552480 acl:2269 sco:0 events:746 errors:0
TX bytes:123293 acl:1195 sco:0 commands:41 errors:0

2- Détecter les appareils bluetooth accessibles depuis l'ordinateur.

Il faut que l'appareil (i.e. le téléphone cellulaire) soit en mode découverte pour être visible.

# hcitool scan


Scanning ...
00:11:22:33:44:55 Motorola Phone

où 00:11:22:33:44:55 est l'identifiant unique du téléphone. Ceci sera différent pour vous.

3- Connecter l'appareil (s'authentifier à l'appareil): utiliser gnome-bluetooth pour conncter avec l'appareil. Le logiciel affichera un mot de passer à pitonner dans le téléphone pour confirmer que la demande de connection est légitime (et non une autre personne dans votre entourage).

4- Détecter le canal de communication rfcomm

# sdptool search --bdaddr 00:11:22:33:44:55 DUN


[....]
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
[...]

donc le canal est 1 ("Channel: 1").

5- Connecter rfcomm


# rfcomm connect /dev/rfcomm0 00:11:22:33:44:55 1
Connected /dev/rfcomm0 to 00:11:22:33:44:55 on channel 1
Press CTRL-C for hangup

où 00:11:22:33:44:55 est l'identifiant unique déjà détecté, et 1 est le canal de communication.

6- Configurer wvdial

Modifier le fichier /etc/wvdial.conf


[Dialer bluetooth]
Phone = *99#
Username = fido
Password = fido
# New PPPD = yes
Modem Type = bluetooth Modem
ISDN = 0
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","internet.fido.ca"
Modem = /dev/rfcomm0
Baud = 115200
Stupid Mode = yes
Carrier Check = no

Selon les fournisseurs, le numéro de téléphone peut varier, ainsi que les lignes "Init". J'ai expérimenté avec divers exemples trouvés sur Internet. Les lignes "Modem type", "stupid mode" et "carrier check" semblent importantes.

Vidéotron: login = videotron, mot de passe = videotron, apn = media.videotron.

7- Démarrer la connexion: # wvdial bluetooth

Voilà.

Autres trucs qui peuvent dépanner quand ça ne fonctionne pas

  • redémarrer le cellulaire, recommencer le mode découverte
  • hciconfig hci0 down; hciconfig hci0 up
  • rfcomm release /dev/rfcomm0

Références

Archives