Surfstick einrichten/e160: Unterschied zwischen den Versionen
→Einrichtung per Befehlszeile: comgt nicht mehr in [community] auf AUR geändert |
Dirk (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
(5 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 26: | Zeile 26: | ||
Zur Einrichtung am CLI werden zwei Tools benötigt, dies sind ''wvdial'' und ''comgt''. Ersteres befindet sich im „community“-Repository, letzteres ist im [http://aur.archlinux.org/packages.php?ID=6736 AUR] verfügbar. ''wvdial'' kann aus den entsprechenden Repository mit [[Pacman]] installiert werden. | Zur Einrichtung am CLI werden zwei Tools benötigt, dies sind ''wvdial'' und ''comgt''. Ersteres befindet sich im „community“-Repository, letzteres ist im [http://aur.archlinux.org/packages.php?ID=6736 AUR] verfügbar. ''wvdial'' kann aus den entsprechenden Repository mit [[Pacman]] installiert werden. | ||
pacman -S | pacman -S wvdial | ||
Sollte das Internetverbindungsaufbau-System nicht installiert sein, so müssen die Pakete ebenfalls noch installiert werden. | Sollte das Internetverbindungsaufbau-System nicht installiert sein, so müssen die Pakete ebenfalls noch installiert werden. | ||
Zeile 100: | Zeile 96: | ||
Durch „wvdial“ wird selbständig „pppd“ gestartet, und durch diesen die Verbindung über das Modem ins Internet aufgebaut. Alle nötigen Daten werden durch den O<sub>2</sub>-DHCP-Server bereitgestellt und von „pppd“ automatisch dem System übergeben. | Durch „wvdial“ wird selbständig „pppd“ gestartet, und durch diesen die Verbindung über das Modem ins Internet aufgebaut. Alle nötigen Daten werden durch den O<sub>2</sub>-DHCP-Server bereitgestellt und von „pppd“ automatisch dem System übergeben. | ||
{{hc|o2ss|SIM ready | |||
--> WvDial: Internet dialer version 1.60 | |||
--> Cannot get information for serial port. | |||
--> Initializing modem. | |||
--> Sending: ATZ | |||
ATZ | |||
OK | |||
--> Modem initialized. | |||
--> Sending: ATM1L3DT*99# | |||
--> Waiting for carrier. | |||
ATM1L3DT*99# | |||
CONNECT | |||
--> Carrier detected. Starting PPP immediately. | |||
--> Starting pppd at Sat Apr 18 22:14:50 2009 | |||
--> Pid of pppd: 5503 | |||
--> Using interface ppp0 | |||
--> local IP address 10.68.85.169 | |||
--> remote IP address 10.64.64.64 | |||
--> primary DNS address 193.189.244.197 | |||
--> secondary DNS address 193.189.244.205}} | |||
Das geöffnete Shell-Fenster dient zur Kontrolle und Statusanzeige. Wenn in dem Fenster Strg+C gedrückt wird, wird die Verbindung getrennt, ebenso, wie, wenn das Fenster geschlossen wird. | Das geöffnete Shell-Fenster dient zur Kontrolle und Statusanzeige. Wenn in dem Fenster Strg+C gedrückt wird, wird die Verbindung getrennt, ebenso, wie, wenn das Fenster geschlossen wird. | ||
=== Optimieren === | === Optimieren === | ||
Will man seine PIN nicht im Klartext in einer Datei stehen haben, sondern jedes mal verdeckt eingeben, kann man sich | Will man seine PIN nicht im Klartext in einer Datei stehen haben, sondern jedes mal verdeckt eingeben, kann man sich folgenden Scriptes, anstatt des oben angegebenen direkten Aufrufs von comgt mit der PIN bedienen. Das Script setzt zuerst die Shell in den Passwort-Eingabemodus und Fragt das Passwort ab, setzt die Shell dann wieder zurück in den vorherigen Modus, und führt „comgt“ aus. | ||
trap "stty echo ; exit" 1 2 15 | trap "stty echo ; exit" 1 2 15 |
Aktuelle Version vom 13. Januar 2021, 11:41 Uhr
Hinweis: Diese Seite beschreibt die Einrichtung des O2-Surfsticks Huawei e160/e161/e220. Eine Übersicht über verfügbare Konfigurationsanleitungen, sowie weitere Informationen und allgemeine Hinweise zur Fehlerbehebung befinden sich auf der Hauptseite zu den Surfsticks
Wer einen Surfstick des Mobilfunk-Anbieters O2 besitzt, möchte diesen eventuell auch unter Arch benutzen. Dies ist mit dem Standard-Kernel ab mindestens Version 2.6.27 ohne zusätzliche Kernelmodule problemlos möglich. Es wird vermutlich auch mit älteren Kerneln funktionieren, wurde vom Initial-Autor des Artikels allerdings nicht getestet.
Für die Einrichtung stehen zwei Lösungswege offen. Zum Einen bietet sich die Möglichkeit, den Surfstick mittels comgt und wvdial in Verbindung mit pppd manuell einzurichten, zum Anderen bietet sich mit umtsmon eine GUI-Basierende Konfiguration an.
Prinzipiell ist diese Vorgehensweise auch auf die Sticks anderer Anbieter übertragbar, sofern diese auf dem HUAWAI E160/E220 basiert.
Hardware
Der vom Autor zum Testen im Prozess der Initialisierung dieses Wiki-Artikels verwendete Surfstick ist laut Beschriftung der „HUAWEI E160 HSDPA USB Stick“, lsusb gibt folgendes aus.
Bus 001 Device 009: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E270 HSDPA/HSUPA Modem
Bei Anschluss des Surfsticks werden dem System zwei USB-GSM-Modems übergeben. „ttyUSB0“ ist das Verbindungs-Modem, und „ttyUSB1“ wird vom Stick selbst für interne Zwecke verwendet.
[ 2103.645260] usb 5-3: GSM modem (1-port) converter now attached to ttyUSB0 [ 2103.645305] usb 5-3: GSM modem (1-port) converter now attached to ttyUSB1
Die LED des Surfsticks verhält sich entsprechend des Status der Hardware unterschiedlich.
- blinkt grün SIM geschlossen, nicht verbunden
- blinkt dunkelblau SIM geöffnet, nicht verbunden
- leuchtet dunkelblau verbunden, aber keine Datenübertragung
- leuchtet hellblau es werden Daten übertragen
Einrichtung per Befehlszeile
Zur Einrichtung am CLI werden zwei Tools benötigt, dies sind wvdial und comgt. Ersteres befindet sich im „community“-Repository, letzteres ist im AUR verfügbar. wvdial kann aus den entsprechenden Repository mit Pacman installiert werden.
pacman -S wvdial
Sollte das Internetverbindungsaufbau-System nicht installiert sein, so müssen die Pakete ebenfalls noch installiert werden.
pacman -S rp-pppoe ppp
… wobei dies bei einer Standard-Installation nicht nötig ist.
Konfiguration
Vor der Verwendung des Surfsticks unter Arch müssen noch einige Dinge konfiguriert werden. Auch ist es ratsam, sich ein Script oder eine Bash-Funktion zu erstellen, um den Stick zu initialisieren, da man sonst alle Schritte manuell ausführen muss.
wvdial
Über das PPP-Einwahlprogramm „wvdial“ wird die Verbindung über das Surfstick-Modem ins Internet aufgebaut. Damit das Programm die richtigen Befehle ausführt, muss ein Script erstellt werden. Es wird davon ausgegangen, dass der Surfstick als einziges Modem verwendet werden soll. Falls nicht, muss statt „Dialer Defaults“ einfach ein anderer Name angegeben werden.
[Dialer Defaults] Modem = /dev/ttyUSB0 ISDN = off Modem Type = USB Modem Baud = 115200 Init = ATZ Init2 ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Init3 AT+CGDCONT=1,"IP","surfo2" Init4 = AT^SYSCFG=2,2,3FFFFFFF,2,4 Init5 = Init6 = Init7 = Init8 = Init9 = Phone = *99# Phone1 = Phone2 = Phone3 = Phone4 = Dial Prefix = Dial Attempts = 100 Dial Command = ATM1L3DT Ask Password = off Password = o2 Username = o2 Auto Reconnect = on Abort on Busy = off Carrier Check = on Check Def Route = on Abort on No Dialtone = on Stupid Mode = on Idle Seconds = 0 Auto DNS = on
Username und Passwort müssen so belassen werden. Dies wird als Datei „/etc/wvdial.conf“ abgespeichert.
Script
Möchte man nicht jedes mal mehrere Befehle eingeben, wenn man den Surfstick initialisieren will, kann man sich ein kleines Script, oder eine Bash-Funktion erstellen. Im Beispiel wird eine Bash-Funktion verwendet, die in der bashrc von root notiert wurde.
function o2ss { ifconfig eth0 down mknod /dev/ppp c 108 0 2>/dev/null COMGTPIN=1234 comgt PIN -d /dev/ttyUSB0 sleep 5 wvdial ifconfig eth0 up }
Zuerst wird eth0 offline gesetzt. Dies ist nötig, da wvdial, bzw. pppd dadurch eventuell verwirrt werden können. Es wird dann ein neuer Device Node erstellt, und Fehlermeldungen dabei verworfen. Gelegentlich kann das Device nämlich mal nicht vorhanden sein, und so wird es automatisch neu erstellt. Wenn es schon vorhanden ist, wird so keine Fehlermeldung angezeigt.
Es wird dann mittels „comgt“ die PIN, im Beispiel „1234“, an die SIM-Karte übergeben, und diese damit geöffnet, da der Surfstick danach einen Moment braucht, um die SIM-Karte freizugeben, wird durch das darauffolgende „sleep“ fünf Sekunden gewartet. Will man die PIN nicht in einer Datei stehen haben, bietet sich eine etwas angepasste Methode an (siehe Optimieren).
Nun wird „wvdial“ ausgeführt, wenn nur eine Konfiguration – und diese als „Dialer Default“ – eingetragen wurde, reicht der Aufruf so, ansonsten muss er um den Eintrags-Namen erweitert werden, etwa „wvdial surfstick“, wenn der Konfigurationsabschnitt „surfstick“ heißt.
Durch „wvdial“ wird selbständig „pppd“ gestartet, und durch diesen die Verbindung über das Modem ins Internet aufgebaut. Alle nötigen Daten werden durch den O2-DHCP-Server bereitgestellt und von „pppd“ automatisch dem System übergeben.
o2ss
SIM ready --> WvDial: Internet dialer version 1.60 --> Cannot get information for serial port. --> Initializing modem. --> Sending: ATZ ATZ OK --> Modem initialized. --> Sending: ATM1L3DT*99# --> Waiting for carrier. ATM1L3DT*99# CONNECT --> Carrier detected. Starting PPP immediately. --> Starting pppd at Sat Apr 18 22:14:50 2009 --> Pid of pppd: 5503 --> Using interface ppp0 --> local IP address 10.68.85.169 --> remote IP address 10.64.64.64 --> primary DNS address 193.189.244.197 --> secondary DNS address 193.189.244.205
Das geöffnete Shell-Fenster dient zur Kontrolle und Statusanzeige. Wenn in dem Fenster Strg+C gedrückt wird, wird die Verbindung getrennt, ebenso, wie, wenn das Fenster geschlossen wird.
Optimieren
Will man seine PIN nicht im Klartext in einer Datei stehen haben, sondern jedes mal verdeckt eingeben, kann man sich folgenden Scriptes, anstatt des oben angegebenen direkten Aufrufs von comgt mit der PIN bedienen. Das Script setzt zuerst die Shell in den Passwort-Eingabemodus und Fragt das Passwort ab, setzt die Shell dann wieder zurück in den vorherigen Modus, und führt „comgt“ aus.
trap "stty echo ; exit" 1 2 15 echo -n "PIN: " stty -echo read PIN COMGTPIN=${PIN} comgt PIN -d /dev/ttyUSB0 stty echo echo trap "" 1 2 15
„trap“ sichert, dass die Shell wieder in den ursprünglichen Modus zurückwechselt, wenn man die Eingabe mit Strg+C o.ä. abbricht.
Grafische Einrichtung
Eine weitere Methode, den Surfstick unter Arch zu verwenden, ist, umtsmon einzusetzen. umtsmon ist ein Qt3-Basierendes Programm, das im AUR verfügbar ist, und aus diesem AUR installiert werden kann. Zusätzlich wird das Paket „qt3“ benötigt, das im „extra“-Repository vorhanden ist, und mittels Pacman installiert werden kann.
pacman -S qt3
Nach der Installation kann das Tool mittels „umtsmon“ gestartet werden, es bedarf dann aber noch der Einstellung eines Profils. Zuerst wird allerdings die PIN abgefragt, um die SIM-Karte zu öffnen. Über „Verbindung → Profile“ gelangt man zum Profil-Editor, hier muss man ein neues Profil anlegen.
Die Daten in den Abschnitten „einloggen“ und „Erweiterte PPP-Einstellungen“ sollten so übernommen werden, wie sie im Screenshot vorhanden sind, das Passwort lautet auch hier „o2“. Hat man keine echte Flatrate, sondern einen Volumen- oder Zeit-Tarif, kann man unter „Monatliche Daten/Zeitlimits“, ob und wann das Tool eine Warnmeldung ausgeben soll.
Mit einem Klick auf „Speichern“ speichert man das Profil, und kann den Profilmanager dann schließen.
Will man nun mit dem Surfstick online gehen, klickt man auf das zweite Icon im Hauptfenster (die Darstellung von zwei Computern). „umtsmon“ baut nun die Verbindung anhand der im Profil eingestellten Daten auf. Im Statusbereich werden die übertragenen Datenmengen sowie die Signalstärke angezeigt.
Das Versenden von SMS-Nachrichten funktioniert ebenfalls. Über den Menüpunkt „SMS“, oder das Icon mit dem Briefumschlag kann man eine neue SMS-Nachricht erstellen und über den erscheinenden Dialog versenden, eine UMTS-Verbindung muss dazu nicht bestehen.
Beim Testen innerhalb der Vorbereitungen für die Initialisierung dieses Artikels war „umtsmon“ zwar eine Fehlermeldung aus, dass die SMS nicht versendet wurde, sie kam allerdings dennoch an. Der Empfang von SMS-Nachrichten klappte beim Testen jedoch nicht.
Über den Menüpunkt „PIN-Einstellungen“ kann man die PIN ändern oder die PIN-Abfrage deaktivieren.
Offline gehen kann man mit dem Icon rechts neben dem Verbindungsicon. Alternativ kann man das Fenster auch einfach schließen. Die Verbindung wird dann getrennt.