Erinevus lehekülje "Mobiiltelefoni kasutamine Debian Lennyga" redaktsioonide vahel
(→PPP ühendus arvuti ja sideoperaatori vahel) |
(→/dev/rfcomm0 seadme moodustamine) |
||
176. rida: | 176. rida: | ||
* sissehelistamise kanali (ingl. k. channel) numbrit | * sissehelistamise kanali (ingl. k. channel) numbrit | ||
− | Mõlemad saab teha kindlaks | + | Mõlemad saab teha kindlaks küsides telefonis töötava dial-up network teenuse andmeid |
# sdptool search dun | # sdptool search dun | ||
227. rida: | 227. rida: | ||
# /dev/rfcomm0 | # /dev/rfcomm0 | ||
crw-rw---- 1 root dialout 216, 0 2009-8-15 15:52 /dev/rfcomm0 | crw-rw---- 1 root dialout 216, 0 2009-8-15 15:52 /dev/rfcomm0 | ||
− | |||
====Gnome vahenditega==== | ====Gnome vahenditega==== |
Redaktsioon: 15. august 2009, kell 16:15
Sisukord
Sissejuhatus
Mobiiltelefoni abil saab internetti kasutada mitmel moel ja erinevatel eesmärkidel, näiteks
- kasutades mobiiltelefonis sisalduvat modemit arvuti internetti ühendamiseks selleks, et arvutist kasutada internetti
- kasutades mobiiltelefonis sisalduvat wifi seadet mobiiltelefoni ühendamiseks wifi võrku selleks, et mobiiltelefonis olevate rakendustega kasutada internetti
- kasutades mobiiltelefoni üle nö tavalise mobiilsidevõrgu, et telefonis olevate rakendustega, nt brauseriga kasutada internetti
Käesolev pala käsitleb esimest juhtumit eesmärgiga tekitada telefoni abil arvutile internetiühendus. Eelduseks on sarnaste omadustega riistvara ning sideteenus
- sinihamba (ingl. k. bluetooth) toega arvuti
- sinihamba ja GPRS vms toega telefon
- mobiilside operaator (ja nö kasutaja leping) peab võimaldama andmesidet (GPRS vms)
Andmevahetus seadmete vahel käib selliselt
<---------------------- PPP ------------------------------> arvuti <---- sinihammas ----> telefon <---- GPRS vms ----> mobiilside operaator <---- IP ----> internet
Alumises kihis kasutatakse sinihamba ja gprs protokolle andmevahetuseks ning loogilisel tasemel moodustatakse nende peale nö tavalistele arvutiprogrammide andmevahetuse võimaldamiseks PPP ühendus. PPP ühenduse tulemusena tekib arvutile lisaks ppp0 võrguseade, millele teenusepakkuja on omistanud ip aadressi.
Käesoleva tekst ei käsitle kõnealust valdkonda ammendavalt, lihtsalt on kirjeldatud ühte teadaolevalt töötavat kasutusjuhtu, konkreetselt oli kasutada IBM T42 sülearvuti, Nokia E51 telefon ja Debian Lenny nii nagu ta 2008 aasta augustis parasjagu oli.
Pikka aega on olnud levinud võimaluseks arvuti ja mobiiltelefoni vahel andmevahetust korraldada IrDA (Infrared Data Association) abil. Sinihamba eeliseks on kasutusmugavus kuna andmevahetuses olevad seadmed ei pea olema väga lähestikku (praktiliselt toimub ühendus mitmete meetrite ulatuses) ning suurem andmevahetuskiirus. Suuremate vahemaade tõttu peab arvestama ka kaasnevaid võimalikke turvariske.
Sinihammas ehk Bluetooth
Sinihammas (ingl. k. bluetooth) tehnoloogia võimaldab raadioside abil omavahel seadmetel suhelda. Tavaliselt võib seadmete vahekaugus olla kuni mõned meetrid, mis sõltub seadmete võimsusest. Sinihammas kasutab andmevahetuseks samaaegselt mitmeid raadiosagedusi 2.4 GHz ümbrusest.
Nagu üldiselt osaliste suhtlemisel on oluline ka sinihamba puhul, et enne andmevahetuse alustamist saaksid osalised üksteist autentida. Nt arvuti ja telefoni kokkuühendamisel (ingl. k. pairing) tuleb mõlemal pool sisestada vastavas menüüs samasugune passkey. Seejärel öeldakse, et seadmed on ühendatud (ingl. k. bound).
Tavaliselt tuleb seadmete kasutamisel nende sinihamba tugi sisselülitada, telefonidel tuleb leida vastav menüü ning arvutitel tuleb seda teha tõnäoliselt kahes kohas, riistvaraliselt (nt BIOS'is) ning tarkvaraliselt vastava sinihambatoe tarkvara käivitamisega.
Kuigi käesolevas palas on keskendatud sinihamba kasutamisele eesmärgiga ühendada arvuti internetti, saab praktiliselt seejuures ka uurida telefoni salvestud faili, nt pilte ja videoid.
Telefoni ettevalmistamine
Telefonis tuleb lülitada gprs vms andmesideteenus ja sinihammas sisse ning lisada arvuti wifi seadmete nimekirja.
Arvuti ja telefoni ühendamine üle sinihamba
Kuigi nö madalal tasemel kasutatakse arvuti ja telefoni vahelise ühenduse pidamiseks ikkagi samu komponente, on erinevates keskkondades erinevad kasutajataseme vahendid. Käesolevas tekstis käsitletakse selliseid
- Gnome keskkond
- nö käsurealt
Debian Lenny tuum ja paketihaldus sisaldab vajalikku tarkvara, midagi eraldi ei ole tarvis võrgust kopeerida. Käesoleva punkti tulemusena ei hakka tööle arvuti internetiühendus, aga luuakse arvuti ja telefoni vahel ühenduseks vajalik kanal (see on sarnane nt iRDA'le).
Gnome keskkonnas
Eeldame, et Gnome keskkond on paigaldatud ja kasutusel ning seda kasutatakse nö tavakasutajana, kusjuures kasutaja peab kuuluma gruppi netdev. Arvutisse peavad olema paigaldatud paketid bluetooth ning gnome-bluetooth
# apt-get install bluetooth gnome-bluetooth
Bluetoothi käivitamiseks tuleb öelda
# /etc/init.d/bluetooth start
Läheduses oelvate bluetooth seadmete kasutamiseks tuleb kasutajana Gnome keskkonda sisse logida ning seadmed esmalt omavahel paaritada (ingl. k. pairing). Olgu tegu arvuti ja telefoniga, valige Gnome Bluetooth-appletil, millel on abitekst Bluetooth Manager parem hiireklõpsuga avanevast hüpikmenüüst Browsd Device ning võiks avaneda nt selline pilt
Seejärel ilmub telefonile tekst 'Exchange data with fuji-0?', vastates jaatavalt küsib telefon nn Passkey'd, sisestage nt '1111'. Järgmisena avaneb arvutis sarnane Passkey sisestamise aken
Õnnestumise tunnuseks on avanenud telefoni nö failisüsteemi sisuga aken, nt selline
Õnnestumise tunnuseks on arvuti korpusel signaaltule süttimine ning mõni teade dmesg'is.
Käsurealt
Reeglina pakub mobiiltelefon üle sinihamba erinevaid teenuseid, sdptool abil saab küsida telefonilt teenuste nimekirja nt selliselt
# sdptool browse Inquiring ... Browsing 00:1F:5C:F0:E2:A7 ... Service Name: Dial-up networking Channel: 1 Service Name: Nokia PC Suite Channel: 15 Service Name: COM 1 Channel: 3 Service Name: Voice Gateway Channel: 13 Service Name: Audio Gateway Channel: 12 Service Name: Network Access Point Service Service Description: Personal Ad-hoc Network Service which provides access to a network ... Service Name: OBEX Object Push Channel: 9 Service Name: OBEX File Transfer Channel: 10 Service Name: SyncML Client Channel: 11 Service Name: SIM ACCESS Channel: 4
Esitatud nimekiri on oluliselt õgvendatud, tegelik programmi väjund on aadressil Fail:Sdptool-nokia-3110c.patch.
Kui seejärel paigutada telefon arvuti lähedusse peaks nägema telefonile vastavat rida (kus Enn on telefonile telefonis seadistatud nimi), kui sinihamba ühenduste seadistamise programmiga hcitool öelda
Arvuti bluetooth seadme andmed
# hciconfig hci0: Type: USB BD Address: 00:0B:5D:A5:76:40 ACL MTU: 192:8 SCO MTU: 64:8 UP RUNNING PSCAN ISCAN RX bytes:7859 acl:86 sco:0 events:308 errors:0 TX bytes:3295 acl:85 sco:0 commands:95 errors:0
Skaneerime ümbrust
# hcitool scan Scanning ... 00:1D:6F:C1:CF:FB Enn
Teades seadme sinihamba aadressi saab küsida ka detailsemat infot
# hcitool info 00:1D:6F:C1:CF:FB Requesting information ... BD Address: 00:1D:6F:C1:CF:FB Device Name: Enn LMP Version: 2.0 (0x3) LMP Subversion: 0x6cc Manufacturer: Cambridge Silicon Radio (10) Features: 0xbf 0xee 0x0f 0x46 0x98 0x19 0x00 0x00 ...
Seejärel tuleb redigeerida faili /etc/bluetooth/rfcomm.conf sarnaseks, oluline on, et device järel sinihamba aadress klapiks telefoniga
rfcomm0 { # Automatically bind the device at startup bind yes; # Bluetooth address of the device device 00:1D:6F:C1:CF:FB; # RFCOMM channel for the connection channel 2; # Description of the connection comment "Enn"; }
Peale faili muutmiste tuleb öelda hcid deemonile stop ja start
# /etc/init.d/bluetooth restart Restarting bluetooth: hcid rfcomm.
Seejärel tuleb vajadusel lülitada bluetooth sisse, näiteks öeldes IBM T42 arvuti puhul
# echo enable > /proc/acpi/ibm/bluetooth
PPP ühendus arvuti ja telefonis töötava sissehelistamiseteenuse vahel
Sarnaselt eelmisele punktile esitatakse kaks viisi ppp ühenduse tekitamiseks
- Gnome keskkond
- nö käsurealt
Üks mobiiltelefoni poolt üle sinihamba pakutav teenus on reeglina nn sissehelistamise teenus (ingl. k. dial-up networking)
Service Name: Dial-up networking Channel: 1
Arvuti saab ühendada internetti, kasutades üle sinihamba ühenduse telefonis töötavat sissehelistamise teenust. Kasutaja peab kuuluma gruppi dip.
/dev/rfcomm0 seadme moodustamine
/dev/rfcomm0 seade on midagi virtuaalse serial pordi taolist, mida kasutab ppp tarkvara telefonis töötava sissehelistamisteenuse poole pöördumisel. Telefoni sissehelistamise teenuse kasutamiseks on tarvis teada
- telefoni bdaddr (bluetoothaddress) numbrit
- sissehelistamise kanali (ingl. k. channel) numbrit
Mõlemad saab teha kindlaks küsides telefonis töötava dial-up network teenuse andmeid
# sdptool search dun Inquiring ... Searching for dun on 00:1F:5C:F0:E2:A7 ... Service Name: Dial-up networking Service RecHandle: 0x10000 Service Class ID List: "Dialup Networking" (0x1103) "Generic Networking" (0x1201) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 1 Language Base Attr List: code_ISO639: 0x656e encoding: 0x6a base_offset: 0x100 Profile Descriptor List: "Dialup Networking" (0x1103) Version: 0x0100
kust on näha, et
- bdaddr - 00:1F:5C:F0:E2:A7
- channel - 1
/dev/rfcomm0 seadme moodustamist juhib seadistusfail /etc/bluetooth/rfcomm.conf, nt antud juhul sobib sisu
rfcomm0 { # Automatically bind the device at startup bind yes; # Bluetooth address of the device device 00:1D:6F:C1:CF:FB; # RFCOMM channel for the connection channel 2; # Description of the connection comment "Dial-up networking"; }
Ning seadme moodustamiseks tuleb öelda
# /etc/init.d/bluetooth restart
Tulemusena peab tekkima sarnane seade
# /dev/rfcomm0 crw-rw---- 1 root dialout 216, 0 2009-8-15 15:52 /dev/rfcomm0
Gnome vahenditega
Gnome keskkonnas sobib kasutada ppp ühenduseks programme wvdial ning gnome-ppp, nende paigaldamiseks tuleb öelda
# apt-get install gnome-ppp wvdial ppp
Esmakordsel käivitamisel tuleb sisestada ühestust puudutavad andmed, nt Nokia 3110c telefoni ja EMT kliendi puhul
Edaspidi piisab valida Connect
Tõõtavale ühendusele vastab selline pilt
Käsurealt
Tundub, et nt EMT võrgus sobib kasutada sellise sisuga chat skripti
# cat /etc/ppp/chat/gprs ABORT 'BUSY' ABORT 'NO CARRIER' ABORT 'ERROR' "" AT OK AT+CGDCONT=1,"IP","internet.emt.ee","",0,0 OK ATDT*99***1# \~ ""
ning /etc/ppp/peers/gprs-bt skripti
/dev/rfcomm0 115200 connect 'chat -v -f /etc/ppp/chat/gprs' nodefaultroute usepeerdns noipdefault
Ühenduse alustamiseks tuleb öelda
# pppd call gprs-bt Serial connection established. using channel 3 Using interface ppp0 Connect: ppp0 <--> /dev/rfcomm0 rcvd [LCP ConfReq id=0x0 <auth pap> <mru 1500> <asyncmap 0xa0000>] sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xf9f4acd0> <pcomp> <accomp>] No auth is possible sent [LCP ConfRej id=0x0 <auth pap>] rcvd [LCP ConfRej id=0x1 <magic 0xf9f4acd0> <pcomp> <accomp>] sent [LCP ConfReq id=0x2 <asyncmap 0x0>] rcvd [LCP ConfReq id=0x1 <mru 1500> <asyncmap 0xa0000>] sent [LCP ConfAck id=0x1 <mru 1500> <asyncmap 0xa0000>] rcvd [LCP ConfAck id=0x2 <asyncmap 0x0>] sent [LCP EchoReq id=0x0 magic=0x0] sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>] rcvd [IPCP ConfReq id=0x0 <addr 10.6.6.6>] sent [IPCP ConfAck id=0x0 <addr 10.6.6.6>] rcvd [LCP EchoRep id=0x0 magic=0x0] rcvd [IPCP ConfNak id=0x1 <addr 172.29.5.213> <ms-dns1 217.71.32.116> <ms-dns3 217.71.32.115>] sent [IPCP ConfReq id=0x2 <addr 172.29.5.213> <ms-dns1 217.71.32.116> <ms-dns3 217.71.32.115>] rcvd [IPCP ConfAck id=0x2 <addr 172.29.5.213> <ms-dns1 217.71.32.116> <ms-dns3 217.71.32.115>] Cannot determine ethernet address for proxy ARP local IP address 172.29.5.213 remote IP address 10.6.6.6 primary DNS address 217.71.32.116 secondary DNS address 217.71.32.115 Script /etc/ppp/ip-up started (pid 3440) Script /etc/ppp/ip-up finished (pid 3440), status = 0x0
Tulemusena on tekkinud juurde ppp0 seade
# ifconfig ppp0 ppp0 Link encap:Point-to-Point Protocol inet addr:172.29.6.10 P-t-P:10.6.6.6 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:3 errors:0 dropped:0 overruns:0 frame:0 TX packets:3 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:54 (54.0 B) TX bytes:54 (54.0 B)
Tõenäoliselt on lisaks tarvis kohendada ruutinguid, nt suunata vaikelüüs PPP ühenduse teise otsa peale
# route add default gw 10.6.6.6
Märkused
- Esmakordsel telefoni kasutamisel tuleb registreerida võti öeldes
# apt-get build-dep bluez-utils # cd /usr/share/doc/bluez-utils/examples # # make cc `pkg-config --libs --cflags dbus-1` -DDBUS_API_SUBJECT_TO_CHANGE -DVERSION="\"unknown\"" \ -o passkey-agent passkey-agent.c #./passkey-agent --default 1111
- Programmiga rfcomm toimub Linuxi tuuma sinihamba alamsüsteemi seadistamine, tavaliselt pole seda käsitsi tarvis öelda, aga kui on vaja, siis nt sedasi
# rfcomm connect /dev/rfcomm0 00:1D:6F:C1:CF:FB 2
- pppd asemel saab telefonis olevat modemit juhtida ka nt minicom programmiga. Seadme nimena tuleb minicomi jaoks kasutada /dev/rfcomm0.
- Arvutile tuntud sinihambad on kirjas kataloogis /var/lib/bluetooth.
- Turvalisuse seisukohast ei tee paha kirjeldatud viisil moodustatud PPP ühenduse peal omakorda kasutada OpenVPN lahendust.
- nn Bluetooth-ping
# l2ping 00:1F:5C:F0:E2:A7 Ping: 00:1F:5C:F0:E2:A7 from 00:0B:5D:A5:76:40 (data size 44) ... 0 bytes from 00:1F:5C:F0:E2:A7 id 0 time 11.86ms 0 bytes from 00:1F:5C:F0:E2:A7 id 1 time 29.90ms 0 bytes from 00:1F:5C:F0:E2:A7 id 2 time 42.79ms