Tethering the iPhone for OS X

So I am leaving this week to drive 10,000 Miles, which I will be posting more about later. At the same time I am enrolled in college and have some course work to complete. I will of course have my laptop with me but I was a little nervous about being able to find wifi hotspots out in the middle of nowhere America.


I do have my iPhone of course but it does not have a decent text editor nor does it provide me an ideal platform for doing school work or prolonged web browsing. The solution? I needed to tether my laptop to my iPhone.


For those of you who are not familiar with tethering, it is when you use your cell phone signal as a method of connecting your laptop to the internet. In the case of the iPhone I will be using EDGE to get online. Its not fast but it will do the job.


Below I will provide very detailed instructions on getting this going, not because it is too hard but because there are a lot of uninformed people out there that might want to try this.


Instructions after the jump

These instructions are for OS X only.


1) Download installer app and load it onto your iPhone, there are instructions in the linking site.


2) From installer app on your iPhone install the program called community sources.

1.jpg


3) Again from installer app install the program called Tinyproxy


2.jpg



4) On your OS X laptop (you will need an airport card), Open up System Preferences from the Apple Menu and navigate to the Sharing tab.

3.jpg


5) Click on the internet tab once in there. Select share your connection from Built in Ethernet. Then select airport as your method of sharing. Under airport options you can name and secure your computer in the manner you prefer.


4.jpg5.jpg



6) Head back over to system preferences and open up Network settings. Its best to create a new location for this but you really dont have to. Select airport off the list and hit the TCP/IP Tab.


7) Configure IPv4 Manually and set your IP to "192.168.1.2" and your subnet to "255.255.255.0", you can leave all the other fields blank.


6.jpg


8) Now click on the proxies tab and turn on your Web Proxy, to the right of that you will enter your web proxy address enter "192.168.1.1:8080". You can also turn on the same settings for secure web proxy if you would like. 


7.jpg


9) Hit Apply Now


10) Back on the iPhone navigate to the settings menu then to the wifi menu. From here select your newly created network. Then press that little blue arrow to the right of the network name 



11) Change the IP Address to Manually and enter "192.168.1.1" in the IP field and "255.255.255.0" in the subnet field. Leave everything else blank.


9.jpg


If you did everything right you are now connected to the internet through your iPhone. Its slow but it gets the job done. Enjoy!

| Comments (36) | TrackBacks (1)

Categories

, , ,

1 TrackBacks

Listed below are links to blogs that reference this entry: Tethering the iPhone for OS X.

TrackBack URL for this entry: http://dragonforged.com/blog/mt-tb.cgi/13

Several months ago, I posted a way to connect a Mac notebook computer to the internet using a Bluetooth telephone. I have been using this method for quite some time, and it works flawlessly. One of the reasons I was Read More

36 Comments

David said:

At the end of step 5, be sure to press Start if Sharing is not running.

In step 11, you need to click on Static (aka Manually).

I couldn't get this to work. I did follow all the instructions, double checked and restarted the iPhone even.

I don't understand how I would be sharing through my Ethernet in the Sharing settings?

Kyle said:

The reason that you are sharing from the ethernet port is you are setting up a local IP range for the iPhone and the laptop so they can find eachother. To be able to use the laptop as a router you need to tell it to broadcast a network. When you setup the sharing off the ethernet port it will attempt to get all internet from that port. This is why you setup a proxy when the computer tries to get a website instead of going off the ethernet port it will look at the proxy IP (the iPhone) and request a website from that IP. When the website is requested from the iPhone it will attempt to get it from the wifi but when that fails it will default back to edge and send the data. I hope that clears up what is happening a little.

As far as why it isnt working I can't speak on that, every step is laid out the best I can. Make sure that the iPhone is connecting back to the laptop, and the laptop has the iPhones IP in the proxy with port 8080.

Skipper said:

Very nice work.

However, at this time, all I'm able to get in Safari are RSS feeds. When I attempt to load web pages I get a delay, then a message that the "server has stopped responding."

Is there supposed to be any visible activity on the iPhone when I try to access web sites?

I've followed the instructions carefully, including making sure the iPhone connects back to the laptop, and that the laptop has the iPhones IP in the proxy with port 8080. OSX Firewall is turned off. Rebooted both computer and iPhone.

Any ideas? I really want this to work.

Rob said:

This just worked for me no problem, but now I cannot replicate it. The speed was pretty good too. I switched back to my home network after turning "internet sharing" off. I am back on automatic, and everything is working normally. When I tried to go back to EDGE it would not work. I started from step one and it won't work.

What is the best way to switch back and forth to this network? Do you have to re-enter everything every time? I created a new location, but that didn't work.

Thanks

Kyle said:

A few tips that may get things rolling for you.

1) try visiting the site first on the iphone to catch the DNS info and make sure the iPhone drops to EDGE.

2) Toggle the internet sharing from start to stop.

