PDA-Testseite
Pdflatex Debian
Webvisitenkarte Hans-Jörg Weniger
Vti

PPP Verbindung mit Linux und das Internet nutzen (alte Anleitung)

Im folgendem Abschnitt wird erklärt wie mit dem Motorola A780 eine Internetverbindung über USB mit einem Linux System realisiert wird. Des Weiteren findet man auch Informationen über eine Bluetooth-Verbindung.

Voraussetzung: linloader, telnet
Benötigte Software: mackconnectivitypack.tar.gz, leoppp.tar

Quelle für Anleitung und Software:
http://www.troodon.org/a780/a780-linux-howto.htm


1. Linux Kernel Optionen

Getestet mit Debian etch Kernel 2.6.22.1.

Für USB:

Um das Motorola Modem zu erkennen muss im Kernel unter Device Drivers --> USBsupport: (M) USB Modem (CDC ACM) support als Modul geladen werden.

Für eine USBlan-Verbindung muss im Kernel unter Device Drivers --> Network device Support --> USB Network Adapters: (M) Multi-purpose USB Networking Framwork --> (M) Sharp Zaurus (stock ROMs) and compatible als Modul geladen werden (gilt nur für 2.6.X-Kernel)

Für 2.4.x Kernel steht ein Treiber zur Verfügung wird hier aber nicht behandelt.

Für Bluetooth:

Protokolle
Networking --> Bluetooth subsystem support --> (M) L2CAP; (M)RFCOMM

Treiber
Networking --> Bluetooth subsystem support --> Bluetooth device drivers --> (M) HCI USB driver
Der hat für mein USB-Bluetooth adapter funktioniert ansonsten erstmal alle reinladen.

Installierte Pakete unter debian etch: bluez-utils und bluez-gnome

Allgemein:

Um später die Pakete von dem Handy auf das Netzwerk zu routen braucht man die iptable/nat Funktion.
Welche Kernelmodule man wirklich benötigt keine Ahnung.
Also unter:

Networking --> Networking options --> (*) Network packet filtering framework (Netfilter) --> core Netfilter config und IP: Netfilter Configuration alle Module fest in den Kernel geladen.

Des Weiteren sollte überprüft werden ob das iptables Paket installiert ist.




2. leoppp installieren

- Die Datei leoppp.tar auf das A780 kopieren
- Telnetverbindung mit der acmattach.lin starten
- das Archiv entpacken: "cd /diska; tar xvf leoppp.tar", ein "leoppp" Verzeichnis entsteht.
- mit dem Filemanager im A780 in das neuentstandene Verzeichnis wechseln.
- die LeoPopUp.jar Datei installieren
- Die Datei clickme.sh mit "Öffnen mit " permanent mit dem LinLoader verknüpfen
- wieder zurück in die telnetsession dort auch in das "leoppp" Verzeichnis wechseln und die install.sh Datei ausführen und den Anweisungen folgen siehe Bild Telnet

./install.sh

In der Datei /ezxlocal/download/appwrite/am/InstalledDB
ist ein Eintrag Name=LeoPopUp benötigt wird die zugehörige JavaId.

installeddb



Diese muss dann in /diska/.system/QTDownLoad/leomsg/leomsgh.sh
als SUITEID eingetragen werden.

leomsg



Das USBkabel kann jetzt gezogen werden.
Nun muss das Telefon neugestartet werden. Nach dem Reboot befinden sich drei neue leo icons und eine Java Applikation im Programmfenster.

3. Die Point-to-Point Verbindung(USB)


- Die USBoptionen auf Modem setzen

- Das USBkabel verbinden

- konsole auf dem Computer öffnen und sich als root anmelden

- ausführen: pppd /dev/ttyACM0 noauth local

- Auf dem A780 das USBPPP icon anklicken

- mit ifconfig kann man feststellen, dass unter dem neuen ppp0 device der Computer die 192.168.1.1 hat und das Handy die peer ip 192.168.1.2

Nun ist es möglich mit telnet 192.168.1.2 auf das Handy zugelangen.

Bei einer Bluetoothverbindung hat der Computer die 192.168.1.3 und das Handy die 192.168.1.4

Weiterhin existiert ein Sambaserver auf dem Telefon.

smb://192.168.1.4/system für /ezxlocal
smb://192.168.1.4/home für /diska

Zum beenden der Verbindung einfach das Programm "PPP OFF" drücken.


4. Installation des connectivitypack

Für das Realisieren einer Internetverbindung mit den Applikationen wie Browser benötigt man das MACKconnectivitypack.
Motorolafansforum: How To: Internet Connection Sharing - Mack Connectivity Pack
Internet Connection Sharing

