nsg's blog

AnvÀnd din android/HTC magic som modem

2009-07-22

Som jag skrev i förra inlÀgget sÄ tÀnkte jag lÄta min telefon ersÀtta mitt mobila bredband, och nu nÀr den har kommit sÄ kommer en guide hur man gör för att komma igÄng under Ubuntu Linux.

Det krÀver att du har lite koll pÄ datorer och Linux för att kunna följa med, har du frÄgor sÄ skriv en kommentar sÄ hjÀlper jag till.

Jag har en HTC Magic som Àr köpt i Sverige, nÄgot som de nordiska telefonerna har gemensamt Àr att HTC har varit och Àndrar lite pÄ koden i Android. Vissa förbÀttringar, och vissa försÀmringar. En av de sÀmre Àr att dom har tagit bort stöd för att kunna anvÀnda iptables. Iptables Àr det som anvÀnds i Linux för att begrÀnsa och skicka vidare trafik, precis vad en vanlig router gör. TyvÀrr innebÀr det att du inte har lika mycket htc-magic-2möjligheter, det finns dock en lösning och den heter AziLink och krÀver att du har USB-sladden i.

Har du en icke-nordisk Magic eller nĂ„gon annan modell sĂ„ kanske du har stödj för iptables, i sĂ„ fall rekommenderar jag att du kollar upp andra alternativ dĂ„ du med dem kan anvĂ€nda wlan:et eller blĂ„tand för att koppla ihop telefonen med din dator. Den nordiska Magic identifieras med att det stĂ„r “HTC” pĂ„ baksidan (inte Google).

Förbereda

Innan du börjar mÄste du installera lite saker pÄ datorn, sÄ glöm inte att förbereda det först innan kopplar bort din vanlig uppkoppling för att prova.

Konfigurera

Nu har du laddat ner allt du behöver, börja med att gÄ in i telefonen under Settings > Applications > Unknown sources och vÀlj den sÄ att du kan installera azilink.apk pÄ din telefon. PÄ nÀstan samma stÀlle under Settings > Applications > Development > USB debugging slÄr du pÄ den.

Öppna nu en terminal om du inte redan har en öppen.

Nu behöver du skapa en fil för att Linux ska hantera telefonen pÄ rÀtt sÀtt, döp filen till 51-android.rules och lÀgg den i /etc/udev/rules.d/, för att göra det med ett kommando skriv:

*gksudo gedit */etc/udev/rules.d/51-android.rules

Filen ska innehÄlla:

SUBSYSTEM==”usb”,SYSFS{idVendor}==”0bb4″,ATTR{idProduct}==”0c02″,SYMLINK+=”android_adb”,MODE=”0666″,OWNER=”USERNAME”
SUBSYSTEM==”usb”,SYSFS{idVendor}==”0bb4″,ATTR{idProduct}==”0c01″,SYMLINK+=”android_fastboot”,MODE=”0666″,OWNER=”USERNAME”

(Notera USERNAME, byt ut det mot ditt anvÀndarnamn)

Ändra filen /etc/resolv.conf med:

gksudo gedit /etc/resolv.conf

Den ska innehÄlla

domain lan
search lan
nameserver 192.168.56.1

Stoppa nu in USB-kabeln till telefonen (sitter den redan i, ta ur den och sÀtt i den igen).

GÄ nu in i katalogen tools med en terminal, du hittar katalogen i Androids SDK som du packade upp tidigare. I den ligger ett program som heter adb som vi kommer anvÀnda (eventuellt gÄr det att kopiera adb och ta bort resten av SDK:n, inget jag provat sjÀlv).

Prova nu om adb hittar din telefon med ./adb devices, du bör fĂ„ tillbaka en trĂ€ff som liknar “HT85FKF11362  device“.

Installera

För att installera azilink.apk pÄ din telefon skriv ./adb install sökvÀg_till_apk_fil, t.ex. om filen ligger i tools-katalogen:

./adb install azilink.apk

Om allt har gĂ„tt bra sĂ„ Ă€r nu AziLink installerad pĂ„ din telefon, starta nu programmet pĂ„ telefonen och vĂ€lj “Service Active”. Du kan hĂ„lla ett öga pĂ„ status i programmet lĂ€ngre fram om du vill.

Anslut

DÄ jag inte anvÀnder NetworkManager sÄ stÀng av den med:

sudo /etc/init.d/NetworkManager stop

För att ansluta börja med att skapa en anslutning mellan telefonen och din dator med:

./adb forward tcp:41927 tcp:41927

För att sedan starta OpenVPN med konfigurationsfilen du laddade ner tidigare. sudo openvpn --config sökvÀg_till_azilink.ovpn, t.ex om azilink.ovpn ligger i tools:

sudo openvpn --config azilink.ovpn

Massa text kommer komma upp, efter ett tag bör du se “Initialization Sequence Completed” och det bör stĂ„ “Connected to host” under status pĂ„ telefonen. Prova nu att surfa pĂ„ nĂ€tet.

Avbryt och Ă„teranslut

För att avbryta, tryck control-c i terminalen. För att sedan ansluta vid ett senare tillfÀlle sÄ sÄ mÄste du köra följande kommandon:

  • sudo /etc/init.d/NetworkManager stop (bara om du har startat den igen, eller startat om datorn)
  • Aktivera AziLink pĂ„ telefonen (om den inte Ă€r aktiverad lĂ€ngre).
  • ./adb forward tcp:41927 tcp:41927 (bara om du har loggat ut eller startat om datorn)
  • sudo openvpn --config azilink.ovpn

ÅterstĂ€ll NetworkManager

Vill du fÄ tillbaka NetworkManager igen sÄ skriv bara:

sudo /etc/init.d/NetworkManager start

(eller starta om datorn)

Slutsats

NÀr jag fick ner alla steg pÄ svart och vitt sÄ insÄg jag att det blev ett par steg, eventuellt kan jag hacka ihop nÄgra skript för att förenkla installationen och hanteringen lÀngre fram. NÄgon som kÀnner att dom har nytta av det sÄ sÀg till. Jag kommer nog dock för min egen skull skiva nÄtt som gör det enklare (automatiskt) att anvÀnda nÀr saker redan Àr konfigurerade.

Bloggar om: , , ,

Please note that this is a old post from the year 2009 and the information may be outdated. All these 1014 words are written by Stefan Berggren, feel free and contact me if you like.