Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What are the steps to use iPhone 3G Internet tethering via USB on Ubuntu 10.04?

What software do I need to install on Ubuntu for this? The phone is detected and I am able to play its songs in Ubuntu, also the tethering works fine on Windows OS.

share|improve this question
up vote 3 down vote accepted

I had written a post long ago on this, writing it here as well.

Get the source from Diego’s git repository. If you don’t have git installed, open the terminal and type:

sudo apt-get install git-core

Once git is installed, get the source for the drivers

git clone git://

The output should be something like

sathya@shaman:~$ git clone git://
Initialized empty Git repository in /home/shaman/ipheth/.git/
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 10 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (10/10), 8.11 KiB, done.

Now, compile the pairing program.

cd ipheth/ipheth-pair


You should get an output like:

sathya@shaman:~/ipheth/ipheth-pair$ make
gcc -Wall -O2 ipheth-pair.c -o ipheth-pair -liphone

Next, type:

sudo make install

You should get an output like:

sathya@shaman:~/ipheth/ipheth-pair$ sudo make install
install -m 0755 ipheth-pair /lib/udev/
install -m 0644 90-iphone-tether.rules /etc/udev/rules.d
/sbin/udevadm control –reload-rules

Compile the Kernel driver:

cd ipheth/ipheth-driver


You should get an output like:

sathya@shaman:~$ cd ipheth/ipheth-driver
sathya@shaman:~/ipheth/ipheth-driver$ make
make -C /lib/modules/2.6.28-15-generic/build M=/home/sathya/ipheth/ipheth-driver modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.28-15-generic’
CC [M] /home/sathya/ipheth/ipheth-driver/ipheth.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/sathya/ipheth/ipheth-driver/ipheth.mod.o
LD [M] /home/sathya/ipheth/ipheth-driver/ipheth.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.28-15-generic’

The kernel module is ready. Now load the module.

sudo insmod ipheth.ko

Now connect the iPhone. The iPhone should get detected, as shown in the picture.

enter image description here

To confirm that the USB Ethernet driver is in use, open the terminal and type

dmesg | grep iPhone

You should get an output like:

sathya@shaman:~/ipheth/ipheth-driver$ dmesg | grep iPhone
[22871.808469] ipheth 2-2:4.2: Apple iPhone USB Ethernet device attached

Switch on tethering.

enter image description here

To confirm that we have indeed connected using iPhone let’s have a look at Network Manager connections:

enter image description here

share|improve this answer
You should make this into a small blog post for the SU Blog, Sathya. +1 for awesomeness! :) – studiohack Nov 23 '11 at 16:11
I would like to add that I needed to install "libimobiledevice-dev" package in order to be able to make ipheth-pair. – juanefren Jun 7 '12 at 0:12

All I had to do was run sudo apt-get install ipheth-utils. Nothing else worked, haha, seriously though.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.