Tethering with libimobiledevice and ipheth
With the release of libimobiledevice it's now possible to natively tether the iPhone 3G and 3GS with firmware 3.0 or superior (Not tested with 4.0, now in developer release).
- Install usbmuxd
- Install libimobiledevice (previously libiphone)
- Install The iPhone Ethernet Driver (ipheth)
Though there are packages for all of these, the usbmuxd is the only requirement recommended to install from arch. Both libimobiledevice and ipheth are recommended to install from the git.
As said before usbmuxd is available from AUR and you can install it trough yaourt
# yaourt -S usbmuxd
You can get libimobile device from MCoyler site at github http://github.com/mcolyer
To get the source and install run the following commands. This should be pretty much straight forward
# git clone git://github.com/mcolyer/libiphone.git # cd libiphone # ./autogen.sh # make
As always check there are no errors so far; if everything looks good you are ready to install
# sudo make install
The following section is based in the tutorial available here http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
Again we will be getting a git repository, but this install is divided in two sections. Install the kernel module, and installing the pairing program.
Remember that this depends on libimobiledevice and usbmuxd, so install those first.
# git clone git://github.com/dgiagio/ipheth.git
Now we are good to install the Kernel Module.
# cd ipheth/ipheth-driver # make
If there are no errors you can load the module
# sudo insmod ipheth.ko
Now plug your iPhone and run dmesg. It should give you something like the following:
# ... # [ 8181.461000] ipheth 1-6:4.2: Apple iPhone USB Ethernet device attached # [ 8181.463067] usbcore: registered new interface driver ipheth # ...
If you have a hard time finding these lines run
# dmesg | grep ipheth
Now you should have a new network device, mine is called eth1 but it can be different. If you are ussing the NetworkManager Applet you should see a wired network device called Apple iPhone.
Just one step to go. Installing the pairing program. You will have to run this program every time you plug your iPhone, I really don't know why but otherwise it won't work.
# cd ipheth/ipheth-pair # make # sudo make install
This will install [b]ipheth-pair[/b] (the pairing program) in /lib/udev/ipheth-pair Not the most practical location since it's not in your PATH. With you iPhone plugged rud
If you don't get any errors you should now be able to connect to tether your iPhone with NetworkManager