Tether iPhone 3.0 to ubuntu/mac 9.04 via Bluetooth (No jailbreak required)
by Andre on Jun.18, 2009, under Linux, Mac OS X, iPhone/iPod
EDIT: Although I’m sure this would still work remember it is a few months old. You should be able to get the real 3.0 firmware from a google search and not have to download the gold master version. Same goes for the ATT carrier file, google it. The rest of the instructions should still work fine.
Let me start by saying this is on a macbook pro 3,1 but will work for anything else.
You will need iTunes period. So go find a friend with mac or windows.
Part of this guide is taken from the iphone3g-mods.com site.
First off let me tell you the limitations. I have only gotten this to work with Network Manager (not wcid). This means that wireless pretty much SUCKS for the macbook pro but will be fine for anything else that can use NM. So it’s a trade off. In my case I can be wired at work and tethered at home so I went for it.
The common method is to install a beta version of itunes 8.2 but thankfully a poster at the forums gave the following advice:
(Mac OS X Only) Shut down iTunes 8.2. Open the terminal and type the following and hit enter, this will prep itunes to deliver one of the the new files:
defaults write com.apple.iTunes carrier-testing -bool TRUE
If you are on windows (all links) then download the beta version here. Read below for registration/password.
Download the iphone carrier file for USA AT&T here (you may have to right click save as).
UPDATE: - You should now be able to do this with the normal 3.0 from itunes/apple instead of the gold master version below…
You will need to download the 3.0 Gold Master Final for the iPhone firmware. Head over to the member section of iphone3g-mods.com (easy and fast registration). After registering and activating download the proper image for your phone here. The password for the download is in the forum, if you can’t find it email me and I will send it to you.
Hook your iphone to Mac OS X via USB. It will appear in iTunes. Click on it and you will see the information page. Hold down the “Option” key and click “Update” and you will be prompted for the firmware image. Point it to the version you just downloaded (*.ipsw) and sit back while it installs.
After it is all set it will remount in iTunes and you will see the familiar home screen on the iPhone. Click back on the iphone icon in iTunes and “Option” click the Update button again. This time select the ATT carrier file (.ipcc). If you can’t select the file then you didn’t enter the command correctly in the terminal from above, so just go ahead and install the beta version. It will only take a few seconds to install this .ipcc file and it won’t have a confirmation.
If you are running a mac you are now done. Just go to Settings on the iPhone, General, Network and you will see Internet Tethering. Turn it on. If you wan’t to just use use the USB open network preferences on the mac and a new port will appear. Hit ok or apply and you are good to go. You can also turn on bluetooth on the phone and pair it via the icon in the menu bar. Open network settings again on the mac and you will see the PAN (bluetooth) port appear. Fairly straight forward on the mac.
Ubuntu:
Why oh why does apple hardware suck so hard with linux. You will get constant disconnects if your phone is more than a few feet away from the computer. But alas, it is still faster than pdanet or iphonemodem2.
If you are not on a mac congratulations, you have had fewer headaches.
Open the terminal and type:
sudo apt-get install blueman bluez-compat
This will remove wcid which hopefully isn’t a problem for most of you.
It will ask you to restart, please do.
Once Ubuntu is back up click on your bluetooth icon in the upper right (which is now managed by blueman)
IMPORTANT: Right click on the bluetooth icon and choose local services. Make sure to click the radio box that says “Network manager” instead of “blueman” under the network pane. This will allow Network Manager to take over the controlling of your connection (which is good). REBOOT AFTER THIS STEP!
Go to the bluetooth settings in your iphone (Settings > General > Bluetooth) and make sure they are on.
Hit the search button in blueman and you should see your iphone after a few seconds.
WARNING: This is where it gets flaky on the macbook pro. Best results I have has is to highlight the phone in blueman and hit “Bond”
Choose to auto generate a pass on the next option. Next. Now wait for the iPhone to ask you to type in the passphrase. Type in the 4 digit one that blueman gives you. VERY IMPORTANT. While they are joining eachother keep you eye on the computer. It will ask you if you always want to trust the iPhone (device name). Hit Always or else you will have trouble.
Always initiate the connection from the iPhone. In the bluetooth settings on the iphone you will now see your computer name listed and the words “not conencted” next to it. Click it. Wait a few and it will hopefully say connected. Look back to blueman and you will now see status bars on the iphone. Right click on your iphone in blueman. Choose “Setup”. Network access point is click by default so just hit “Next”.
Now head over to Network Manager and you should see “Auto benp0″. Click it to connect and give it a few to generate an IP. DONE enjoy surfing the internet through your data plan without jailbreaking. I have noticed quite a few speed gains over pdanet. Also, i noticed I got better results when i used openDNS’s servers (208.67.220.220 and 208.67.222.222).
If you have done everything correctly and Network Manager won’t take over the connection of you can see it and it says “not managed” or something of the sort you need to check out the following:
Open terminal and type: sudo gedit /etc/network/interfaces
see if you have bnep0 located there. if you do, comment out or delete that line. and reboot your machine.
This was late at night so please let me know if there are any crazy errors!

