Connexió 3G via Linux + mòbil amb Bluetooth

Objectiu:

Connectar un portàtil amb Linux a Internet mitjançant 3G i una connexió bluetooth a un mòbil.

Indicacions:

Els passos a seguir són simples. Primer encenem el bluetooth del nostre mòbil.

Des del nostre Linux fem:

$ sdptool search DUN

Aquesta comanda buscarà entre els dispositius bluetooth a prop per algún que ens pugui subministrar el servei Dial-Up Networking (DUN). El resultat serà com ara aquest:

Searching for DUN on 00:1E:3B:59:C1:4C ...
Service Name: Dial-Up Networking
Service RecHandle: 0x10073
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0x454e
encoding:    0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

D’aquest resultat ens interessa el canal (Channel 3) que és el que farem servir per connectar al mòbil.

A continuació crearem un enllaç amb la comanda rfcomm. Per això, i per simplificar posteriors connexions modifiquem l’arxiu /etc/bluetooth/rfcomm.conf. Hauria de quedar així:

rfcomm0 {
    bind yes;
    device 00:1E:3B:59:C1:4C;
    channel 3;
    comment "Dial Up Networking";
}

El device és l’adreça MAC del nostre mòbil. El channel és el Channel 3 trobat amb la comanda anterior.

Ja podem fer la connexió bluetooth amb el mòbil.

$ rfcomm connect 0

El zero (0) correspon al valor de /dev/rfcomm0. Si en tinguéssim diferents hauríem de comprovar el valor corresponent. La connexió es mantindrà fins que la parem amb Ctrl+C. Ara la podem parar ja que no ens farà falta encara.

Per fer la trucada 3G instal·larem el programa wvdial:

$ apt-get install wvdial

La configuració d’aquest programa està en /etc/wvdial.conf. La configuració hauria de quedar així:

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","internet"
New PPPD = yes
Modem = /dev/rfcomm0
Phone = *99***1#
Username = ""
Password = ""
Stupid Mode = yes
Auto DNS = yes

NOTA: Compte amb les cometes (“”) si es còpia directament a un terminal.

És important posar un Username i Password. Si el nostre ISP no en fa servir cap podem inventar-lo.

Per realitzar la trucada fem:

$ rfcomm connect 0
$ wvdial

De nou la comunicació és mantindrà fins que no la parem amb Ctrl+C.

Quan la trucada està establerta ja podem navegar per Internet. Podem comprovar que tant route -n com /etc/resolv.conf tenen els valors de la nova connexió.

Amb pppstats podem saber quan hem tansferit.

$ pppstats

Documentació:

És recomanable llegir els següents manuals:

$ man sdptool
$ man rfcomm
$ man wvdia
$ man wvdial.conf