3) Try pinging the iPhone from terminal by typing "ping 192.168.1.1" if you cant ping it then something is set up wrong int he network and they iPhone and laptop are not seeing eachother.

Boz said:

Hi everyone,

I had trouble to begin with too. I finally realized the picture on setting the IP addresses
on the secure web proxy must be done on web proxy.

Thanks

Skipper said:

Boz: Great catch! Its working fine now. Web Proxy must be selected and Secure Web Proxy must be deselected.

Kyle: Nice job!

Kyle said:

Sorry about the confusion with the picture, they both can be selected and inputed with the same information if you want to access secure websites like banks or online purchasing.

yourdeelight said:

hi
thanks for that - works fine tho sometimes if I turn the iphone off the connection to my ibook cuts out and wont reconnect to the net - maybe tinyproxy gets is nikas in a twist? would be nice to be able to see if tinyproxy is active and WHAT its doing.. I will try to ask about that with the authors..

mail wont work with my .mac account it says it cannot use port 993? do i need to re-configure mail somehow? sorry I know very little about all this

thanks again

dee

Kyle said:

Yea you will need to configure a different proxy for every port you plan on using. Right now it only redirects port 80 for http.

flyingcheesehead said:

I can't get it to work yet either... Safari first sits for a while before saying "...because the server stopped responding." If I try to load again, it just says I'm "not connected to the Internet."

I cannot ping the phone, but... Will the iPhone normally answer pings without additional software installed? I can connect the WiFi to the laptop just fine.

solflower said:

I have gone over the steps several times, checked every setting, have the iphone logged on to the laptop's wi-fi network, and am even able to ping the iphone from the laptop terminal. But absolutely no internet connection, I tried toggling the sharing start/stop button, i even tried visiting the site on the phone 1st before i try on the laptop but with no luck. I am on a macbook pro running 10.4.10 and the iphone is running 1.02, it is also been unlocked using iphonesimfree software and i am on t-mobile.

Thoughts?

Rodney said:

I tryed doing this with windows Vista & Firefox, since Firefox will allow you setup socks. I can ping the iphone, but i get the following error in firefox...Any suggestions would be very much appreciated


tinyproxy 1.7.0

The page you requested was unavailable. The error code is listed below. In addition, the HTML file which has been configured as the page to be displayed when an error of this type was unavailable, with the error code 14 (Bad address). Please contact your administrator.

Access denied

what4893 said:

Thanks for the write up. I took your steps and translated them onto Windows XP and FireFox and I got it working. It's a bit slow but I'm pulling up a web page as I'm writing this. The steps are very similar:

1. Follow the steps on Configuring the Host Computer from this page. http://www.microsoft.com/windowsxp/using/networking/expert/bowman_02april08.mspx
This will setup the ad hoc host under Windows. I used 192.168.1.2 as my static IP address on the host computer.

2. Once that is up and running you should be able to see your newly created wireless network on your iPhone. When you connect give yourself a static IP as mentioned above, something like 192.168.1.1.

3. Here's the trick, Windows doesn't let you configure an HTTP proxy for all network traffic like Mac OSX does, but under FireFox (which I used) and IE there are setting to configure an HTTP proxy. Google this for more info. Once you find the setting in your browser input the host address of 192.168.1.1 and port 8080 and forward all services through that proxy. You should be able to pull up web pages once those setting are applied.

Good Luck!

Curious said:

I had the same problem as rodney

With much work I got the network to work in windows xp.

I can ping the iphone

C:\Documents and Settings\Mario Felix>ping 10.3.3.1

Pinging 10.3.3.1 with 32 bytes of data:

Reply from 10.3.3.1: bytes=32 time=5ms TTL=64
Reply from 10.3.3.1: bytes=32 time=2ms TTL=64
Reply from 10.3.3.1: bytes=32 time=2ms TTL=64
Reply from 10.3.3.1: bytes=32 time=2ms TTL=64

Ping statistics for 10.3.3.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 2ms, Maximum = 5ms, Average = 2ms


But I get this error message
tinyproxy 1.7.0
The page you requested was unavailable. The error code is listed below. In addition, the HTML file which has been configured as the page to be displayed when an error of this type was unavailable, with the error code 14 (Bad address). Please contact your administrator.
Access denied


I wonder if I need to get into my terminal on the iphone and hack the config files of tinyproxy??

I tried to refresh my weather data on the iphone, so I know the internet connection is working

Please, this is the last step for me to attain happiness with my iphone
=====================
Here is what I did
in the wireless network properties
client for microsoft networks is off
file and printer sharing for microsoft networks is off
QoS packet Scheduler is on
WLAN Transport is on
Internet Protocol (TCP/IP) is on

Poperties
Use the following IP address
10.3.3.2
netmask
255.255.255.0
Default gateway
10.3.3.1

DNS server address
10.3.3.1


Tried to connect directly to an ip number in the browser
http://207.46.197.32 which is microsoft.com
same error

tinyproxy 1.7.0
The page you requested was unavailable.