June 28th, 2009 on 10:30 pm
Hi,
I follow every steps.
But I can’t find the “Auto benp0″ on Network Manager.
I checked “sudo gedit /etc/network/interfaces”, and theres NO bnep0 there.
Please help. Many Thanks.
July 6th, 2009 on 1:06 am
Thank you for writing this up.
I got it to work once I rebooted both the computer and the iPhone. I tried a number of solutions so maybe just a fresh start works great.
I’m also on a macbook pro3,1 and I can’t complain
August 10th, 2009 on 3:39 pm
When I’m trying to bond, I get the dialog with autogenerated key on both iphone and PC (Lenovo S10 with jaunty), but the dialog on the PC which asks to confirm the code, does not respond when I click “Yes” to confirm (or “No” for that matter). So I’m not able to pair the two. Any suggestions? Would be very nice not having to boot xp for tethering.
August 10th, 2009 on 3:40 pm
Write-up appreciated, though. Thanks. Good to see that it is possible.
August 20th, 2009 on 6:15 pm
I am with Iman… Help would be apreciated
August 20th, 2009 on 9:02 pm
hey guys. did you have any trouble at the step below? and is network manager actually functioning well with your wireless card? let me know and we’ll move form there. i must note that benp0 will not show up in network manager until the phone is connected to blueman and in tether mode. as soon as you that happens bnep0 will show up in NM. connect to it and the blue bar will come on the iphone that shows tethering is active. type ifconfig and then iwconfig into the terminal and see if it is showing up there. keep me posted.
—>Right click on the bluetooth (blueman) icon and choose local services. Make sure to click the radio box that says “Network manager” instead of “blueman” under the network pane. This will allow Network Manager to take over the controlling of your connection (which is good). REBOOT AFTER THIS STEP!
August 27th, 2009 on 9:21 pm
Thanks, this worked perfectly on my Jaunty
September 14th, 2009 on 9:20 am
Hi–
Great write-up, but I’m with Lars on this one. I got my wife’s Samsung phone to pair, but if I try to pair my iPhone 3G (os 3.1) I cannot click the ‘Yes’ or ‘No’ buttons.
Both Blueman and iPhone show as paired, but the connection doesn’t work.
Thoughts?
Thanks,
Joe
September 21st, 2009 on 11:40 am
Does anyone know the method/protocol/technology for a tethered connection over a non-jailbroken iphone using USB instead of bluetooth. I want to tether via USB to my linux computer.
September 24th, 2009 on 11:15 pm
Andre: Thanks a bunch for this. I’ve tried about 5 other how-tos for tethering a non-jailbroken iPhone to Ubuntu, and this is the first that’s worked.
Iman, Jorge: If you’ve tried other approaches, it might mess up the result with this one. I tried methods that involved inserting text into files like /etc/network/interfaces and /etc/dhcp3/dhclient.conf, and then I tried this how-to with that text in, it didn’t work. It only worked when I removed that text and followed the steps here. So if you’ve tried other steps, I suggest undoing them. Good luck!
September 25th, 2009 on 7:13 am
Thanks Dale.
October 20th, 2009 on 2:43 pm
I’ve followed this tutorial exactly, checked the various files (/etc/network/interfaces, etc.), and still can’t connect to the Network Access Point.
I get “bnep setup failed” error.
Also, I noticed you talked about “tether mode” in a comment above. Can you elaborate on that?
Thanks!
A
October 21st, 2009 on 9:07 am
The tether mode I mentioned is when the phone gets its blue bar across the top of it letting you know that it tethering is working. What program is giving you the bnep error? Network Manager? Or are you trying to do this in the terminal?
December 11th, 2009 on 3:41 pm
Tether 3.1.2 to Linux via USB how do you do it
January 20th, 2010 on 6:16 pm
I have an HP Mini 110-1120, running 9.10 & a iPhone 3Gs. I saw the same issue as with the code confirmation as Lars but it connected anyway. Although I can tether successfully and I followed the points on NetworkManager, I can’t get NetworkManager to wake-up so I can’t get an IP address. If I do ifconfig, I see bnep0 and pan1, iwconfig tells me none of these have wireless extensions. Thanks for getting me to this point, can you help with the final step?
February 9th, 2010 on 11:17 am
hi,
my config - iphone 3G 3.1.3 and UBUNTU 9.10 installed on PC.
I have got the same problem as Richard.
IP 0.0.0.0 even after an hour.
April 4th, 2010 on 12:45 am
Ill be so happy when I get my ipad and get it jail broken, apparently its supposed to be ten times better then anything apple has put out before.
April 18th, 2010 on 6:47 pm
I’ve got the same issues as the ones above me.
Network Manager shows bnep0, but there is NO ipv4 address. There is an IPv6 address, but I don’t know if that helps me.
I’ve got TETHERING over the top of my screen on my iPhone, but the internet doesn’t work :/
Please help, thanks!
April 28th, 2010 on 1:47 am
just bought an iPhone 3G for my mom as a birthday present. she is very happy about her new iPhone.. ~
May 6th, 2010 on 10:44 am
i can say that the iPhone 3G has the best design and erconomics when it comes to 3G phones. .~
May 17th, 2010 on 11:20 am
i am happy to find it thanks for sharing it here. Nice wo
July 3rd, 2010 on 7:40 pm
Great write up. The iPhone is truly awesome and I don’t like being without it. This time last year I had jumped in a pool with my iPhone and it was dead. I had to wait 10 days before I was able to buya new one. The phone I had was a cheap go phone. I really love all the games that can be downloaded to the iPhone. The best part about the iPhone to me is the ability to check emails on the fly. Thanks for the information.
July 9th, 2010 on 10:49 pm
Iphone Jailbreak/unlock Software Unlock 2g, 3g 3GS Iphones. Whether you have a 2g, 3g or 3GS iphone, you can jailbreak or unlock it with our software. This includes the latest versions 2.0, 2.0.1, 2.0.2, 2.1, 2.2, 2.2.1, 3.0, 3.0.1, 3.1, 3.1.2 and 3.1.3 Get your iPhone 100% ….