di AAAle
NB: la guida è stata scritta per gentoo, ma ovviamente si applica a tutte le distro linux [r,d]ecenti (N.d.R.)
aggiornata il 09/06/2006
scritta il 17/11/2004
Lo scopo di questo tutorial è navigare in internet sfruttando le potenzialità della linea GPRS (o UMTS) trasformando il nostro cellulare in un modem senza fili che andrà ad interagire col computer per mezzo della connessione bluetooth
COMPILAZIONE KERNEL
Iniziamo questa lunga avventura compilando il kernel (nel mio caso e’ un 2.6.x su gentoo) predisponendolo per l’interazione con la penna USB e lo stack bluez:
Andiamo nella directory dei nostri sorgenti del kernel e digitiamo “make menuconfig”
Alla voce “Networking –> Bluetooth Subsystem Support” selezioniamo i moduli come disegnato di seguito:
--- Bluetooth subsystem support
<*> L2CAP protocol support
<*> SCO links support
<*> RFCOMM protocol support
[* RFCOMM TTY support
<*> BNEP protocol support
[* Multicast filter support
[* Protocol filter support
<*> HIDP protocol support
Bluetooth device drivers --->
e nella voce “Bluetooth device drivers” selezioniamo i moduli come segue:
<*> HCI USB driver
[* SCO (voice) support
<*> HCI UART driver
[* UART (H4) protocol support
[* BCSP protocol support
<*> HCI BCM203x USB driver
<*> HCI BPA10x USB driver
<*> HCI BlueFRITZ! USB driver
<*> HCI VHCI (Virtual HCI device) driver
Se non avete il supporto PPP aggiungetelo nel menù:
Device drivers –> Network device support
<*> PPP (point-to-point protocol) support
[ PPP multilink support (EXPERIMENTAL)
[* PPP filtering
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
<*> PPP Deflate compression
<*> PPP BSD-Compress compression
< > PPP MPPE compression (encryption) (EXPERIMENTAL)
< > PPP over Ethernet (EXPERIMENTAL)
usciamo dal menu’, salviamo la configurazione e lanciamo un bel “make” e successivamente “make modules_install”
Aggiorniamo il bootloader e riavviamo il sistema con il nuovo kernel.
INSTALLAZIONE STACK BLUEZ
Per utenti gentoo:
root@nebula ~ # emerge bluez-libs bluez-utils bluez-hciemu bluez-hcidump
INSTALLAZIONE PPP
Per utenti gentoo:
root@nebula ~ # emerge ppp
INTERAGIRE CON LA PENNA USB E IL CELLULARE
Possiamo dire che il nostro computer e’ predisposto per il bluetooth in generale.
Ora dobbiamo comunicare con la penna usb: inseriamola.
Editiamo /etc/bluetooth/pin inserendo un numero (esempio 123456).
Sarà il codice di pairing tra il computer e il cellulare
Apriamo un terminale, logghiamoci come root, avviamo il demone bluetooth:
root@nebula ~ # /etc/init.d/bluetooth start
Eseguiamo uno scan delle periferiche bluetooth per recuperare il MAC address del cellulare
root@nebula ~ # hcitool scan
Connettiamoci al telefono attraverso il device 0 con il MAC address del vostro telefono usando il canale bluetooth 1
root@nebula ~ # rfcomm connect 0 numero_MAC_address_telefono 1
Il cellulare dovrebbe ora chiedervi l’autorizzazione, inseriamo il codice 123456, accettate e il gioco e’ fatto!!!
In caso di errore tentare il procedimento inverso, eseguire uno scan col cellulare rilevando il portatile e accompiandolo sempre con lo stesso codice di pairing.
IL GIOCO FINALMENTE INIZIA
Questi sono i dati per il gprs con Tim, Omnitel, Wind:
**TIM**
APN uni.tim.it
Nome Connessione indifferente
Nome Utente n. telefono (senza lo 0 del prefisso)
Password password di registrazione uni.tim
Indirizzo IP dinamico
DNS Primario 195.120.29.30
DNS Secondario non esiste
**OMNITEL**
APN web.omnitel.it
Nome Connessione indifferente
Nome utente vuoto
Password vuoto
Indirizzo IP dinamico
DNS Primario 194.185.97.134
DNS Secondario non esiste
**WIND**
APN internet.wind
Nome Connessione indifferente
Nome utente vuoto
Password vuoto
Indirizzo IP dinamico
DNS Primario 212.245.255.2
DNS Secondario 212.141.84.12
In allegato a questo tutorial sono presenti 3 script: “gprs”, “gprs-connect-chat” e “gprs-disconnect-chat”. Per prima cosa dobbiamo copiarli nella directory /etc/ppp/peers a dare i permessi di accesso e esecuzione solo all’utente root.
nebula ~ # cp gprs* /etc/ppp/peers
nebula ~ # chown root:root /etc/ppp/peers/gprs*
nebula ~ # chmod 775 /etc/ppp/peers/gprs-connect-chat
nebula ~ # chmod 775 /etc/ppp/peers/gprs-disconnect-chat
Editiamo ora /etc/resolv.conf aggiungendo gli indirizzi (o l’indirizzo) DNS del nostro provider
nebula ~ # echo nameserver indirizzo_dns >> /etc/resolv.conf
Editiamo /etc/ppp/peers/gprs in base alle nostra configurazione:
A) Alla voce “Serial Device to which the GPRS phone is connected” togliamo il commento al device/dev/ttyUSB0B) Alla voce “Serial port line speed” togliamo il commento su 115200 (ovvero la velocita’ del GPRS)
C) Alla voce “Hardware flow control” togliamo il commento su crtscts
D) Alla voce “User name e password” inserite la riga “vostro user_name” * “password” [P.S: Alcuni provider non richiedono username e password quindi lasciate il campo vuoto se non li avete”>
Editiamo /etc/ppp/peers/gprs-connect-chat
A) Alla riga AT+CGDCONT=1,”IP”,”internet”,””,0,0 cancelliamo la parola internet e inseriamo l’APN del nostro providerB) Alla riga ATD*99***1# cancelliamo *99***1# e inseriamo *99#
Bene la configurazione del nostro pc e’ conclusa
Da root lanciamo il comando “pppd call gprs” e dovremmo avercela fatta. :D
nebula ~ # pppd call gprs
Lista dei files scaricabili:
funziona anche per ubuntu??
smoqer@smoqer-laptop:~$ sudo rfcomm connect 0 00:12:D1:BC:4F:E3
Can’t connect RFCOMM socket: Connection refused
perchè?..il codice è corretto e su kubuntu sono riuscito ad associare questo cellulare
però su ubuntu feisty non mi va