Gibt es eine Möglichkeit, die Internetverbindung meines Computers über USB mit meinem Android zu teilen?

16

Gibt es eine Möglichkeit, meine Desktop-Internetverbindung mit meinem Android 2.2.1 über das Telefondatenkabel freizugeben?

Gulden
quelle
Wie meinst Du das? Sie versuchen, die Verbindung von einem angebundenen Android-Handy zu teilen?
Oli
Nein, ich möchte die Internetverbindung des Computers mit meinem Android-Handy teilen. Also anders herum als angebunden.
Panmari
Vielleicht könntest du genau erklären, was du versuchst zu tun. Warum möchten Sie jemals das Internet Ihres Laptops auf Ihrem Telefon nutzen?
user606723
2
@ user606723 Es gibt viele Gründe, dies zu tun - z. B. einen schnelleren oder günstigeren Internetdienst zu erhalten, MITM für Pakete vom Telefon zu erfassen oder zu testen usw. In der Telefonhilfe wird darauf hingewiesen, dass dies unter Windows über "HTP-Synchronisierung" erfolgt. , die Sie von HTC.com herunterladen können
nealmcb
2
Dies wird als Reverse Tethering bezeichnet.
BigSack

Antworten:

10

Nun, es kann mit gerooteten 2.2+ Geräten gemacht werden. Das ist nicht einfach.

Bevor ich anfange, ist es vielleicht einfacher, einen billigen USB-WLAN-Dongle zu kaufen und die Verbindung zu Ihrem Telefon dadurch zu teilen. Es ist eine viel einfachere Prozedur und erfordert keinen root-Zugriff auf das Telefon.

Aber so geht's über USB:

  1. Versetzen Sie Ihr Telefon in den USB-Debugging-Modus (in Einstellungen → Anwendungen → USB). Schließen Sie das Telefon an.

  2. Dann müssen Sie das USB-Tethering am Telefon aktivieren. Auf meinem SGS2 befindet sich dies unter Einstellungen → Drahtlos und Netzwerk → Tethering und tragbare Hotspots.

    Zu diesem Zeitpunkt wird dem Computer ein neues Netzwerkgerät hinzugefügt ( usb0).

  3. Führen Sie die folgenden Befehle aus, um eth0 und Ihre neue USB-Verbindung zu verbinden.

    sudo apt-get install bridge-utils
    
    sudo brctl addbr br0
    
    for i in eth0 usb0; do
        sudo ifconfig $i 0.0.0.0
        sudo brctl addif br0 $i
    done
    
    sudo ifconfig br0 up
    sudo dhclient br0 # might take a few seconds
    
  4. Laden Sie dann ein Terminal auf Ihr Telefon (oder verwenden Sie die SDK-AdB-Shell) und starten Sie es (als Root):

    netcfg usb0 dhcp
    

Um alles umzukehren:

for i in eth0 usb0 br0; do sudo ifconfig $i down; done
sudo brctl delbr br0
sudo ifconfig eth0 up
sudo dhclient eth0

Um die Sache ein wenig einfacher zu machen, gibt es einige Apps, die die Telefonseite bedienen (z. B. ASProxy), aber Sie benötigen immer noch ein gerootetes 2.2-Gerät. Die Computerseite der Dinge kann skriptiert werden. Sie können sich sogar an udev anschließen, um diese Befehle auszulösen, wenn Sie das Telefon anschließen (und die Brücke zerstören, wenn Sie den Stecker ziehen).

Oli
quelle
Vielen Dank für Ihre schnelle Antwort =) Ich wünschte, es gäbe einen einfacheren Weg :(
Panmari
Weitere Details und Kommentare zu dieser Art von "Reverse Tethering" finden Sie auf dieser Seite: blog.mycila.com/2010/06/… Ich bin überrascht, dass es so schwierig ist, und nehme an, dass es eine einfachere Ubuntu-Only-Methode gibt, die vermutlich involviert Einrichten von Ubuntu als Router über FORWARD_IPV4 = true usw.
Nealmcb
Ich bekomme keine usb0Oberfläche auf meinem Laptop (mit 12.04). Irgendwelche Ideen?
Hamish Downer
Diese Reverse-Tethering-App und ihre Hilfeseite haben mir dabei geholfen, dies erfolgreich zu tun.
Anwar
2

Es gibt einige alte Hinweise zu Reverse USB Tethering mit Android 2.2 mit einem Nexus One.

Ich habe geplant, dies zu versuchen, ohne mein HTC DHD zu verwurzeln.
Es verfügt über eine Internet-Pass-Through-Option, die unter Windows hervorragend funktioniert.
Daher frage ich mich, ob diese Option über Ubuntu auf denselben Leitungen verwendet werden kann
.

Anforderungen aus diesen Notizen sind,

Android 2.2 (oder eine ältere Version mit einer Root-Tethering-App)
ADB von Android SDK oder ein verwurzeltes Android 2.2 mit Terminal im Root-Modus

nik
quelle