Android 뉴스 
Tethering : iPhone & T-Mobile G1
작성자
작성일 2009-02-18 (수) 08:21
ㆍ추천: 0  ㆍ조회: 3676      
IP: 125.xxx.169
Tethering in cellular wireless is the connection of a non-mobile device (e.g. desktop computer, notebook computer, laptop computer), to a mobile device (e.g. cell phone, PDA) for the purpose of wireless Internet access by the non-mobile "tethered" device. Examples of a tethered connection include:

 
iPhone tethering
 

Turning the Iphone into a Wireless Router from John Chow on Vimeo.
 

 

Tetherbot

Welcome

Wow - i didn't expect this would generate quite this much response. Looks like i've made the front page of Lifehacker and various other blogs.

What is this?

This is an experimental SOCKS proxy and Port Bouncer that should allow you to connect your laptop to the internet using the internet connection (EDGE, 3G or Wifi) of your T-Mobile G1 Cellphone.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

What is this not?

It's not really a true "tethering" app. Presently we don't have access to any low level packet APIs so it's impossible (without hacking the lower levels of the phone) to write something that does the kind of NAT connection possible with Windows Mobile phones.

Who are you?

My name's Graham Stewart, I'm a 28 yr old Software Consultant in Boulder, CO. I'm also involved in various other ventures, including the news discussion aggegrator banniNation.com. I'm also a keen photographer.

Installation

Read the bit above about no warranty again. This shouldn't damage your phone, but if it does, it's your own fault!
  • Install the app on your android phone, by clicking here (from your phone browser of course)
    You might have to change your settings to permit apps that don't come from the Google Market by going to your home screen and choosing MENU > Settings > Applications > Unknown Sources.
  • Turn USB debugging on on your phone
    On your G1 go to the home screen, press MENU > Settings > Applications > Development, then enable USB debugging.
  • Follow the instructions here to install the Android driver - you'll need to do this on Windows & Linux but apparently not on the Mac.
  • Download and install the Android SDK for your computer platform. Alternatively if you are on Windows and don't want a 100 meg download, just get the ADB utility from here
  • Plug your phone into your computer

Using the Socks Proxy

The SOCKS proxy will let you connect things like firefox to the internet
  • Choose Tetherbot from your phone's menu
  • Press the "Start Socks" button on your phone
  • Move to the directory that has the adb utility, using inside the Sdk Tools folder and run
    Windows: adb forward tcp:1080 tcp:1080
    Linux/Mac: ./adb forward tcp:1080 tcp:1080
    
  • Now you should have a socks proxy running on port 1080 that you can use to configure firefox
  • Set your firefox proxy : Options > Advanced > Network > Manual Proxy Configuration
    Socks Proxy: localhost
    Port: 1080
    
    Leave the others blank
  • Remember to disable your proxy settings in firefox if you want to stop using your phone.

Using the Port Bouncer

The port bouncer will let you connect to a single port on a remote host. This works well if you need to establish an SSH tunnel to your home machine.

This should work for TCP only vpns (openvpn can be configured in this mode) but it wont work for Microsoft PPTP (because it's GRE based) or most typical openvpn setups (because they are UDP based).
  • Choose Tetherbot from your phone's menu
  • Enter the hostname of the server you wish to connect to on your phone
  • Enter the port you wish to use
  • Press the "Start Tunnel" button on your phone
  • Move to the directory that has the adb utility, using inside the Sdk Tools folder and run
    Windows: adb forward tcp:4444 localabstract:Tunnel
    Linux/Mac: ./adb forward tcp:4444 localabstract:Tunnel
    
  • Now you should have a tunnel connecting from port 4444 on your local host to the port on the host of your choice
  • To establish an ssh connection, type something like
    ssh -p 4444 user@localhost
    
    and you should be routed through to the server in question

Credits

Thanks to my wife and boss for their patience while I scramble to get this working
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.