Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOWTO] Come connettere due computer con Bluez e Kernel 2.6
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
Momentime
Tux's lil' helper
Tux's lil' helper


Joined: 08 Sep 2003
Posts: 111
Location: Italy

PostPosted: Tue Dec 07, 2004 11:01 am    Post subject: [HOWTO] Come connettere due computer con Bluez e Kernel 2.6 Reply with quote

Altro howto con il titolo che parla da solo.

Come connettere due computer con Bluetooth

0. Chanelog
Versione 1.0

  • Corretto qualche errore grammaticale (whoops, ce ne saranno degli altri =)
  • Modificata la sezione 4 sotto consiglio di [hammerfall]
  • Modificata la sezione 3 - adesso non e' necessario avere /etc/bluetooth/hcid.conf diverso da server a client


1. Prefazione
(Ancora una volta) Non mi assumo alcuna responsabilità dei risultati che otterrete seguendo questo howto, quindi se il vosto computer si fonde o se fate esplodere tutte le cose fatte di vetro che stanno attorno a voi nel raggio di 2 km o meno (e questo è solo un PICCOLISSIMO esempio), sono problemi vostri. Non miei. =) Non mi piace scriverlo ma è meglio farlo.
Inoltre, credo che la configurazione di hcid.conf sia una specie di SECURITY HAZARD. Fate voi. Ah, se è così e sapete dare un senso alla sicurezza, scrivete in questo topic cosa devo fare per rendere sicura la connessione.

2. Preparativi
Allora, avete bisogno di 2 computer con kernel 2.6 che abbiano un adattatore Bluetooth ciascuno. Non so come vada compilato il kernel di preciso, io ho fatto così: ho preso tutto quello che aveva qualcosa a che fare col bluetooth in Device Drivers ==> Net e l'ho messo come modulo ove possibile, altrimenti integrato nel kernel. NON bisogna attivare il sottosistema bluetooth in Device Drivers ==> USB, altrimenti tutto non funzionerà . NON serve anche se il vostro adattatore (come il mio) è USB. Ripeto (non fa mai male), NON serve.


3. Installazione e configurazione di Bluez
Bisogna innanzitutto installare i programmi per controllare il sottosistema Bluetooth, e i tools Bluez fanno al caso nostro. A seconda del vostro adattatore, potreste aver bisogno di un firmware. Ad esempio, i Broadcom ne hanno bisogno, e si trova il firmware nell'ebuild bluez-firmware. Se lo trovate invece sul CD di installazione (o magari anche su Google, o sul sito del produttore) copiatelo nella directory /etc/bluetooth/firmware .
Code:

emerge bluez-utils bluez-firmware


Nota: server è chi riceve connessioni da dei client. Non so come funzioni realmente, quindi non vi dico altro, non vorrei sparare troppe ca**a*e. Se sapete correggermi, fate pure =P
Da me il server condivide la connessione ad internet e il client la scrocca.

Adesso configuriamo /etc/bluetooth/hcid.conf
Questo è il mio (leggete i commenti!)

Code:

options {
        autoinit yes;
        security user;
        pairing multi;
        pin_helper /usr/bin/bluepin;
}

device {
        # Fate in modo che il risultato finale non sia uguale
        # %d - id del device
        # %h - hostname
        name "Bluez (%d) on %h";

        class 0x100100;
        iscan enable; pscan enable;
   
        lm accept;

        lp rswitch,hold,sniff,park;
}


Abbiamo bisogno di caricare dei moduli all'avvio, fate così.

Code:

cat >> /etc/modules.autoload.d/kernel-2.6 << EOF
rfcomm
bluetooth
hidp
bnep
EOF


Caricateli e uppate il device Bluetooth (Fate sia nel server che nel client)
Code:

for i in `cat /etc/modules.autoload.d/kernel-2.6 | grep -v "#"`; do modprobe $i; done
/etc/init.d/bluetooth start
hciconfig hci0 up
hciconfig hci0
/etc/init.d/bluetooth stop


Scrivete l'indirizzo del device del server (BD address: 00:11:22:33:44:55:66) su un foglio, servirà tra poco.

4. Connettiamo i due computer!
Perfetto. Modifichiamo il file di configurazione /etc/conf.d/bluetooth . Le due righe alla fine sono quelle che ci interessano.

Nel server mettiamo
Code:
PAND_ENABLE=true
PAND_OPTIONS="--master --listen --role GN"


Nel client invece
Code:
PAND_ENABLE=true
PAND_OPTIONS="--connect indirizzo:bt:hardware:del:computer:server --service GN"


Mettiamo l'initscript nel livello rc default e avviamolo
Code:
rc-update add bluetooth default
rc

Fate in modo che il server abbia già avviato il demone pan prima che lo faccia il client, altrimenti non funzionerà. Se dovesse succedere così, fate nel client
Code:
/etc/init.d/bluetooth restart


Adesso possiamo configurare le interfacce di rete, mettendo nel server l'ip 10.0.0.1 e nel client 10.0.0.2. C) sta per client e S) sta per server.
Code:
C) ifconfig bnep0 10.0.0.2
S) ifconfig bnep0 10.0.0.1