Rodney said:

It must be Vista causing my problem, because I tried again just as what4893 suggested and i still get the same tinyproxy error 14

Rodney said:

Cancel that that last message....I did get it going by using 192.168.1.1 on the iphone and 192.168.1.2 on the vista laptop. But I'm sorry to report - it's slower than CHRISTMAS!!!! I was using a treo 750 3g phone prior to the iphone and was getting 1mb down/256kb up. This is more like 1kb up/1kb down. I may be switching back to the treo 750!

brian said:

Did everything and checked it like 5 times.... Just doesn't get a page... no error really. Said can't find the server www.google.com. Did a ping on 196.168.1.1 and it was active... Could ssh to 192.168.1.1.
Did a traceroute on www.google.com - said traceroute: unknown host www.google.com.
Phone does go to sleep and stops my ping... Not sure how to keep this on.. but even when ping is up, I can't get a page.

brian said:

This works now - Thank you. The issue is that I was using Firefox - which did not pickup the Mac OSX proxy information. As soon as I started using Safari - it worked fine.. That would have saved a few painful hours - but I couldn't be happier... BTW - Its faster than I expected it to be..... for web email....

micah said:

Like everything involving local area networking and this beautiful but flawed iPhone product, this is a tempermental fix...but thank you! We need someone to come along now (someone far brighter than me) and release an app to config this more painlessly!

iPhone said:

Read this, maybe can help us:http://www.howardforums.com/showpost.php?p=9934917&postcount=1

Robert Calek said:

Will this work with original airport card for G3/4 802.11B not .11G extreme?

TinyModder said:

FOr those of you getting a DENIED page from tinyproxy there is a config file for tinyproxy in /usr/local/etc/tinyproxy/tinyproxy.conf that only allows access from networks of 192.168.0.0/25 or 10.0.1.0/25. If you set up your network as anything other than those two networks it will not work without changing that file to allow your network.

Pagliotz said:

Hi, great job really!
My question is: does it works on Leopard too? I'm going to try this on my 10.5 and my iPhone 1.1.1 and I don't like to block or switch something I shouldn't...

Thank you for your help!

Pagliotz.

Marc said:

Hey this didn't work for me until i turned off internet sharing, and then clicked the airport button in the apple toolbar and clicked "create network" and used all the ip settings it says above - worked great :)

Michael said:

worked fine so far with me...

the only problem occured with Apples mail-prog, it just wouldn´t find a network, saying no internet connection, while some webpage was loading, and skype was also online.

Is there anything special about mail and its ports, 547 if i recall right?

moonfresh said:

Hey guys/gals,

I just got my iphone today and heard about "tethering." Can we get caught? Thanks.

t0ny said:

OpenSSH has a socks proxy server built in, so if you have openssh on your phone all you need to do is go to your macs command line and type "ssh root@iphoneip -D 9999". Then open up your browser and tell it your proxy server is localhost with port 9999. It will even work in other apps like irc, and instant messaging if they support socks 4/5.

--t0ny

Dzan said:

The tinyproxy server has a configuration file located at /usr/local/etc/tinyproxy/tinyproxy.conf

By default, the proxy only allow connections from 192.168.1.0/25, 127.0.0.1 and 10.0.1.0/25. Thats why it`s not working for you, you are in a different LAN.

Just configure correctly and restart but be advised that it`s very slow...

James said:

I'm on 1.1.3 and Leopard 10.5.1. Can the steps be updated to reflect the new software.

I get the same problem re-connecting as others have had. It would be most useful to have a permanent configuration that can be selected. There seems to be a problem with internet sharing not showing ports.

Is there some more recent site that is more current that this one on the tethering issue?

MBK said:

Note: I found success by using the vanilla instructions plus disabling IPV6 in the AirPort settings. By default, IPV6 is set to AUTO, and this seems to throw a spanner in the works.

Also, sad to report, it's almost uselessly slow compared to standard 2.5G DUN connection.

steadybootleggin said:

the only way to get this to work on leopard is to already have it set up with tiger then, upgrade to leopard

FJP said:

Great Work!

happy tetherman said:

I got this working perfectly in OS X 10.5.2, you don't need to set up in leopard first and then upgrade, at least in my experience I didn't. The guide is a little off in terms of screencaps and all, but all the same fields are there if you just poke around, Apple moved some of the network settings between 10.4 and 10.5.

Now, does anyone know how to also set up proxies so that email and ftp on the laptop can also be tethered?!

Phil Bridges said:

I found I had to set the DNS on the Mac network setting to 192.168.1.1 to make it work, however, I'm delighted with this solution, seems a lot easier than faffing about with SOCKS and command line stuff.

Just needs some clever whiz kid to write a little menu button that toggles the proxy's availability on and off now!

Leave a comment

About this Entry

This page contains a single entry by Kyle published on September 16, 2007 9:36 PM.

Verbal Threats = Terrorism? was the previous entry in this blog.

My Macworld Opinions is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.