Die mackconnectivitypack.tgz Datei in das root-Verzeichnis auf das A780 kopieren.
Nun kann die Installation beginnen.
Als erstes muss eine Point-to-Point Verbindung existieren siehe schritt 3.
Man baut eine Telnetverbindung (telnet 192.168.1.2) auf und login als root.

- cd /diska/.system/QTDownLoad/

- tar zxvf /diska/MackConnectivityPack.tgz

- um die *.lin Datein leichter zu erreichen kann man sie kopieren:
cp /diska/.system/QTDownLoad/mack/iptables/*.lin /diska/MyPrograms/

Die installation ist nun abgeschlossen.


5. Internetverbindung über USB

Die Bluetooth(BT)-Verbindung ist im Motorolafansforum und in der Anleitung, die im Mack Connectivity Pack enthalten ist, näher erklärt sowie unter Punkt 6.

Für diese Funktion muss der gprs Anschluß deaktiviert werden!!!

gprs



Als erstes muss eine Point-to-Point Verbindung existieren siehe schritt 3.

Danach muss das routing auf dem Linux PC aktiviert werden.

Hier ein Beispiel Script für den Bluetoothadapter:

#!/bin/sh
dund -n -P 5 -c [MY_A780_BT_MAC_ADDRESS] noauth 192.168.1.3:192.168.1.4 netmask 255.255.255.0 local
while ! ping -c 1 192.168.1.4 >/dev/null 2>&1 ; do echo -n "."; sleep 1; done
iptables -D FORWARD -i ppp0 -j ACCEPT >/dev/null 2>&1
iptables -I FORWARD -i ppp0 -j ACCEPT
iptables -D FORWARD -o ppp0 -j ACCEPT >/dev/null 2>&1
iptables -I FORWARD -o ppp0 -j ACCEPT
iptables -t nat -D POSTROUTING -s 10.1.1.1 -j MASQUERADE >/dev/null 2>&1
iptables -t nat -I POSTROUTING -s 10.1.1.1 -j MASQUERADE
route add 10.1.1.1 dev ppp0
echo Ready.

Das Skript stammt aus dem Mackconnectivitypack und ist standardmäßig für Bluetooth konfiguriert.
Es gibt zwei Möglichkeiten es für eine USB-Verbindung anzupassen.


1) Erste Möglichkeit:


Also hab ich die erste Zeile im Script geändert in:

pppd /dev/ttyACM0 noauth 192.168.1.3:192.168.1.4 netmask 255.255.255.0 local

Des Weiteren habe ich die IP des PC'S und des Telefons geändert.

PC:
ifconfig ppp0 192.168.1.3 pointopoint 192.168.1.4 netmask 255.255.255.0

A780:
ifconfig ppp0 192.168.1.4 pointopoint 192.168.1.3 netmask 255.255.255.0



2) Zweite Möglichkeit:


Eine andere Methode wäre, wenn man die IP-Adressen nicht ändern möchte, folgende:

1. Die ersten beiden Zeilen im script durch folgende ersetzen:

pppd /dev/ttyACM0 noauth 192.168.1.1:192.168.1.2 netmask 255.255.255.255 local
while ! ping -c 1 192.168.1.2 >/dev/null 2>&1 ; do echo -n "."; sleep 1; done

2. Auf dem Handy die Datei /diska/.system/QTDownLoad/mack/iptables/inet-bt
öffnen und die folgende zeile ändern:

org: /tmp/mack/iptables/sbin/iptables -t mangle -A POSTROUTING -o gprsv0 -j ROUTE --gw 192.168.1.3

ändern: /tmp/mack/iptables/sbin/iptables -t mangle -A POSTROUTING -o gprsv0 -j ROUTE --gw 192.168.1.1



Nachdem das routing script ausgeführt wurde, öffnet man eine Konsole auf der Linux Kiste, um zu schaun ob es etwas geholfen hat.

- login als root
- route -n

Auf dem nächsten Bild sieht man den route -n Befehl vor und nach dem Skript.
Damit das Forwarding wirklich funktioniert muss es auch aktiviert sein.

Wenn eine Firewall läuft muss sie konfiguriert werden oder vorerst abgeschaltet werden.

Überprüfen ob forwarding aktiviert ist mit:

cat /proc/sys/net/ipv4/ip_forward

der Wert sollte auf 1 stehen, wenn nicht muss der Befehl ausgeführt werden:

echo 1 > /proc/sys/net/ipv4/ip_forward

Man könnte es auch noch in das script mit einfügen und zwar so:

cat /proc/sys/net/ipv4/ip_forward >/dev/null;
if [ $? -eq 0 ]
then echo 1 > /proc/sys/net/ipv4/ip_forward;
fi;



forward ppp


Jetzt muss man die MackInetBT.lin starten, es wird sich nichts merklich verändern, aber die Verbindung sollte jetzt funktionieren.

Um das Routing auf dem A780 zu beenden drückt man die MackUnInetBT.lin. Danach kann das gprs wieder aktiviert und benutzen werden.
Zum Beenden der PPP Verbindung einfach das Programm "PPP OFF" drücken.

6. Internetverbindung über Bluetooth

Für diese Funktion muss der gprs Anschluß deaktiviert werden!!!

gprs



Als erstes muss eine Point-to-Point Verbindung existieren wie folgt:

- Auf dem Linux-Rechner:

In der Datei "/etc/bluetooth/hcid.conf" die local device class 0x120100 setzen. Und der Pin code muss eine 4 stellige Zahl sein, die man später auch noch wissen muss.

1. wenn der Treiber noch nicht geladen ist dann:
modprobe hci_usb

2. den Bluetooth deamon starten falls er noch nicht gestartet ist:
/etc/init.d/bluetooth start

3. den Bluetooth adapter sichtbar machen mit
hciconfig -a hci0 piscan

- Auf dem Telefon Bluetooth auffindbar machen
- auf der Linux-kiste nach dem Telefon scannen und sich die MAC-Adresse notieren
hcitool scan

- Auf dem Telefon nach bluetooth Geräte scannen und den Rechner Koppeln nun muss das Passwort aus der hcid.conf eingegeben werden. Auf dem Linuxrechner wird man auch aufgefordert das Passwort einzugeben.
- für die RFcomm verbindung
dund -p5 -P5 -c [bt_address_from_phone] noauth local

- Auf dem Telefon die SPP-Verbindung annehmen.

- Das Programm BTPPP ausführen, für das starten der ppp Verbindung

- Mit ifconfig sieht man eine neue ppp0 Verbindung. Nun könnte man auch mit telnet 192.168.1.4 sich verbinden.

Danach muss das routing auf dem Linux PC aktiviert werden.

Hier das Beispiel Script für den Bluetoothadapter:

#!/bin/sh
dund -n -P 5 -c [MY_A780_BT_MAC_ADDRESS] noauth 192.168.1.3:192.168.1.4 netmask 255.255.255.0 local
while ! ping -c 1 192.168.1.4 >/dev/null 2>&1 ; do echo -n "."; sleep 1; done
iptables -D FORWARD -i ppp0 -j ACCEPT >/dev/null 2>&1
iptables -I FORWARD -i ppp0 -j ACCEPT
iptables -D FORWARD -o ppp0 -j ACCEPT >/dev/null 2>&1
iptables -I FORWARD -o ppp0 -j ACCEPT
iptables -t nat -D POSTROUTING -s 10.1.1.1 -j MASQUERADE >/dev/null 2>&1
iptables -t nat -I POSTROUTING -s 10.1.1.1 -j MASQUERADE
route add 10.1.1.1 dev ppp0
echo Ready.

Das Skript stammt aus dem Mackconnectivitypack.
Nachdem das routing script ausgeführt wurde, öffnet man eine Konsole auf der Linux Kiste, um zu schaun ob es etwas geholfen hat.

- login als root
- route -n

Wenn eine Firewall läuft muss sie konfiguriert werden oder vorerst abgeschaltet werden.

Überprüfen ob forwarding aktiviert ist mit:

cat /proc/sys/net/ipv4/ip_forward

der Wert sollte auf 1 stehen, wenn nicht muss der Befehl ausgeführt werden:

echo 1 > /proc/sys/net/ipv4/ip_forward

Jetzt muss man die MackInetBT.lin starten, es wird sich nichts merklich verändern, aber die Verbindung sollte jetzt funktionieren.

Zum Beenden der Verbindung die "MackUnInetBT.lin" ausführen und danach das "PPP OFF" Programm.



Zum Testen habe ich opera mini installiert. Dieser wird gestartet, ein Fake-Verbindungsprofil ausgewählt und schon kanns los gehn.
Das Ergebniss wurde festgehalten; die folgenden Bilder zeigen den Opera mini in Aktion.

vergrößern - links klick

vergrößern - links klick



Weiterhin ist eine Remote-Desktop und eine VNC-Verbindung über PPP möglich.
Dafür wird die ezxrdp-0.5.rar und die vnc.zip von den Motorolafans benötigt.

vergrößern - links klick

vergrößern - links klick