GithubHelp home page GithubHelp logo

andreth's Introduction

= About =

andreth is a basic _And_roid _re_verse te_th_ering script that will allow your
Android powered device to use the LAN connection of your linux box to connect to
the internet.


= Prerequisites =

You'll need
 * python 2.7
 * the Android SDK on your linux box[0]
   * a working adb setup[1]
 * the ability to execute commands as root on your machine[2]

You need to enable
 * USB debugging[3]
on your device.


= Usage =

$ sudo python andreth.py -h
usage: andreth.py [-h] [-l IP] [-r IP] [-i IFACE]

Reverse tethering over USB for your Android device

optional arguments:
  -h, --help            show this help message and exit
  -l IP, --local-ip IP  the IP on the host side of the PPP tunnel [default:
                        192.168.55.51]
  -r IP, --remote-ip IP
                        the IP on the device side of the PPP tunnel [default:
                        192.168.55.52]
  -i IFACE, --interface IFACE
                        the interface that provides the internet connection
                        [default: eth0]
$


= Notes =

 1.) andreth needs to be run as root in order to 
      * enable/disable packet forwarding in the kernel
      * set up/tear down the firewall rules for NATting
      * create/destroy the PPP tunnel device

 2.) The local and remote IPs need to be unique in your networking
     environment. They don't have to be from the same subnet or lie within the
     same subnet as the interface providing the uplink. So I suggest you chose
     two IP addresses from an unused private subnet.


= Troubleshooting =

In case you don't get replies to your packages, you might wanna check the
firewall rules on your linux box. cf [6].


= Disclaimer =

I stole the information on how to make Android use reverse tethering over USB
from xda developers[4] and wrapped them in this small script. All props to them.

In addition, I borrowed the syntax to teach iptables NATting rules from
freyo[6]. Thx to him as well.


= More Information =

In case this script is too basic for your needs, you can find more information
here[5][6].

Obviously, I would be glad if you forked this project, patched the script and
sent me merge requests so everyone may profit from your enhancements. Thx.


-----
[0] http://developer.android.com/sdk/index.html
[1] cf http://forum.xda-developers.com/showthread.php?t=640158
    for the 'no permissions' problem
[2] for setting up the tunnel device
[3] so andreth can configure it via the USB connection
[4] http://forum.xda-developers.com/showthread.php?t=835912
[5] http://blog.mycila.com/2010/06/reverse-usb-tethering-with-android-22.html
[6] http://www.xinotes.org/notes/note/1500/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.