Vi ricordo che la velocità massima che ho raggiunto trasferendo un file è 80 kb/s -- perciò non aspettatevi grandi prestazioni nel client. Trasferire 700 MB tramite Bluetooth impiega 170 minuti circa.

THE END
Fine. Finito. Non è difficile; di sicuro è più facile farlo che dirlo. Se avete qualche idea, consiglio, critica, richiesta d'aiuto, numero della lotteria vincente (meglio un PM =), suggerimento, ecc. ecc. scrivete qui. Ah, le critiche sui gatti assassini NON saranno tollerate =)

P.S.: lo stesso vale per l'uso frequente delle (parentesi). Al prossimo howto, ciao.
_________________
Registered Linux User #367816
Registered Linux machine #262819

No hope, life is none, none!


Last edited by Momentime on Tue Dec 07, 2004 2:40 pm; edited 1 time in total
Back to top
View user's profile Send private message
[hammerfall]
Apprentice
Apprentice


Joined: 27 May 2004
Posts: 243

PostPosted: Tue Dec 07, 2004 11:24 am    Post subject: Reply with quote

da quel che ne so gli unici pacchi necessari sono bluez-utils bluez-libs (dpiendenza del primo). Bluez-kernel ti mette delle versioni aggiornate dei driver nel kernel. Hai dimenticato forse una cosa, alcuni adattatori necessitano del firmware da caricare ad ogni avvio della periferica, per esempio il mio che un chipset broadcom. di norma questi firmware vanno messi nella cartella
Code:
/etc/bluetooth/firmware
e li potete prendere dal cd di installazione per windows.
Poi, i moduli che fai caricare non credo sia necessario metterli cosi' (ovvio che posso sbagliarmi eh? ^_^ ) visto che c'e' gia' un servizio chiamato bluetooth
Code:
/etc/init.d/bluetooth
che se messo nel rc correttamente fa gia' partire i vari servizi caricando anche i moduli necessari.
Infine faccio un'aggiuntina per chi magari vuole solo collegare il cell al pc tramite porta seriale virtuale (la famosa rfcomm). Una cosa che non e' molto chiara nei vari tutorial e' che bisogna editare il file
Code:
/etc/bluetooth/rfcomm.conf
in modo che riporti il mac adress del proprio cellulare altrimenti la connessione fallira' inesorabilmente.
Spero di aver dato una mano. ciau!
_________________
--------

Hammerfall ^_^
Back to top
View user's profile Send private message
Momentime
Tux's lil' helper
Tux's lil' helper


Joined: 08 Sep 2003
Posts: 111
Location: Italy

PostPosted: Tue Dec 07, 2004 11:45 am    Post subject: Reply with quote

Bene, appena possibile correggerò l'howto. Non sapevo dei firmware, visto che il mio (un digicom, non so altro) non ne ha bisogno. Beh a dire il vero non avevo previsto l'uso di /etc/init.d/bluetooth, credo sia più comodo così. Ma alla fine è uguale, o ci pensa il modules.autoload o ci pensa l'initscript bluetooth (o ci penso io! mwawaawwaaw).

Ciao
_________________
Registered Linux User #367816
Registered Linux machine #262819

No hope, life is none, none!
Back to top
View user's profile Send private message
Momentime
Tux's lil' helper
Tux's lil' helper


Joined: 08 Sep 2003
Posts: 111
Location: Italy

PostPosted: Tue Dec 07, 2004 2:41 pm    Post subject: Reply with quote

A proposito, non che che sapete come creare un net.bnep0? Sarebbe più comodo!
_________________
Registered Linux User #367816
Registered Linux machine #262819

No hope, life is none, none!
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30884
Location: here

PostPosted: Wed Dec 08, 2004 4:04 pm    Post subject: Reply with quote

Aggiunto ai post utilissimi sezione howto
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
d3vah
Apprentice
Apprentice


Joined: 13 Feb 2003
Posts: 184
Location: Italy

PostPosted: Fri Apr 01, 2005 11:40 am    Post subject: Reply with quote

Mi rendo conto di essere moltissimo ot ma non saprei dove chiedere:

E' Possibile mettere un windows XP come client?

Tutto funziona bene fintanto che si collegano 2 linux anche se l'ifconfig del bnep0 funziona solo dopo che un client si è collegato e sinceramente non so se sia il comportamento normale, abituato a dispositivi tipo eth0 che stanno li a prescindere che il cavo di rete ci sia o meno.

Comunque ho seguito la guida lato server mettendo come role NAP dato che windows dice che supporta il PAN come client è basta, credo, lanciato hciconfit hci0 up e ho fatto eseguire la scansione dei dispositivi pan a windows ma non trova nulla!

Sto sbagliando qualcosa?

Griazie in anticipo e scusate l'ot ma mi trovo di frequente a dover trasferire file tra il mio portatile (gentoo) e altri pc con windows e volevo evitare di usare un cavo crossato ogni volta, l'idea era di portarmi dietro 2 pennine bluetooth e festa finita

Saluti
_________________
Ciro Guariglia
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum