Telefon komórkowy jako modem
W ostatnich latach w ramach popularyzacji internetu coraz tańsze stają się połączenia z internetem za pośrednictwem telefonów komórkowych. Większość nowoczesnych telefonów ma również modemy HSPA oferujące bardzo przyzwoite prędkości transferu (gorzej bywa z możliwościami sieci). W związku z tym dlaczego ich nie wykorzystywać?
W Linux’ie wbrew pozorom wcale nie stanowi to problemu. W przypadku większości dystrybucji nawet nie wymaga to instalowania dodatkowego oprogramowani. Jeśli do połączeń z siecią używamy NetworkManager’a to z reguły po podłączeniu telefonu do komputera, automatycznie potrafi on wykorzystać nasz telefon jako modem. Co jednak jeśli tak się nie stanie lub, tak jak ja, ktoś nie używa NetworkManager’a? Przedstawię tutaj dosyć niskopoziomową, ale bardzo prostą, metodę jak skonfigurować telefon, aby służył jako modem.
- podłączamy telefon do komputera za pomocą kabla dołączonego przez producenta i jeśli telefon poprosi, wybieramy odpowiednią opcję do połączeń (na Nokiach – PC Suit Mode)
- wpisujemy komendę
dmesg | tail
i poszukujemy linijek w stylu:
[ 2203.751252] usb 1-3: Manufacturer: Nokia [ 2203.860250] cdc_acm 1-3:1.6: This device cannot do calls on its own. It is not a modem. [ 2203.860525] cdc_acm 1-3:1.6: ttyACM0: USB ACM device [ 2203.870469] usbcore: registered new interface driver cdc_acm [ 2203.870477] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters [ 2203.875287] cdc_ether 1-3:1.8: usb0: register 'cdc_ether' at usb-0000:00:1d.7-3, CDC Ethernet Device, 5a:bc:25:c3:b9:1a [ 2203.875368] usbcore: registered new interface driver cdc_ether
oznaczają one, że nasz modem został wykryty, w tym przypadku jako urządzenie /dev/ttyACM0; czasem może to być ttyACM z inna cyferką lub ttyUSB z jakąś cyferką
- następnie potrzebne nam będą następujące pliki:
/etc/ppp/chatscripts/dzwonienieTIMEOUT 10 ABORT 'BUSY' ABORT 'VOICE' ABORT 'ERROR' ABORT 'NO ANWSER' ABORT 'NO CARRIER' ABORT 'NO DIALTONE' ABORT '\nRINGING\r\n\r\nRINGING\r' '' \rAT TIMEOUT 15 OK ATE1 OK 'AT+cgdcont=6,"IP","internet"' OK "ATD*99***1#" CONNECT ''
/etc/ppp/peers/urzadzenie:
crtscts noauth connect "/usr/sbin/chat -v -f /etc/ppp/chatscripts/dzwonienie" ttyACM0 460800 defaultroute noipdefault ipcp-accept-remote ipcp-accept-local usepeerdns
- i to wszystko; połączenia dokonujemy jako root (bądź używając “sudo”) komendą:
pppd call urzadzenie
- połączenie najprościej zakończyć zabijając pppd lub odłączając telefon od komputera
Nie zawsze jednak mamy przy sobie kabel do telefonu albo nie chcemy akurat go używać. Wtedy z pomocą przychodzi bluetooth (jeśli oczywiście mamy go w laptopie). Należy tylko pamiętać, że przepustowość bt jest na poziomie 2,1Mbps, tych z EDR (Enhanced Data Rate) 3,1Mbps, a najwolniejsze modemy HSPA mają przepustowość na poziomie 3,6Mbps. Mimo to, jeśli nie zamierzamy ściągać dużych plików lub wiemy, że operator nie jest stanie dostarczyć na danym terenie maksymalnej prędkości warto korzystać z tego rozwiązania.
Konfiguracja połączenia internetowego wygląda tak samo jak w przypadku połączeń za pomocą kabla. Różnica jest tylko w połączeniu komputera z telefonem – musimy skonfigurować bluetooth:
- włączyć bluetooth w telefonie i w komputerze ;)
- komendą
sdptool search DUN
wyszukać nasz telefon; powinniśmy otrzymać coś w stylu:
Inquiring ... Searching for DUN on 00:23:F1:00:AC:F6 ... Service Name: Dial-up Networking Service RecHandle: 0x2008003 Service Class ID List: "Dialup Networking" (0x1103) "Generic Networking" (0x1201) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 1 Profile Descriptor List: "Dialup Networking" (0x1103) Version: 0x0101
- edytujemy plik /etc/bluetooth/rfcomm.conf tak aby zawierał mniej więcej coś takiego:
rfcomm0 { bind yes; device 0C:DD:EF:9C:86:27; channel 1; comment "Nokia N900"; }
oczywiście należy wymienić adres urządzenia i kanał na te które uzyskaliśmy dzięki komendzie “sdptool”
- skopiować plik /etc/ppp/peers/urzadzenie np. jako /etc/ppp/peers/bt i zmienić w nim linijkę urządzenia na rfcomm0
- sparować telefon z komputerem; można to zrobić bądź używając graficznych narzędzi, bądź za pomocą poleceń:
sudo hcitool cc 0C:DD:EF:9C:86:2 sudo hcitool auth 0C:DD:EF:9C:86:2
oczywiście znowu podając własny adres MAC urządzenia; jeśli nie wyskoczy nam prośba o PIN można spróbować komendy
sudo passkey-agent --default /usr/bin/bluez-pin
- upewnić się, że mamy włączona obsługe bluetooth’a w systemie
/etc/init.d/bluetooth start
- teraz pozostaje już tylko się połączyć, tak jak powyżej, za pomocą
pppd call bt
No i tyle. Przyjemnego przeglądania internetu na wakacjach, w dowolnym miejscu. :)
Recent Comments