Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00446 009319 10484561 na godz. na dobę w sumie
100 sposobów na sieci bezprzewodowe - książka
100 sposobów na sieci bezprzewodowe - książka
Autor: Liczba stron: 288
Wydawca: Helion Język publikacji: polski
ISBN: 83-7361-391-9 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> sieci komputerowe >> sieci bezprzewodowe
Porównaj ceny (książka, ebook, audiobook).

Świat opleciony jest kablami. Pomimo tego wielu ludzi uważa, że najlepiej łączyć się z siecią bez ich użycia. Technologia bezprzewodowa -- niezależnie od tego, czy stosowana jest w celu zastąpienia kabli czy zapewnienia łączności z internetem -- zmienia sposób komunikowania się urządzeń i ludzi.

Książka '100 sposobów na sieci bezprzewodowe' zawiera 100 porad przygotowanych przez ekspertów na podstawie codziennych doświadczeń dotyczących sieci bezprzewodowych. Każda porada, choć można ją przeczytać w zaledwie kilka minut, pozwoli zaoszczędzić wielogodzinnych poszukiwań.

W książce można znaleźć opisy przydatnych rozwiązań, które pozwolą wykorzystać wszystkie możliwości technologii bezprzewodowej.
Opisano między innymi:

Książka przeznaczona jest dla osób zaawansowanych i średnio zaawansowanych. Niezależnie od tego czy sieć bezprzewodowa obejmuje tylko pomieszczenia biura, czy też ma sięgać drugiego końca miasta, ten zbiór technik będzie pomocny przy jej budowie.

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TREĎCI SPIS TREĎCI KATALOG KSI¥¯EK KATALOG KSI¥¯EK KATALOG ONLINE KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK TWÓJ KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE ZAMÓW INFORMACJE O NOWOĎCIACH O NOWOĎCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl 100 sposobów na sieci bezprzewodowe Autor: Rob Flickenger T³umaczenie: Witold Zio³o ISBN: 83-7361-391-9 Tytu³ orygina³u: Wireless Hacks 100 Industrial-Strength Tips Tools Format: B5, stron: 288 Ďwiat opleciony jest kablami. Pomimo tego wielu ludzi uwa¿a, ¿e najlepiej ³¹czyæ siê z sieci¹ bez ich u¿ycia. Technologia bezprzewodowa -- niezale¿nie od tego, czy stosowana jest w celu zast¹pienia kabli czy zapewnienia ³¹cznoġci z internetem — zmienia sposób komunikowania siê urz¹dzeñ i ludzi. Ksi¹¿ka „100 sposobów na sieci bezprzewodowe” zawiera 100 porad przygotowanych przez ekspertów na podstawie codziennych doġwiadczeñ a dotycz¹cych sieci bezprzewodowych. Ka¿da porada, choæ mo¿na j¹ przeczytaæ w zaledwie kilka minut, pozwoli zaoszczêdziæ wielogodzinnych poszukiwañ. W ksi¹¿ce mo¿na znaleĥæ opisy przydatnych rozwi¹zañ, które pozwol¹ wykorzystaæ wszystkie mo¿liwoġci technologii bezprzewodowej. Opisano miêdzy innymi: • ró¿ne wersje standardu 802.11 oraz kryteria wyboru technologii najlepszej w danych warunkach, • zastosowanie technologii bezprzewodowych, takich jak Bluetooth, przenoġnych urz¹dzeñ radiowych, telefonów komórkowych, technologii Wi-Fi, hotspots i innych, równie¿ mniej popularnych, metod ³¹czenia siê z sieci¹, • wdro¿enie praktycznych metod wykrywania, analizy oraz monitorowania sieci bezprzewodowych — w³asnych oraz publicznych, • poszerzanie zasiêgu sieci oraz jak najlepsze wykorzystanie dostêpnego widma radiowego, • projektowanie i budowê w³asnych anten oraz punktów dostêpowych, • planowanie i zestawianie ³¹czy na du¿ych odleg³oġciach, • zagadnienia bezpieczeñstwa sieci bezprzewodowych oraz zabezpieczania zasobów przed nieautoryzowanym dostêpem oraz pods³uchem. Ksi¹¿ka przeznaczona jest dla osób zaawansowanych i ġrednio zaawansowanych. Niezale¿nie od tego czy sieæ bezprzewodowa obejmuje tylko pomieszczenia biura, czy te¿ ma siêgaæ drugiego koñca miasta, ten zbiór technik bêdzie pomocny przy jej budowie. Spis treści Twórcy książki ...................................................i...................................................i........................... 7 Przedmowa ...................................................i...................................................i................................ 9 Wstęp..............................................i...................................................i............................................. 11 Rozdział 1. Standardy ...................................................i...................................................i............. 15 1. Standard 802.11 — przodek wszystkich opracowanych p8rzez IEEE standardów bezprzewodowego Ethernetu .................................................................. 15 2. Standard 802.11a — Betamax rodziny 802.11 .............................................................. 17 3. 802.11b — generalnie standard ...................................................................................... 19 4. Standard 802.11g — szybsza wersja 802.11b................................................................ 21 5. Standard 802.16 — infrastruktura sieci bezprzewodowych dużego zasięgu......... 22 6. Bluetooth — alternatywa dla kabelków ....................................................................... 23 7. Pasmo 900 MHz — mniejsze prędkości, lepszy zasięg .............................................. 24 8. CDPD, 1xRTT i GPRS — komórkowe sieci transmisji danych ................................. 26 9. FRS i GMRS — super walkie-talkie............................................................................... 28 10. Standard 802.1x — zabezpieczenie dostępu do portów sieciowych........................ 30 11. HPNA i Ethernet w sieci elektrycznej........................................................................... 31 12. BSS a IBSS........................................................................................................................... 34 Rozdział 2. Bluetooth i urządzenia przenośne...................................................i......................... 37 13. Zdalne sterowanie systemem OS X z telefonu Sony Ericsson .................................. 37 14. Wpisywanie wiadomości SMS na klawiaturze komputera....................................... 40 15. Automatyczne tworzenie blogów fotograficznych za pomocą telefonu Nokia 3650 ..................................................................................... 42 16. Bluetooth w systemie Linux............................................................................................ 45 17. Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth.................................. 48 18. Przesyłanie plików połączeniami Bluetooth w Linuksie ........................................... 52 19. Sterowanie programem XMMS poprzez Bluetooth.................................................... 57 Spis treści | 3 Rozdział 3. Monitorowanie sieci.....................i...................................................i........................... 59 20. Wykrywanie pobliskich sieci bezprzewodowych....................................................... 59 21. Wykrywanie sieci za pomocą programu NetStumbler .............................................. 65 22. Wykrywanie sieci w systemie MacOS X....................................................................... 69 23. Wykrywanie sieci bezprzewodowych za pomocą kieszonkowych komputerów PC............................................................... 71 24. Pasywne skanowanie sieci za pomocą programu KisMAC ...................................... 74 25. Ustanawianie połączenia................................................................................................. 77 26. Odpytywanie klientów bezprzewodowych za pomocą polecenia ping ................. 82 27. Odkrywanie producentów urządzeń radiowych na podstawie adresów MAC.... 84 28. Ogłaszanie usług za pomocą Rendezvous w systemie Linux................................... 85 29. Ogłaszanie dowolnych usług Rendezvous w systemie OS X ................................... 88 30. Przekierowanie reklam za pomocą Rendezvous......................................................... 90 31. Wykrywanie sieci bezprzewodowych za pomocą programu Kismet ..................... 91 32. Uruchomienie programu Kismet w systemie MacOS X ............................................ 95 33. Monitorowanie łącza w Linuksie za pomocą programu Wavemon .......................... 97 34. Monitorowanie stanu łącza w dłuższym okresie........................................................ 98 35. Programy EtherPEG i DriftNet..................................................................................... 103 36. Oszacowanie wydajności sieci...................................................................................... 105 37. Obserwowanie ruchu za pomocą programu tcpdump............................................ 106 38. Graficzna analiza ruchu za pomocą programu Ethereal ......................................... 109 39. Śledzenie ramek 802.11 za pomocą programu Ethereal........................................... 111 40. Skanowanie sieci za pomocą programu nmap .......................................................... 114 41. Monitorowanie sieci za pomocą programu ngrep.................................................... 116 42. Uzyskiwanie na bieżąco statystyk pracy sieci za pomocą programu ntop .......... 118 Rozdział 4. Porady dotyczące urządzeń...................................................i................................. 121 43. Zewnętrzne anteny dla laptopów................................................................................ 121 44. Rozszerzenie zasięgu komputera PowerBook Titanium ......................................... 123 45. Modernizacja mostu WET11......................................................................................... 124 46. Linux w punkcie dostępu AirPort ............................................................................... 126 47. Java Configurator dla punktów dostępu AirPort ..................................................... 129 48. Programowa stacja bazowa firmy Apple ................................................................... 135 49. Dodanie anteny zewnętrznej do punkt dostępu AirPort......................................... 137 50. Nocna lampka NoCat..................................................................................................... 139 51. Sprzętowy punkt dostępu wykonany samodzielnie ................................................ 142 52. Pamięć Compact Flash zamiast dysku twardego...................................................... 145 53. Pebble................................................................................................................................ 147 54. Tunelowanie — enkapsulacja IPIP .............................................................................. 148 55. Tunelowanie — enkapsulacja GRE.............................................................................. 150 4 | Spis treści 56. Obsługa własnej domeny najwyższego poziomu ..................................................... 151 57. Sterownik Host AP......................................................................................................... 153 58. Sterownik Host AP jako most warstwy 2................................................................... 156 59. Most z zaporą ogniową ................................................................................................. 158 60. Filtrowanie adresów MAC przez sterownik Host AP.............................................. 159 61. Sterownik Hermes AP ................................................................................................... 161 62. Przewodnik po kablach mikrofalowych..................................................................... 162 63. Przewodnik po złączach kabli mikrofalowych.......................................................... 163 64. Przewodnik po antenach............................................................................................... 167 65. Porównanie parametrów radiowych różnych urządzeń ......................................... 172 66. Pigtajle .............................................................................................................................. 174 67. Dostawcy osprzętu do budowy sieci 802.11 .............................................................. 175 68. Domowej roboty zasilanie przez kabel Ethernet....................................................... 176 69. Tanie i funkcjonalne podstawy pod anteny............................................................... 179 Rozdział 5. Budowa własnych anten ...................................................i...................................... 183 70. Paraboliczny reflektor cylindryczny o głębokiej czaszy .......................................... 184 71. Dookólny „pająk” ........................................................................................................... 187 72. Falowód z puszki Pringles ............................................................................................ 189 73. Falowód z puszki Pirouette .......................................................................................... 194 74. Czasza anteny Primestar z falowodem....................................................................... 195 75. Promiennik BiQuad dla czaszy Primestar.................................................................. 197 76. Antena dookólna z odcinków kabla............................................................................ 200 77. Falowody szczelinowe................................................................................................... 205 78. Regenerator pasywny .................................................................................................... 211 79. Określenie zysku anteny ............................................................................................... 213 Rozdział 6. Łącza na duże odległości...................................................i..................................... 217 80. Zapewnienie linii widoczności..................................................................................... 217 81. Obliczanie budżetu łącza............................................................................................... 219 82. Zestrajanie anten przy dużych odległościach............................................................ 222 83. Zmniejszanie prędkości pracy łącza............................................................................ 223 84. Wykorzystanie polaryzacji anten................................................................................. 224 85. Wykorzystanie programu NoCat Maps do gromadzenia informacji o terenie ... 225 Rozdział 7. Bezpieczeństwo sieci bezprzewodowych..................................................i............ 229 86. Wykorzystanie możliwości protokołu WEP .............................................................. 229 87. Rozwiany mit bezpieczeństwa sieci bezprzewodowych ......................................... 232 88. Łamanie klucza WEP za pomocą programu AirSnort — prostszy sposób .......... 237 89. Portal przechwytujący NoCatAuth ............................................................................. 238 Spis treści | 5 90. Portale NoCatSplash oraz Cheshire ............................................................................ 242 91. Proxy Squid w połączeniu SSH.................................................................................... 243 92. Proxy SSH SOCKS 4....................................................................................................... 245 93. Przekazywanie portów połączeniami SSH................................................................. 248 94. Szybkie logowanie za pomocą kluczy klienta SSH................................................... 250 95. Jeszcze szybsze logowanie SSH.................................................................................... 252 96. OpenSSH w Windows pod nakładką Cygwin .......................................................... 253 97. Korzystanie z tuneli w systemie OS X ........................................................................ 258 98. Użycie vtun w połączeniu SSH .................................................................................... 260 99. Generator plików vtund.conf ....................................................................................... 265 100. Śledzenie użytkowników bezprzewodowych za pomocą polecenia arpwatch... 269 Dodatek A Szablon parabolicznego reflektora cylindrycznego o głębokiej czaszy .............. 273 Skorowidz ...................................................i...................................................i.............................. 275 6 | Spis treści 13. R O Z D Z I A Ł D R U G I Bluetooth i urządzenia przenośne Sposoby 13. – 19. W przemyśle telekomunikacyjnym mówi się wiele o zapewnianiu łączności „na ostatnim kilometrze”. Technologię Bluetooth należy traktować jako metodę zapewniającą łączność „na ostatnich metrach”. Jawi się ona jako łatwy sposób wyeliminowania nieporęcznych kabli takich urządzeń, jak słuchawki, urządzenia sterujące, asystenty osobiste (PDA) i inne małe przyrządy. Celem technologii Bluetooth jest wyeliminowanie potrzeby noszenia wszędzie ze sobą metrowej długości kabli (oczywiście każdego z inną końcówką), służą- cych do podłączenia danego urządzenia do laptopa. Urządzenia wykorzystujące tech- nologię Bluetooth mogą komunikować się z laptopami lub z komputerami biurkowymi lub nawet komunikować się między sobą, wymieniając z łatwością informacje. Na rynku dostępne są już wykorzystujące technologię Bluetooth urządzenia wejściowe, takie jak myszy czy klawiatury. Mimo że Bluetooth powoduje zwiększenie uzależnienia od baterii, to jednak jest na najlepszej drodze do „wycięcia w pień” wszystkich kabli wychodzących z komputera. W tym rozdziale pokazane zostaną niektóre świetne pomysły zastosowania technologii Bluetooth. W rozdziale przedstawionych zostanie także kilka sposobów wykorzystania sieci komór- kowych [Sposób 8.]. Sieci te stają się szczególnie przydatne tam, gdzie sieci Wi-Fi lub inne środki łączności są niedostępne. Urządzenia wyposażone w Bluetooth, telefon komórkowy, pamięć, możliwości odtwarzania dźwięków, a nawet w aparat fotograficzny od jakiegoś czasu pojawiają się na rynku. Urządzenia te rozpoczynają proces nieuchronnej konwergencji produktów konsumenckich z komputerami i Internetem, udostępniając przeciętnemu użyt- kownikowi bezprecedensowe dotychczas możliwości komunikowania się. Dalej przed- stawione zostaną rozwiązania, które rozwijają koncelpcję hiperłączności jeszcze bardziej. S P O S Ó B 13. Zdalne sterowanie systemem OS X z telefonu Sony Ericsson Telefon komórkowy można wykorzystać do sterowania pórezentacjami lub programem iTunes albo do wykonywania innych operacji, które da się zóapisać w języku AppleScript. Program Salling Clicker jest jednym z najlepszych programów wykorzystujących tech- nologię Bluetooth. Zamienia on telefon Sony Ericsson wl kolorowy, programowalny „pilot” Bluetooth i urządzenia przenośne | 37 SPOSÓB 13. Zdalne sterowanie systemem OS X z telefonu Sony Ericssoón do systemu OS X. Można za jego pomocą uruchamiać programy, sterować prezentacjami, a nawet używać go jako myszy. Program ten działa na wielu telefonach Sony Ericsson, takich jak T39m, R520m, T68, T68i oraz T610. Można go pobrać z serwisu VersionTracker lub bezpośrednio ze strony http://homepage.mac.com/jonassalling/Shareware/Clicgker/. Program instaluje się jako nowy panel sterujący i jest automatycznie uruchamiany. Należy kliknąć małą ikonę telefonu znajdującą się na pasku menu (rysunek 2.1), wybrać Open Salling Clicker Preferences…, a następnie kliknąć Select Device. Wcześniej należy w systemie OS X uaktywnić Bluetooth i położyć telefon w pobliżu kompultera. Rysunek 2.1. Ikony paska menu programu Clicker Z listy dostępnych telefonów należy wybrać używany aparat i następnie zapisać zmiany. Od tej pory za pomocą telefonu można sterować systemem OS X oraz tworzyć swoje menu i przesyłać je do telefonu. Na zakładce Phone Menu można tworzyć własne menu zawierające dowolne polecenia, a następnie przesyłać je do telefonu. Systemem OS X ste- ruje się, nawigując w telefonie pośród przygotowanych menu i wybierając czynności do wykonania, takie jak na przykład uruchomienie aplikacji czy wybór następnej ścieżki odtwarzanej przez program iTunes. Niektóre telefony (na przykład T68 i T68i) umożliwiają zamianę aparatu telefonicznego w mysz i sterowanie dowolnymi aplikacjami. Wystarczy wybrać System → Mouse mode, a niewielki manipulator telefonu będzie służył do przemiesz- czania wskaźnika myszy. Ponieważ zasięg urządzeń Bluetooth wynosi nie więcej niż 10 metrów, możliwe jest wska- zanie programowi Clicker akcji, którą ma podjąć, gdy telefon opuści zasięg Bluetooth oraz akcji, którą ma wykonać, gdy telefon powróci w obszar zasięgu. Funkcję tę można kontrolować na zakładce Proximity Sensor (rysunek 2.2). Można na przykład zdecydować, że w razie odsunięcia telefonu od komputera program Clicker zatrzyma odtwarzanie muzyki w programie iTunes i włączy wygaszacz ekranu. Obsługa tej funkcji jest bardzo prosta — wystarczy przeciągnąć akcję, która ma zostać wykonana do odpowiedniego pola i już można odejść. Gdy akcje dostępne dla funkcji Proximity Sensor są niewystarczające, można zawsze utwo- rzyć swoje własne. Akcje są skryptami napisanymi w języku AppleScript, więc wszystko, co da się zapisać za pomocą tego języka, może być uruchamiane za pomocą telefonu. W panelu sterowania programu Clicker na zakładce Action Editor (rysunek 2.3) można poddawać istniejące akcje edycji lub tworzyć swoje właslne akcje. Program Clicker posiada wygodną funkcję zdalnego sterowania pokazem slajdów progra- mów PowerPoint lub Keynote, ale ponieważ może on symulować naciśnięcie dowolnego przycisku, można go stosować w praktycznie wszystkich programach. Szczególnie przydaje 38 | Bluetooth i urządzenia przenośne Zdalne sterowanie systemem OS X z telefonu Sony Ericssoón SPOSÓB 13. Rysunek 2.2. Funkcji Proximity Sensor można przypis.ać dowolną akcję Rysunek 2.3. Jeżeli wbudowane akcje są niewystarczające, m.ożna napisać swoje własne się to przy prowadzeniu prezentacji, gdyż praktycznie zawsze ma się wtedy telefon ze sobą (i najprawdopodobniej jest on naładowany). Sam kupiłem kiedyś specjalnie do tego celu podłączany do portu USB pilot na podczerwień, ale w wielu sytuacjach, w których go potrzebowałem, nie miałem go akurat przy sobie, a nawet gdy go miałem, to nie było żadnej gwarancji, że jego baterie były naładowane, gdyż nie używałem go zbyt często. Bluetooth i urządzenia przenośne | 39 SPOSÓB 14. Wpisywanie wiadomości SMS na klawiaturze komputera Natomiast telefon komórkowy jest zawsze ze mną i jest praktycznie zawsze naładowany. Według mnie każdy program, który wykorzystuje moje przyzwyczajenia i lenistwo jest wart, aby za niego zapłacić. Większość ludzi uważa, że technologia Bluetooth służy jedynie do przesyłania danych albo głosu. Program Clicker jest aplikacją, która technologię Bluetooth wykorzystuje do czegoś więcej niż tylko do wyeliminowania kabli. Posiadacze telefonu Sony Ericsson używający systemu OS X mogą odkryć jeszcze wiele innych zastosowań tego programu. Jest on bardzo łatwy w użytkowaniu i może wykonać wszystko to, co można zapisać w pos- taci skryptu. Clicker jest aplikacją, która aż prosi się, żeby jej używać. S P O S Ó B 14. Wpisywanie wiadomości SMS na klawiaturze komputera Pora przestać marnować czas i zacząć pisać wiadomośció SMS w laptopie. Wiadomości SMS (ang. Short Message Service), inaczej krótkie wiadomości tekstowe, stały się niezwykle popularne w wielu częściach świata (szczególnie w Japonii, na Filipinach i w większości krajów Europy), ale w Stanach Zjednoczonych z jakichś powodów zos- tały przyjęte mniej niż entuzjastycznie. W przypadku wielu osób jednym z powodów tej niechęci może być żmudny sposób wpisywania tekstu na klawiaturze telefonu. Presja na produkowanie coraz to mniejszych telefonów pozbawiła nas praktycznie nadziei na zasto- sowanie wygodnych, zintegrowanych z telefonem klawiatur. I chociaż technologie uzu- pełniające wpisywany tekst, takie jak T9, powodują, że w rezultacie wpisuje się mniejszą liczbę znaków, to interfejs telefonu nadal pozostaje mało intuicyjny. Wiele osób, próbując wyrazić swoje myśli, obsesyjnie naciska przyciski numeryczne, popełniając przy tym wiele błędów w pisowni. Natomiast wpisywanie znaków interpunkcyjnych jest tak niewy- godne, że wiele osób nie zawraca sobie nimi głowy. Istnieje jednak nadzieja dla posiadaczy telefonów wyposażonych w Bluetooth. System OS X bardzo dobrze integruje się z tymi urządzeniami oraz umożliwia obsługę wiadomości SMS. Najpierw trzeba się upewnić, że Bluetooth jest uaktywniony i laptop jest skonfigu- rowany do użycia odpowiedniego telefonu. Po uruchomieniu programu Address Book, gdy Bluetooth jest aktywny, w lewym górnym narożniku okna pojawia się ikona Bluetooth (rysunek 2.4). Po jej kliknięciu następuje integracja Bluetooth z programem Address Book. Rysunek 2.4. Kliknięcie przycisku Bluetooth w programie Address Book powoduje integrację książki adresowej z Bluetooth 40 | Bluetooth i urządzenia przenośne Wpisywanie wiadomości SMS na klawiaturze komputera SPOSÓB 14. Włączenie Bluetooth uaktywnia wiele przydatnych funkcji książki adresowej. Poza moż- liwością wybierania numerów telefonów bezpośrednio z książki adresowej uzyskuje się też możliwość wysyłania za jej pomocą wiadomości SMS. W tym celu należy kliknąć etykietkę znajdującą się z lewej strony numeru telefonu, do którego ma zostać wysłana wiadomość (rysunek 2.5), a następnie wybrać SMS Message. Pojawi się niewielkie okno tekstowe, w którym należy wpisać treść wiadomości SMS. Wreszcie można pisać wia- domości SMS na normalnej klawiaturze! Rysunek 2.5. Kliknięcie numeru telefonu w książce adreso.wej umożliwia wybranie numeru telefonu lub napisanie wiadomości SMS na klawiaturze komputera, a. następnie jej wysłanie Program Address Book najlepiej implementuje także funkcję identyfikacji dzwoniącego. Gdy telefon dzwoni, program Address Book otwiera okno zawierające dane oraz numer telefonu osoby dzwoniącej (rysunek 2.6). Można w nim wybrać, czy chce się odebrać te- lefon, odesłać dzwoniącego do poczty głosowej lub wysłać lmu wiadomość SMS. Rysunek 2.6. Dzwoniącą osobę można odesłać do poczty głoso.wej lub wysłać jej wiadomość SMS Naciśnięcie przycisku SMS Reply odsyła dzwoniącego do poczty głosowej, ale jednocześnie otwiera okno, w którym można napisać do niego wiadomość SMS. Przez cały czas, gdy uruchomiony jest program Address Book, nadchodzące wiadomości SMS są przez prog- ram automatycznie pokazywane i można na nie odpowiadać bezpośrednio z programu. Chociaż układ taki nie jest tak przenośny, jak sam telefon, użycie zwykłej klawiatury do wpisywania wiadomości SMS umożliwia szybsze i lepsze wylrażanie swoich myśli. Przy okazji warto podkreślić, że wiadomości SMS przydają się szczególnie w miejscach, gdzie pokrycie siecią komórkową jest na tyle słabe, że uniemożliwia jednej lub obu stro- nom na prowadzenie rozmowy. W miejscach, w których połączenia głosowe są często Bluetooth i urządzenia przenośne | 41 SPOSÓB 15. Automatyczne tworzenie blogów fotograficznych za poómocą telefonu Nokia 3650 przerywane lub nawet są niemożliwe, próby wysłania wiadomości SMS będą podejmo- wane aż do skutku. Wiadomości SMS idealnie nadają się do wysłania krótkiej informacji komuś, z kimś nie można się połączyć w inny sposób. Wykorzystujący niewielką część pasma komunikat, który w jakikolwiek sposób może zostać przekazany, może być nie- skończenie bardziej przydatny niż potrzebująca większej części pasma wiadomość gło- sowa, która nie może trafić do odbiorcy. W wielu sytuacjach wiadomości SMS, pomimo swoich ograniczeń, mogą być znakomitym sposobem komunilkacji. S P O S Ó B 15. Automatyczne tworzenie blogów fotograficznych za pomocą telefonu Nokia 3650 Wykonywane zdjęcia można od razu publikować, bez poótrzeby logowania się. Cyfrowe fotografowanie ma swoje wady i zalety. Przyjemność obejrzenia zdjęcia od razu po jego zrobieniu w wielu przypadkach zależy od dwóch drobnostek — od tego, czy ma się aparat ze sobą i czy jego baterie są naładowane. Mój aparat jest stanowczo zbyt duży i zbyt delikatny, by nosić go stale ze sobą, a na dodatek nie cierpię mieć jeszcze jednego urządzenia, na które muszę zwracać uwagę i które muszę ładować w nocy. Z tych po- wodów większość moich zdjęć to zdjęcia okolicznościowe, a tylko na niewielu z nich znajdują się niezaimprowizowane scenki „z życia”. Zbyt często zdarza się, że zanim przygotuję aparat, zdarzenie, które chciałem utrwalić l— mija. Kilku producentów doszło do wniosku, że istnieje takie urządzenie, które ludzie zwykle zawsze noszą ze sobą i prawie zawsze ma ono naładowaną baterię — jest nim telefon komórkowy. Firma Nokia poradziła sobie z umieszczeniem w jednym telefonie Nokia 3650 wielu znakomitych technologii — Bluetooth, GPRS, GSM oraz oczywiście aparatu cyf- rowego. Daje to wiele różnego rodzaju możliwości. Za pomocą interfejsu Bluetooth zdjęcia można łatwo przesłać do laptopa, a ich wysłanie w postaci wiadomości e-mail jest rów- nież nadzwyczaj proste. Jakby mało jeszcze było spamu wysyłanego do komunikatorów, ludzie pracują teraz nad sposobem rozsyłania spamu zawierającego filmy wideo. Zamiast rozsyłać zdjęcia znajomym i rodzinie, znacznie lepiej jest opublikować je w in- ternecie w postaci albumu, a następnie wysłać odbiorcolm jedynie łącze do tego albumu. Kod programu Pierwszą czynnością, jaką należy wykonać, jest przygotowanie skryptu, który będzie odbierał wiadomości e-mail. Łatwo to zrobić za pomocą programu procmail. Poniższe wiersze należy dodać do pliku .procmailrc serwera pocztowego: :0 * ^TO incub@helion.pl | /home/username/bin/phonecam.sh Oczywiście adres incub@helion.pl należy zamienić na adres email, który będzie wykorzy- stywany przez serwer obsługujący fotografie. Należy też zmienić ścieżkę na rzeczywistą, prowadzącą do miejsca, w którym został zapisany skrypt. Adres e-mail musi pozostać 42 | Bluetooth i urządzenia przenośne Automatyczne tworzenie blogów fotograficznych za poómocą telefonu Nokia 3650 SPOSÓB 15. poufny, ponieważ każde zdjęcie wysłane pod ten adres zostanie automatycznie opubli- kowane! Jeżeli serwer pocztowy nie używa programu procmail, należy zwrócić się o pomoc do zaprzyjaźnionego administratora sieci. Następnie poniższy kod należy zapisać1 w pliku o nazwie phonecam.sh, umieszczonym w katalogu wymienionym w pliku .procmailrc. Cały skrypt można pobrać ze strony http:// freenetworks.org/~mattw/badsoftware/phonecam/ (niżej zamieszczono jego nieco skróconą wer- sję). Zmienne występujące na początku skryptu należy dostosować do używanego systemu operacyjnego. #!/bin/sh #phonecam.sh filepath= /home/incub/public_html/phonecam imgdir= img html= html time=`date + s` baseref= http://helion.pl/~incub/phonecam title= Phonecam wersja 3 arcdate=`date + D |sed s///./g ` perpage= 16 umask 062 if [ ! -f $filepath/count ]; then echo 0 $filepath/count fi if [ ! -f $filepath/arc.txt ]; then touch $filepath/arc.txt fi if [ ! -d $filepath/archive ]; then mkdir $filepath/archive fi if [ ! -d $filepath/$html ]; then mkdir $filepath/$html fi if [ ! -d $filepath/$imgdir ]; then mkdir $filepath/$imgdir fi count=`head -1 $filepath/count` mkdir ~/.$$ cd ~/.$$ munpack for i in *.jpg; do a=`basename $i .jpg` mv $i $filepath/$imgdir/$time.jpg convert -resize 320x240 $filepath/$imgdir/$time.jpg $filepath/$imgdir/$time.thuhmb.jpg convert -resize 150x90 $filepath/$imgdir/$time.jpg $filepathh/latest.jpg 1 Dla wygody Czytelników kody źródłowe wszystkich proCgramów znajdujących się w tej książce zostały umieszczone w pliku ftp://ftp.helion.pl/przyklady/100sie.zip — przyp. tłum. Bluetooth i urządzenia przenośne | 43 SPOSÓB 15. Automatyczne tworzenie blogów fotograficznych za poómocą telefonu Nokia 3650 # tworzenie nowej strony cat $filepath/new.txt $filepath/new.tmp echo a href= $baseref/$html/$time.html img src= $baseref/$imgdir/$time.thumb.jpg width= 320 height= 240 border=0 /a $filepath/new.txt cat $filepath/new.tmp $filepath/new.txt rm $filepath/new.tmp # tworzenie stron poszczególnych zdjęć echo html head title $title /title /head body bgcolor=000000 center img src= $baseref/$imgdir/$time.jpg border=1 /cehnter p $filepath/$html/$time.html cat $a.desc $filepath/$html/$time.html echo /body /html $filepath/$html/$time.html count=`expr $count + 1` done echo $count $filepath/count if [ $count = 1 ]; then echo W kolejce znajduje się jedno zdjęcie $filepath/nothify else echo W kolejce znajduje się $count zdjęć $filepath/notifhy fi if [ $count = $perpage ]; then echo html head title $title /title /head body bgcolor=0h00000 center $filepath/archive/$time.html cat $filepath/index.txt $filepath/archive/$time.htmlh cp $filepath/new.txt $filepath/index.txt rm $filepath/count rm $filepath/new.txt cat $filepath/arc.txt $filepath/arc.tmp echo li a href= $baseref/archive/$time.html $arcdathe /a /li $filepath/arcn.txt cat $filepath/arc.tmp $filepath/arcn.txt rm $filepath/arc.tmp mv $filepath/arcn.txt $filepath/arc.txt echo W kolejce nie ma żadnych zdjęć $filepath/notify fi rm -rf ~/.$$ Poza tym skryptem potrzebne będą jeszcze programy munpack (dekodujący zawartość MIME załączników) oraz convert (należący do pakietu Image Magick). Narzędzia te znaj- dują się we wszystkich standardowych dystrybucjach Linulks. Na koniec należy przygotować plik index.shtml i umieścić go w katalogu głównym do- kumentów serwera WWW. Plik ten powinien zawierać wielrsz: !--#include virtual= index.txt -- 44 | Bluetooth i urządzenia przenośne Bluetooth w systemie Linux SPOSÓB 16. Bardziej zaawansowany przykład pliku index.shtml znajduje się na stronie: http://freenetworks. org/~mattw/badsoftware/phonecam/index.shtml.txt Uruchomienie programu Jeśli mamy już wszystko przygotowane, wystarczy wysłać zdjęcie jako wiadomość e-mail pod skonfigurowany adres. Skrypt automatycznie zdekoduje wiadomość e-mail, utworzy miniaturkę zdjęcia i umieści zdjęcie w kolejce. Gdy w kolejce znajdzie się określona przez parametr perpage liczba zdjęć, utworzona zostanie z nich nowa, pełna strona, a poprzednia zostanie przeniesiona do archiwum. Najnowsze zdjęcie zawsze znajduje się pod adresem http://server/~incub/phonecam/latest.jpg, a zdjęcia oczekujące w kolejce znajdują się pod ad- resem http://server/~incub/phonecam/new.txt. Skrypt zarządza kolejką i archiwami bez po- trzeby interwencji użytkownika, a nawet może umieszczać opisy publikowanych zdjęć. W tym celu wystarczy umieścić opis zdjęcia w treści lwiadomości e-mail. Skrypt ten najprawdopodobniej można jeszcze uprościć lub rozwinąć, ale w tej prostej postaci może działać praktycznie na każdym serwerze. Tworzy prosty, ale efektywny interfejs WWW, który łatwo można zintegrować z blogiem lub inną istniejącą stroną WWW. A poza tym radość, jaką dają zdjęcia cyfrowe, dotyczy teraz także możliwości ich na- tychmiastowej publikacji. Inne źródła informacji • Projekt phonecam Matta Westervelta (http://freenetworks.org/~mattw/badsoftware/phonecam/). • Image Magick (http://www.imagemagick.org/). S P O S Ó B 16. Bluetooth w systemie Linux W Linuksie 2.4 można szybko uruchomić obsługę Bluetooth. Jak się tego można spodziewać, uruchomienie obsługi interfejsu Bluetooth w Linuksie wymaga trochę więcej pracy niż w innych systemach operacyjnych. Najpierw wypada zauważyć, że obecnie istnieją trzy różne stosy protokołu Bluetooth przeznaczone dla Linuksa — Affix, OpenBT oraz BlueZ. Każdy z nich w inny sposób obsługuje różne adap- tery Bluetooth i każdy dysponuje innymi środkami konfiguracyjnymi. „Oficjalnym” stosem protokołu Bluetooth w Linuksie został wybrany BlueZ i to on zostanie dalej omówiony. Najpierw należy sprawdzić, czy posiadany adapter Bluetooth jest obsługiwany przez BlueZ. Dość aktualną listę obsługiwanych urządzeń można znaleźć pod adresem http://www.holt- mann.org/linux/bluetooth/devices.html. Następnie należy sprawdzić, czy w jądrze systemu jest uruchomiona obsługa Bluetooth. Jądra dostarczane w dystrybucjach Red Hat 9.0 oraz Debian „Sarge” zawierają już ob- sługę Bluetooth. Żeby sprawdzić, czy jądro obsługuje Bluetooth, należy jako użytkownik root wydać polecenia modprobe rfcomm. Jeżeli uruchomienie programu modprobe nie powiedzie się, należy przebudować jądro. Bluetooth i urządzenia przenośne | 45 SPOSÓB 16. Bluetooth w systemie Linux W przypadku niepomyślnego uruchomienia programu modprobe należy zbudować i zain- stalować czystą kopię jądra Linuksa w wersji 2.4.21 lub nowszej (lub wersję 2.4.20 z łatką −mh6). Konfigurując jądro, należy zaznaczyć, żeby wszystkie opcje pozycji „Bluetooth support” zostały zbudowane jako oddzielne moduły, przy czym opcja „USB Bluetooth support” w „USB support” powinna być wyłączona, gdyż w przeciwnym razie do ob- sługi UART zastosowany zostanie stos protokołu OpenBT, który będzie przeszkadzać w działaniu stosu BlueZ. Nowsze wersje jądra po wybraniu BlueZ automatycznie wyłą- czają tę ostatnią opcję. Trzeba poczynić jeszcze jedną uwagę. Jeżeli używamy nowszych laptopów firm Toshiba lub Sony i chcemy wykorzystać wbudowany adapter Bluetootlh, należy uaktywnić w sekcji „Processor type and features” oraz „Character devices” opcje jądra właściwe dla pro- duktów tych firm. Do włączenia obsługi Bluetooth w tych komputerach potrzebne będą też specjalne narzędzia użytkownika. Omówienie tych narzędzi wykracza poza zakres tej książki, a więcej informacji na ich temat można znaleźć na liście urządzeń obsługiwa- nych przez BlueZ, o której wspomniano wcześniej w tyml podrozdziale. Następnie do pliku /etc/modules.conf należy dodać następujące wiersze: alias net-pf-31 bluez alias bt-proto-0 l2cap alias bt-proto-2 sco alias bt-proto-3 rfcomm alias bt-proto-4 bnep alias tty-ldisc-15 hci_uart alias bluetooth off Teraz jako użytkownik root należy wykonać polecenie /sbin/depmod -a. Opcje te informują jądro, które moduły mają zostać załaldowane, gdy żądana jest obsługa Bluetooth. Ostatnia opcja — alias bluetooth off — informuje program modprobe, by ten nie ładował modułu OpenBT UART, gdyby moduł ten został zainstalowany przez przypadek. Teraz potrzebne są narzędzia użytkownika BlueZ. W systemie Red Hat 9.0 wszystkie te narzędzia są już zainstalowane. Ich kod źródłowy, a także moduły RPM i pakiety .deb można pobrać ze strony głównej projektu BlueZ pod adresem http://bluez.sourceforge.net. Należy zbudować i (albo) zainstalować pakiety bluez-libs, bluez-utils, bluez-sdp oraz bluez-hcidump. W systemie Debian wystarczy po prostu uruchomić narzędzie apt-get; w tym systemie biblioteka „bluez-libs” nazywa się „libbluetooth1”, a „libsdp2” umiesz- czona jest w oddzielnym pakiecie. Teraz kilka słów o konfiguracji urządzeń opartych na układzie UART (czyli nie używa- jących USB). W przypadku użycia adaptera Bluetooth USB można ten akapit opuścić. Urządzenia typu szeregowego, do których należą konwertery szeregowe i karty PCMCIA, muszą zostać jawnie „dołączone” do interfejsu kontrolera Bluetooth za pomocą programu hciattach. Po podłączeniu urządzenia odpowiedni sterownik jądra może załadować się automatycznie, czemu towarzyszyć będzie odpowiedni zapis w dzienniku /var/log/ messages. Do urządzeń opartych na układzie UART istnieją odniesienia w postaci /dev/ttySn, gdzie n oznacza jakąś liczbę całkowitą. Urządzenie dołącza się do kontrolera Bluetooth, 46 | Bluetooth i urządzenia przenośne Bluetooth w systemie Linux SPOSÓB 16. wydając polecenie /sbin/hciattach /dev/ttySn. Tak, jak w przypadku dobrych na- rzędzi uniksowych, jeżeli nie pojawi się żaden komunikat, to oznacza to, że program hciattach zadziałał prawidłowo. W przeciwnym razie należy sprawdzić, czy użyte zostało odpowiednie urządzenie oraz odwołać się do dokumlentacji man. Po prawidłowym uruchomieniu programu hciattach w pliku /etc/bluetooth/uart należy umieścić odwołanie do urządzenia — po to, by urządzenie zostało dołączone do kon- trolera Bluetooth w czasie uruchamiania systemu. Jeżeli plik ten nie istnieje, należy go utworzyć. W pliku należy umieścić pojedynczy wiersz „/dev/ttySn any” i zastąpić „n” odpowiednim numerem urządzenia szeregowego. Jeżeli używamy adaptera USB, oczy- wiście nie trzeba wykonywać tej czynności. Teraz, kiedy wszystko jest już zainstalowane, należy podłączyć adapter Bluetooth i jako użytkownik root wydać polecenie etc/rc.d/init.d/bluetooth start. W systemie Debian należy wydać polecenie /etc/init.d/bluez-utils start; /etc/init.d/ bluez-sdp start. W pliku dziennika /var/log/messages powinny pojawić się odpo- wiednie komunikaty stanu. Jeżeli instalacja BlueZ nie zawierała skryptu /etc/rc.d/init.d/ bluetooth, odpowiednią jego wersję można przekopiować z podkatalogu scripts/ pakietu bluez-utils. Zakładając, że wszystko działa poprawnie, za pomocą polecenia chkconfig lub za pomocą dowiązania ręcznego można dodać skrypt Bluetooth do odpowiedniego katalogu rc.d domyślnego poziomu startowego. Następnie należy uruchomić program hciconfig. Powinny się pojawić następujące in- formacje: hci0: Type: USB BD Address: 00:11:22:33:44:55 ACL MTU: 192:8 SCO MTU: 64:8 UP RUNNING PSCAN ISCAN RX bytes:99 acl:0 sco:0 events:13 errors:0 TX bytes:296 acl:0 sco:0 commands:12 errors:0 Jeżeli nic się takiego nie pojawiło, należy sprawdzić, czy uruchomiony jest program hcid i czy w dzienniku zdarzeń /var/log/messages nie ma żadnych komunikatów o błędach. Widoczny wyżej adres BD (BD Address) jest niepowtarzalnym identyfikatorem adaptera Bluetooth, podobnym do adresu MAC urządzeń Ethernet. Teraz w polu działania adaptera Bluetooth należy umieścić inne urządzenie Bluetooth i sprawdzić, czy jest ono wykrywane przy skanowaniu. Następnie należy wydać polece- nie hcitool scan. Skanowanie może zająć od 15 do 20 sekund, po których powinny pojawić się informacje typu: $ hcitool scan Scanning ... 00:99:88:77:66:55 Nokia3650 Teraz wydając polecenie sdptool browse 00:99:88:77:66:55, można przetestować urządzenie i sprawdzić, jakiego rodzaju usługi świadczy. Powinna pojawić się długa lista oferowanych usług, zawierająca informacje, które można wykorzystać przy konfiguracji dostępu do tych usług. — Schuyler Erle Bluetooth i urządzenia przenośne | 47 SPOSÓB 17. Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth S P O S Ó B 17. Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth Tam, gdzie nie ma sieci Wi-Fi, telefonu z Bluetooth moóżna użyć jako modemu. Bez wątpienia sama możliwość skanowania najbliższych urządzeń Bluetooth z komputera z systemem Linux szybko przestanie być atrakcyjna i przyjdzie pora na wykorzystanie no- wego połączenia Bluetooth do jakiegoś konkretnego celu. Czyż nie byłoby interesujące móc używać telefonu komórkowego jako modemu wszędzie tam, gldzie nie ma sieci Wi-Fi? Bluetooth obsługuje kilka „profili” definiujących sposób, w jaki urządzenia Bluetooth ko- munikują się ze sobą. W tym przypadku należy skorzystać z profilu połączeń komuto- wanych DUN (ang. Dial-up Networking), wykorzystującego protokół RFCOMM, emulujący łącze szeregowe pomiędzy dwoma urządzeniami. Za pomocą protokołu RFCOMM można połączyć komputer z telefonem, a następnie — uruchamiając program pppd — uzyskać dostęp do Internetu. Program ten działa na łączach GPRS, al nawet na zwyczajnych łączach komutowanych. Jeżeli obsługa Bluetooth jest już skonfigurowana [Sposób 16.], należy umieścić telefon w zasięgu komputera i rozpocząć jego skanowanie za pomocą programu hcitool. Załóżmy, że skanowanie się powiodło i że program hcitool poinformował, że adre- sem BD telefonu jest 00:11:22:33:44:55. To, czy w zasięgu znajduje się urządzenie obsługujące profil DUN, można sprawdzić też za pomocą polecenia sdptool: $ sdptool search DUN Inquiring ... Searching for DUN on 00:11:22:33:44:55 ... Service Name: Dial-up Networking Service RecHandle: 0x10001 Service Class ID List: Dialup Networking (0x1103) Generic Networking (0x1201) Protocol Descriptor List: L2CAP (0x0100) RFCOMM (0x0003) Channel: 1 Numer kanału należy zanotować — przyda się później. Jak widać, programy hcitool i sdptool oferują dużo przydatnych funkcji diagnostycznych Bluetooth, o których można się dowiedzieć z odpowiednich stron dokumentacji man. Jednak przed połączeniem się z telefonem należy pomiędzy Linuksem a telefonem skon- figurować tak zwane parowanie urządzeń (ang. device pairing), za sprawą którego telefon będzie „wiedział”, że ma umożliwić dostęp komputerowi do swoich usług i (być może) na odwrót. Kod PIN komputera znajduje się w pliku /etc/bluetooth/pin i powinno się go zmienić na inny — poufny. Większość telefonów ma PIN Bluetooth, który można skonfigurować w telefonie. W skład pakietu BlueZ wchodzi niewielki, napisany w języku Python program bluepin, który w razie potrzeby uruchamia okno dialogowe GTk+ i prosi o podanie numeru PIN. Ten 48 | Bluetooth i urządzenia przenośne Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth SPOSÓB 17. program najwyraźniej jednak nie działa we wszystkich dystrybucjach Linuksa. Co więcej, kto chciałby być za każdym razem proszony o kod PIN? Kody PIN różnych urządzeń Bluetooth można zapisać w poniższym skrypcie napisanym w języku Perl, który należy umieścić w pliku /etc/bluetooth/pindb: #!/usr/bin/perl while ( ) { print PIN:$1 if /^$ARGV[1]s+(w+)/o; } __DATA_ _ # Poniżej należy wpisać kody PIN Bluetooth w parach - adres_BD kohd_PIN # - oddzielone białym znakiem, po jednej parze w każdym wierszu. # # ## itd. 00:11:22:33:44:55 11111 Właścicielem pliku /etc/bluetooth/pindb powinien być użytkownik root, a do pliku należy nadać uprawnienia dostępu chmod 0700 — wszystko po to, by zwykli użytkownicy nie mogli podejrzeć kodów PIN urządzeń Bluetooth. Odpowiednia sekcja opcji pliku /etc/ bluetooth/hcid.conf powinna wyglądać tak, jak przedstawiono poniżej: options { autoinit yes; security auto; pairing multi; pin_helper /etc/bluetooth/pindb; } W ten sposób urządzenia HCI są konfigurowane w momencie uruchamiana się systemu operacyjnego. Możliwe jest parowanie urządzeń, a hcid będzie zgłaszał programowi pindb żądanie podania numeru PIN w przypadku każdego urządzenia. Po dokonaniu zmian w pliku /etc/bluetooth/hcid.conf należy ponownie uruchomić program hcid za pomocą po- lecenia /etc/rc.d/init.d/bluetooth restart. Teraz, kiedy komputer jest skonfigurowany do parowania, podobnie należy skonfigurować telefon. W tym celu należy zapoznać się z instrukcją obsługi telefonu. Proces konfiguracji telefonu często wymaga, by telefon mógł przeskanować adapter Bluetooth komputera, wobec czego komputer musi znaleźć się w zasięgu telefonu, a adapter Bluetooth musi być włączony. Jego interfejs otrzyma prawdopodobnie nazwę „BlueZ(0)” lub podobnie, chyba że w pliku hcid.conf zmieniono opcję „name”. Parowanie w telefonie należy skon- figurować jako „trusted” (zaufane) lub jego odpowiednik — po to, by za każdym razem, gdy wykonywane będzie połączenie z systemu Linux, użytkownik telefonu nie był pro- szony o jego zweryfikowanie. Teraz, kiedy w pobliżu znajduje się oferujące połączenie komutowane urządzenie, z któ- rym ustanowiono parowanie, następną czynnością jest powiązanie z tym urządzeniem interfejsu RFCOMM. Najpierw za pomocą polecenia ls -l /dev/rfcomm* należy sprawdzić, czy w katalogu /dev znajdują się pozycje RFCOMM. Jeżeli polecenie ls nie znajdzie poszukiwanych plików („No such file or directory”), należy utworzyć 64 pozycje urządzeń RFCOMM, przełączając się na konto superużytkownikla i wykonując polecenia: Bluetooth i urządzenia przenośne | 49 SPOSÓB 17. Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth # for n in `seq 0 63`; do mknod -m 660 /dev/rfcomm$n c 216 $n; done # chown root:uucp /dev/rfcomm* W przypadku systemu Debian za pomocą polecenia chown należy przypisać urządzenia RFCOMM do grupy dialout, a nie uucp. Teraz jako superużytkownik należy — za pomocą polecenia rfcomm pakietu bluez-utils — powiązać urządzenie /dev/rfcomm0 z telefonem na kanale, którego numer dla profilu DUN uzyskano wcześniej za pomocą programu sdptool: # rfcomm bind /dev/rfcomm0 00:11:22:33:44:55:66 1 Jeżeli powiązanie przebiegło pomyślnie, to — jak przystało na dobre polecenie uniksowe — program rfcomm nie odpowie żadnym komunikatem. Że faktycznie operacja została wykonana poprawnie, można dowiedzieć się, wydając polecelnie rfcomm bez argumentów: # rfcomm rfcomm0: 00:11:22:33:44:55 channel 1 clean Teraz to urządzenie szeregowe można traktować tak, jak zwykły modem. Żeby to udo- wodnić, można — jako użytkownik root — uruchomić program minicom i przełączyć urządzenie szeregowe na /dev/rfcomm0. Gdy program terminala uruchomi się, należy wpisać AT i nacisnąć Enter. Jeżeli telefon odpowie komunikatem OK, można sobie po- gratulować — ustanowiono połączenie z telefonem komórlkowym poprzez Bluetooth. Zanim wykonana zostanie następna czynność, w pliku /etc/bluetooth/rfcomm.conf należy wpisać poniższe wiersze, dzięki którym urządzenie RFCOMM będzie konfigurowane podczas uruchamiania Bluetooth,: rfcomm0 { # Automatycznie wiąże urządzenie w momencie uruchahmiania bind yes; device 00:11:22:33:44:55; channel 1; comment Moj telefon ; } Jeżeli używamy narzędzi bluez-utils 2.3 lub wcześniejszych w dystrybucjach innych niż oparte na systemie Debian, należy do sekcji start() pliku /etc/rc.d/init.d/bluetooth dodać wiersz zawierający polecenie rfcomm bind all. Do połączenia się z internetem pozostało już tylko wykonanie niewielkiego kroku. W pliku /etc/ppp/peers/gprs należy umieścić następujące wiersze: /dev/rfcomm0 connect /usr/sbin/chat -v -f /etc/ppp/peers/gprs.chath noauth defaultroute usepeerdns lcp-echo-interval 65535 debug 50 | Bluetooth i urządzenia przenośne Natomiast poniższe wiersze należy zapisać w pliku /etc/ppp/peers/gprs.chat: Korzystanie w Linuksie z połączeń GPRS poprzez Bluetooth SPOSÓB 17. TIMEOUT 15 ECHO ON HANGUP ON AT OK ATZ OK ATD*99# W przypadku korzystania z programu wvdial do pliku /etc/wvdial.conf należy dodać: [Dialer gprs] Modem = /dev/rfcomm0 Phone = *99# Username = foo Password = bar Europejscy dostawcy usług przeważnie nadają użytkownikowi jego nazwę oraz hasło; w Stanach Zjednoczonych programowi wvdial ciągle jeszcze podaje się wartości fikcyjne. Tego, co dokładnie należy wpisać, można dowiedzieć się na stronie WWW dostawcy usług. Połączenie GPRS jest uwierzytelnione przez samo działanie telefonu w sieci ko- mórkowej, więc do użycia protokołu PPP nie jest potrzebne dodatkowe uwierzytelnienie. Podany numer telefonu jest standardowym numerem dostępowym GPRS, który — gdy telefon jest skonfigurowany poprawnie — powinien zapewnić natychmiastowe połączenie. Jednak większość telefonów GSM obsługuje kilka punktów dostępowych GPRS, wobec czego w przypadku, gdy domyślne ustawienia telefonu nie są odpowiednie, należy w programie minicom wpisać polecenie AT+CGDCONT? i nacisnąć klawisz Enter. Telefon wyświetli listę dostępnych profili PDP (ang. Packet Data Protocol). Z listy tej należy wy- brać profil, który wydaje się najbardziej odpowiedni, a następnie zmienić numer telefonu GPRS w pliku /etc/wvdial.conf na *99***n#, zastępując n numerem profilu PDP, który ma zostać zastosowany. Gdyby i ten sposób zakończył się niepowodzeniem, należy zwrócić się o pomoc do dostawcy usług. Konfigurację tę można przetestować jako użytkownik root, wydając — w zależności od konfiguracji — polecenie pppd call gprs lub wvdial gprs i jednocześnie obserwując w drugim oknie dziennik zdarzeń /var/log/messages. Jedyną niedogodnością tej konfiguracji jest to, że w pliku /etc/resolv.conf nie są domyślnie umieszczane serwery nazw. Sposobem na to jest umieszczenie — w przypadku systemu Red Hat — w pliku /etc/sysconfig/network- -scripts/ifcfg-ppp0 (lub, gdy trzeba, ppp1, ppp2 i tak dalej) następujących wierszy: # Gdy używa się programu wvdial, należy za pomocą znaku komentarzha # wyłączyć zmienną CHATSCRIPT, natomiast włączyć zmienną WVDIALSECT. DEVICE=ppp0 MODEMPORT=/dev/rfcomm0 CHATSCRIPT=/etc/ppp/peers/gprs.chat # WVDIALSECT=gprs W ten sposób połączenie można włączać i wyłączać za pomocą poleceń ifup ppp0 i ifdown ppp0. Żeby to samo uzyskać w systemie Debian, należy zastosować pokazaną konfigurację demona pppd i do pliku /etc/network/interfaces dodać wiersze: iface ppp0 inet ppp provider gprs Bluetooth i urządzenia przenośne | 51 SPOSÓB 18. Przesyłanie plików połączeniami Bluetooth w Linuksie Żeby DNS działał prawidłowo w przypadku dystrybucji innych niż Red Hat i Debian, do pliku /etc/ppp/peers/gprs trzeba dodać poniższe wiersze; połączenie należy wówczas włączać i wyłączać za pomocą poleceń pppd call gprs i killall pppd: welcome cp -b /etc/ppp/resolv.conf /etc/resolv.conf disconnect mv /etc/resolv.conf~ /etc/resolv.conf W zasadzie to wszystko, co trzeba zrobić, by połączyć się z internetem z dowolnego miejsca, w którym dostępne są usługi GSM. Nie należy się spodziewać jakiś nadzwy- czajnych prędkości — obecnie prędkości w GPRS wahają się od 5 do 20 Kbps, w zależności od usługi, co według obecnych standardów nie jest dużą prędkością, ale i tak można ją uznać za dobrą tam, gdzie nie dysponuje się niczym innylm. Jako dodatek przedstawiony zostanie skrypt iptables, umożliwiający udostępnianie połącze- nia GPRS innym użytkownikom w zasięgu sieci Wi-Fi. Skrypt należy zapisać i uruchamiać z pliku /etc/ppp/ip-up.local: # Włączenie przekazywania IP oraz filtra rp_filter # (w celu uniemożliwiania podszywania się pod adres IP). echo 1 /proc/sys/net/ipv4/ip_forward echo 1 /proc/sys/net/ipv4/conf/all/rp_filter # Jeżeli trzeba, ładowane są odpowiednie moduły jądra. for i in ip_tables ipt_MASQUERADE iptable_nat ip_conntrack ip_conntrack_ftp ip_conntrack_irc ip_nat_irc ip_nat_ftp; do modprobe $i 2 /dev/null; done # Maskowanie wszystkiego, co przychodzi spoza interfejsu PPP # (np. ethernet, Wi-Fi itp.). iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE A co ze zwykłymi połączeniami komutowanymi? Z wysyłaniem faksów? Okazuje się, że wystarczy zamienić numer dostępowy GPRS na zwykły numer telefonu i (w większości telefonów) uzyska się z tym numerem połączenie o prędkości 9600 bodów. W tej sytuacji konfiguracja programów efax lub mgetty-sendfax do użycia połączenia Bluetooth do wy- syłania faksów z telefonu GSM zostanie pozostawiona jalko ćwiczenie dla Czytelnika. — Schuyler Erle S P O S Ó B 18. Przesyłanie plików połączeniami Bluetooth w Linuksie Komputer z systemem Linux i urządzenie Bluetooth mogą wóymieniać między sobą dane. Połączenie się z internetem [Sposób 17.] z dowolnego miejsca przez telefon komórkowy jest świetnym pomysłem, ale telefon najprawdopodobniej ma jeszcze inne funkcje. Może ktoś przesłał do telefonu zdjęcie z przyjęcia rodzinnego i teraz trzeba je przekopiować do laptopa lub trzeba zainstalować w nowym telefonie klilka programów. Podstawą mechanizmu przesyłania plików poprzez połączenia Bluetooth jest protokół OBEX (ang. Object Exchange), umożliwiający przesyłanie plików binarnych nie tylko przez połączenia Bluetooth, ale również przez połączenia wykorzystujące podczerwień, a nawet 52 | Bluetooth i urządzenia przenośne Przesyłanie plików połączeniami Bluetooth w Linuksie SPOSÓB 18. za pomocą tradycyjnego protokołu TCP/IP. Najbardziej rozpowszechnioną implementacją open source protokołu OBEX jest projekt OpenOBEX (http://openobex.sf.net/). Pakiety libo- penobex oraz openobex-apps można otrzymać z dystrybucją sid, a pakiety openobex dla systemu Red Hat można pobrać z serwera SourceForge lub poprzez rpmfind.net. Bluetooth obsługuje obecnie dwa różne profile przesyłania plików — OBEX Push, którego podsta- wowym zastosowaniem jest przesyłanie do urządzenia Bluetooth pojedynczych plików oraz OBEX File Transfer, oferujący bogatszy zestaw operacji wymiany plików. Niestety technologia przesyłania plików przez Bluetooth w systemie Linux podlega jeszcze nieustannym zmianom. Pakiet openobex-apps zawiera program obex_test, realizujący dość elementarny sposób wysyłania plików do urządzeń Bluetooth. Najpierw należy się do- wiedzieć, który numer kanału Bluetooth wykorzystuje do przesyłu OBEX File Transfer telefon lub inne urządzenie. W tym celu należy wpisać: # sdptool search FTRN Inquiring ... Searching for FTRN on 00:11:22:33:44:55 ... Service Name: OBEX File Transfer Service RecHandle: 0x10003 Service Class ID List: OBEX File Transfer (0x1106) Protocol Descriptor List: L2CAP (0x0100) RFCOMM (0x0003) Channel: 10 OBEX (0x0008) Teraz można spróbować połączyć się z urządzeniem za pomocą polecenia obex_test z opcją -b (Bluetooth), adresem BD urządzenia oraz numerem kanału lFTRN: $ obex_test -b 00:11:22:33:44:55 10 Using Bluetooth RFCOMM transport OBEX Interactive test client/server. c Connect OK! Version: 0x10. Flags: 0x00 x PUSH filename /home/incub/images/image.jpg name=/home/incub/images/image.gif, size=7294 Going to send /home/incub/images/image.gif(opt21.gif), 7294 bythes Filling stream! obex_test pokazuje jeszcze kilka komunikatów informujących o wykonywanych czyn- nościach, po których następuje potwierdzenie: Made some progress... Made some progress... Made some progress... Filling stream! PUT successful! Plik powinien pojawić się w urządzeniu. Analogicznie, po skonfigurowaniu interfejsu Bluetooth do odpowiadania na żądania OBEX Push, program obex_test może odbierać pliki wysyłane z urządzenia. Interfejs Bluetooth należy skonfigurować za pomocą programu sdptool, podając mu ten sam numer kanału, którego urządzenie używa dla funkcji OBEX Push: Bluetooth i urządzenia przenośne | 53 SPOSÓB 18. Przesyłanie plików połączeniami Bluetooth w Linuksie $ sdptool add --channel=10 OPUSH $ obex_test -b 00:11:22:33:44:55 10 Using Bluetooth RFCOMM transport OBEX Interactive test client/server. s obex_test powinien wyświetlić pusty wiersz, a następnie zatrzymać się. Teraz można wy- słać plik z telefonu. Pojawi się mnóstwo komunikatów, po czym obex_test poinformuje o zakończeniu przesyłania pliku. Przesłany plik trafil do katalogu /tmp. Problem z programem obex_test — oprócz tego, że nie istnieje jakakolwiek doku- mentacja do tego programu — polega również na tym, że można go używać wyłącznie w sesji interaktywnej. A co w przypadku, gdy chce się sterować przesyłaniem plików za pomocą skryptów lub zautomatyzować odbieranie plików? Inny, chyba łatwiejszy sposób wysyłania plików z komputera polega na użyciu niewielkiego programu ussp-push, który można znaleźć pod adresem http://www.unrooted.net/hacking/ussp-push.tgz. Program ussp-push wykorzystuje część kodu stosu Affix, ale w rzeczywistości opiera się na Open- OBEX. W chwili obecnej nie można go też od razu skompilować, dlatego trzeba dostosować go do najnowszych wersji OpenOBEX za pomocą skryptu napisanego w języku Perl: # tar xfz ussp-push.tgz # cd ussp-push # perl -pi -e s/custfunc.userdata/custfunc.customdatna/g obex_main.c # make ... # cp ussp-push /usr/local/bin Program ussp-push wykorzystuje urządzenie szeregowe RFCOMM, powiązane z kana- łem Bluetooth używanym w funkcji OBEX Push. Z tego powodu trzeba ponownie użyć programu sdptool, a następnie za pomocą programu rfcomm należy powiązać urzą- dzenie z wymienionym kanałem: # sdptool search OPUSH Inquiring ... Searching for OPUSH on 00:11:22:33:44:55 ... Service Name: OBEX Object Push Service RecHandle: 0x10004 Service Class ID List: OBEX Object Push (0x1105) Protocol Descriptor List: L2CAP (0x0100) RFCOMM (0x0003) Channel: 9 OBEX (0x0008) # rfcomm bind /dev/rfcomm1 00:11:22:33:44:55 9 Teraz za pomocą programu ussp-push można wysyłać pliki do urządzenia. $ ussp-push /dev/rfcomm1 /home/incub/images/image.jpg image.jpg Programowi ussp-push podaje się trzy argumenty — nazwę urządzenia RFCOMM, nazwę pliku do przesłania oraz nazwę, pod jaką plik ma zostać zapisany po drugiej stronie. Po uruchomieniu programu pojawi się lawina komunikatów, kończąca się informacją 54 | Bluetooth i urządzenia przenośne Przesyłanie plików połączeniami Bluetooth w Linuksie SPOSÓB 18. o przekopiowaniu pliku. Jeżeli dla nowego urządzenia RFCOMM utworzony zostanie zapis w pliku /etc/bluetooth/rfcomm.conf, urządzenie to zostanie dowiązane podczas urucha- miania systemu. Poniższemu skryptowi należy nadać nazwę btpush i zapisać go w jakimś wygodnym miejscu (na przykład w swoim katalogu ~/bin). Od tej pory można go używać do zautomatyzowanego wysyłania plików do telefonu: #!/bin/bash # btpush - wysyła pliki do urządzenia Bluetooth, wykorzystując prhogram ussp-push. # Skrypt uruchamia się poleceniem: btpush nazwa pliku ussp-push /dev/rfcomm1 $1 `basename $1` Jeżeli podczas używania programu ussp-push pojawiają się jakieś problemy z upraw- nieniami, należy sprawdzić, czy urządzenia /dev/rfcomm* mogą być zapisywane przez grupę, której jest się członkiem i czy ich właścicilelem jest ta grupa. Pliki przesyłać można również za pomocą innego małego programu obexserver, dos- tępnego pod adresem http://www.frasunek.com/sources/unix/obexserver.c. Program obexserver należy zbudować łącznie z programami openobex-apps. Po zbudowaniu openobex-apps w naj- wyższym katalogu plików źródłowych należy wykonać polecenia: # cd src # wget http://www.frasunek.com/sources/unix/obexserver.c # gcc -o obexserver obexserver.c libmisc.a -lopenobex # cp obexserver /usr/local/bin Żeby za pomocą tego programu móc odbierać pliki, należy najpierw skonfigurować w kom- puterze usługę OBEX Push, wydając polecenie sdptool add --channel=10 OPUSH, w którym numer kanału należy zmienić na taki, którego urządzenie używa w funkcji OBEX Push. Następnie program obexserver należy uruchomić bez argumentów i wysłać plik z telefonu. Program obexserver odbierze plik, zapisze go w katalogu /tmp, a następnie za- kończy działanie. Możliwość wysyłania plików z telefonu do komputera i w drugą stronę jest bardzo miła, ale wysyłanie plików pojedynczo nie jest zbyt wygodne. Na szczęście gdy urządzenie Bluetooth wyposażone jest w system SymbianOS lub EPOC, jak to jest w przypadku te- lefonów Series 60 oraz Ericsson P800, można zamontować w komputerze system plików urządzenia za pomocą NFS. Pakiet, który dokonuje tego niewielkiego cudu, nazywa się p3nfs i można go pobrać ze strony http://www.koeniglich.de/p3nfs.html. Plikom źródłowym towarzyszą pliki binarne przeznaczone do uruchamiania w telefonie, przygotowane na wypadek, gdyby ktoś nie dysponował kompilotorem skrośnym (co zdarza się często). Program przeznaczony dla telefonu
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

100 sposobów na sieci bezprzewodowe
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: