Android - připojení k internetu z notebooku / čehokoliv

Pokud máte datový tarif, občas se hodí i připojit si k internetu notebook (případně jiné schopné zařízení), když je člověk někde na cestách mimo svůj domov. U androidu na toto bylo zatím lehce pozapomenuto a tak ač podporované telefony obvykle umí i HSDPA, tak v základu po zakoupení se s ním člověk prostě nepřipojí. Ale řešení existuje :-)

K úspěšnému zprovoznění budeme potřebovat dvě věci - root přístup na telefonu a funkční iptables (podpora v kernelu a userspace tool). Postup byl zkoušen na 1.6 Donut ROM od dwanga na HTC Dream (daná ROM obsahuje i iptables). Jak to tedy ve výsledku bude fungovat? Oproti běžným telefonům, na kterých nejjednodušší je zprovoznit vytáčené spojení a telefon připojit přes bluetooth/kabel, to budeme muset vyřešit trochu jinak. My si mezi telefonem a počítačem vytvoříme regulérní síť (a to buď ad-hoc wi-fi nebo bluetooth PAN síť) a následně telefon nás bude NATovat do internetu.

Instalace aplikace do telefonu

Pro patřičné přenastavení telefonu existuje spousta aplikací - klíčové slovo pro jejich vyhledávání je tethering. Já jsem použil aplikaci Wireless Tether for Root Users (dostupná v marketu). Po jejím spuštění můžeme provést její nastavení - zvolíme, zda chceme použít wi-fi nebo bluetooth a vybereme rozsah IP adres, který bude použit (výchozí je 192.168.2.0/24 a telefon si nastaví poslední adresu z rozsahu, tedy v tomto případě 192.168.2.254). Dále lze nastavit i různé bezpečnostní opatření, aby se přes nás nepřipojil každý. Pokud máme nastaveno, klikneme v programu na tu obří ikonu a telefon se přenastaví.

Připojení přes bluetooth

V bluetooth PAN sítích existují dva typy zařízení (zjednodušeně řečeno). Existuje prvek NAP a dále PANU. NAP je jakýsi master, tedy všechny PANU se připojují na NAP a komunikují přes něj - je to jakási obdobu AP módu u wi-fi. Telefon nám v tuto chvíli dělá NAP, takže se na něj připojíme. V prvé řadě je nutné být s telefonem již spárovaný (pokud jste tak ještě neučinili, tak přepněte telefon do viditelného módu a s PC jej spárujte). Na linuxu pro připojení se zaprvé ujistíme, že máme načtený modul bnep. Dále se přepneme do módu PANU příkazem pand --listen --role PANU a následně provedeme samotné připojení: pand --connect XX:XX:XX:XX:XX:XX, kde XX:XX:XX:XX:XX:XX je bluetooth adresa našeho telefonu. Pokud se vše zadařilo a objevilo se nám rozhraní bnep0, nastavíme mu IP adresu: ifconfig bnep0 192.168.2.10 netmask 255.255.255.0 up. Funkčnost si ověříme příkazem ping 192.168.2.254 - pokud se pakety vrací, spojení s telefonem funguje. Nastavíme si jej tedy jako výchozí bránu: route add default gw 192.168.2.254 dev bnep0. Nakonec zbývá už jen nastavit DNS servery v /etc/resolv.conf. Konkrétní servery jsou závislé na vašem poskytovateli připojení (O2, T-Mobile, atd.) - dají se najít na internetu.

Osobně jsem prováděl ještě pokus o připojení Windows Mobile PDA (6.5) přes bluetooth, ale neúspěšně. PDA se tváří, že se připojuje, ale pak toho nechá a nenapíše ani chybu. Co jsem tak zkoumal, nejsem jediný, komu to dělá, ale kloudného řešení jsem se nedočkal. Asi holt podpora není úplně dokonalá :-) Nicméně přes wi-fi fungovalo i toto PDA.

Připojení přes wi-fi

Pokud jste v nastavení zaškrtli připojení přes wi-fi, po spuštění tetheringu byste měli vidět ad-hoc síť se jménem, které jste vybrali (výchozí je něco jako G1-tether nebo taknějak). Pro připojení se stačí k síti naasociovat a nastavit IP adresu, bránu a DNS stejně, jako u bluetoothu. Jen je třeba pamatovat na to, že u wi-fi sítě se patrně najde více vtipálků, kteří se vám do ní budou snažit dostat :)