Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,771,848 Members 36,403 Now Online
XDA Developers Android and Mobile Development Forum

IPv6 - now working on Android! (no matter if your provider supports it)

Tip us?
 
bagers
Old
(Last edited by bagers; 25th September 2011 at 10:04 PM.) Reason: Update
#1  
Senior Member - OP
Thanks Meter 14
Posts: 120
Join Date: Jan 2010
Default IPv6 - now working on Android! (no matter if your provider supports it)

I searched xda-developers a lot about IPv6 (Android related) but only questions, no one seamed to get it to work. Now I got IPv6 working on my Android phone and I want to share it.

Of course I can not held any responsibility for anything. I am no developer, just a user, who used Google a lot and who put a lot of single things together. Rather I am not sure why it works, but it does work.

Quick guide:
1. find out if Linux (Debian) is available for your Android phone and learn how to use it
2. find out if a tun module or a kernel with tun support exists for your phone
3. learn how to use IPv6 on Windows (if you are a Windows user) (I was happy with gogo Client at http://gogonet.gogo6.com/page/download-1) and on normal Linux (normal in meaning of running on PC) (I used miredo first)
4. learn what aiccu is and how to use it on PC
5. install Linux (Debian) on your phone
6. load the tun module (or use a kernel with tun support)
8. register aiccu
9. request tunnel at aiccu
10. install aiccu on your rooted Android phone (with tun) inside Debian chroot
11. done, test "ping6 ipv6.google.com" inside console, should work, and test in Android stock browers, it should also work!

Comprehensive guide:

First of all, before you start fiddling with Android and IPv6, which is quite tricky, I highly recommend to learn how to use IPv6 on Windows (only if you are a Windows user) and on some Linux distribution (Debian or Ubuntu recommend, as Debian is imho the most easy to get Linux for our Android phones).

On Ubuntu, which was running in VMware, I installed a package called miredo.(used this guide https://wiki.ubuntu.com/IPv6 look for miredo) It is a great piece of software. I just installed it and afterwards an apache2 webserver and the server was reachable from outside the virtual machine. Furthermore I did run another virtual machine with XP, both virtual machines, XP and Ubuntu where behind NAT (standard network configuration in VMware, setting up port forwardings is quite complicated) and also my router has a NAT and Windows firewall on host computer was also activated. Still... From the XP virtual machine I could access the apache2 running on Ubuntu. Great. You do not need VMware to learn how to use IPv6, of course, you can also use real hardware, but for me, VMware is very convenient.
Also learn what aiccu is and how to use it (https://wiki.ubuntu.com/IPv6#Get_connected_with_SixXS).

After you just learnt how to use IPv6 on normal Linux (normal refers to the normal end user version, no hacked stuff for Android) you have to learn how to use Linux (Debian) on your Android phone.
I used this guide http://forum.xda-developers.com/show....php?t=1254283 but you will need another guide for your phone, because this is phone specific. Google the name of your phone in conjunction with chroot, Android, Linux, Debian or search xda. It may not be possible to install Linux on all Android phones. I do not know that and I can not help you with that because I am a Linux noob. Of course, maybe you don't have to use Debian on your phone, I just like Debian because imho you'll find most informations in conjunction with Android about it and because it's more newbie friendly in general compared to other Linux distros. So maybe you prefer some other distro.

Then you need to get a tun module for your phone/kernel or a kernel with tun support for your kernel. Load the module.

You need to register for aiccu and also request a tunnel.

Afterwards, last step, install aiccu. I think I edited aiccu.conf and entered username and password.

ping6 inside Debian chroot is working for me and also in Android stock browser I can access IPv6 websites.

There are quite a lot requirements and things to learn before, I am sorry, because I can not ease this process.

Right now I also can not tell you nothing about how stable this works, how reliable it is or what the benefits are.

Update:

Working - 3g connection on phone (everything only IPv6 of course)
- apache2 webserver
- SSH server - access with Putty
- SFTP - access with FireFTP or WinSCP
The Following 2 Users Say Thank You to bagers For This Useful Post: [ Click to Expand ]
 
thotypous
Old
#2  
Junior Member
Thanks Meter 5
Posts: 15
Join Date: Jan 2011
Default Native aiccu for Android

Some time ago, I hacked together a native aiccu port for Android. I only tested it with AYIYA tunnels. It worked greatly both on Android 2.1 in a Xperia X10 mini pro and on Android 2.3 in a Galaxy Tab.

To use, copy the aiccu-android-bin.7z contents to your phone and put your config at /data/aiccu/aiccu.conf.

Please note that you HAVE to use the provided "ip" executable. The one provided with busybox is incomplete for usage with aiccu, and won't work.

The aiccu-android-src.7z contains the source code if someone is interested in hacking deeper. In particular, testing heartbeat tunnels and seeing if any changes are needed to the source would be nice. Also, cleaning up and trying to push upstream would be great.
Attached Files
File Type: 7z aiccu-android-bin.7z - [Click for QR Code] (99.8 KB, 297 views)
File Type: 7z aiccu-android-src.7z - [Click for QR Code] (150.7 KB, 143 views)
The Following 2 Users Say Thank You to thotypous For This Useful Post: [ Click to Expand ]
 
bmeyer40
Old
#3  
bmeyer40's Avatar
Junior Member
Thanks Meter 0
Posts: 20
Join Date: Apr 2011
Nice thx

Sent from my MB860 using Tapatalk
Current:
-Samsung Galaxy S II Skyrocket w/4.1.2 & unlocked
-Samsung Galaxy Tab 7.0 Plus 6210 w/4.1.2

Previous:
-Samsung Captivate w/CM7
-Motorola Atrix 4G w/2.3.4 rooted & unlocked
 
bagers
Old
#4  
Senior Member - OP
Thanks Meter 14
Posts: 120
Join Date: Jan 2010
Quote:
Originally Posted by thotypous View Post
Some time ago, I hacked together a native aiccu port for Android. I only tested it with AYIYA tunnels. It worked greatly both on Android 2.1 in a Xperia X10 mini pro and on Android 2.3 in a Galaxy Tab.

To use, copy the aiccu-android-bin.7z contents to your phone and put your config at /data/aiccu/aiccu.conf.

Please note that you HAVE to use the provided "ip" executable. The one provided with busybox is incomplete for usage with aiccu, and won't work.

The aiccu-android-src.7z contains the source code if someone is interested in hacking deeper. In particular, testing heartbeat tunnels and seeing if any changes are needed to the source would be nice. Also, cleaning up and trying to push upstream would be great.
Very nice. This simplifys the process a lot.

Unfortunately this does not work on my x8. Maybe because busybox is preinstalled with my ROM?

When I do acciu test, it complains about the ip executable. But I already copied both.

Can I get ride of the old buybox ip? Should it work on x8 as well?
 
elgato99
Old
#5  
Junior Member
Thanks Meter 4
Posts: 29
Join Date: Jan 2012
T-Mobile USA has an beta native IPv6 service for ICS Nexus S and Galaxy Nexus UMTS phones. You can google the details. It is natively supported on the stock ICS software now using the UMTS network.
 
bagers
Old
#6  
Senior Member - OP
Thanks Meter 14
Posts: 120
Join Date: Jan 2010
New solution:
https://code.google.com/p/gogodroid/wiki/GogoDroid

drawback:
needs ROM (kernel) with TUN (but any app could null that dependency)
The Following User Says Thank You to bagers For This Useful Post: [ Click to Expand ]
 
dslite
Old
(Last edited by dslite; 27th May 2012 at 11:31 AM.) Reason: additional info
#7  
Junior Member
Thanks Meter 0
Posts: 1
Join Date: May 2012
First of all thanks for your work of putting all these information together!
I am using a Galaxy Nexus which allready has tun built in to the stock rom (ICS 4.0.4).
Unfortunately I cant get gogoDroid working. It seems it doesnt recognize the built in tun functionality.
So I tried it with the tun.ko module - no luck there neither, since there is no compiled version for the IMM76I Build :(
Any suggestions on how to get it working anyways?

Edit: I also found another app which supports 6to4 tunneling called IPv6Config - you can find it on the Play market. Unfortunately 6to4 doesnt get thru NATted mobile networks...
 
web-troubles
Old
#8  
Junior Member
Thanks Meter 1
Posts: 2
Join Date: Nov 2012
Hello all !

Sorry to dig out this old thread again but here some infos about running IPv6 tunnels on a rooted Android phone.

I wrote a little app to simplify the installation, configuration and running the binaries posted by thotypous:

The app is called Androiccu and you can find it in the google market. Sorry, I'm not old enough to be allowed to post a link to it.

It's still in an early development stage but it does basically work for me and I would enjoy some feedback about success or failure.

This application downloads and installs the binaries, creates a config file with your login infos and can start and stop aiccu. All from a GUI, no need to play on a terminal.

Cheers and have fun testing.
The Following User Says Thank You to web-troubles For This Useful Post: [ Click to Expand ]
 
elgato99
Old
#9  
Junior Member
Thanks Meter 4
Posts: 29
Join Date: Jan 2012
why tunnel when you can have native ipv6 https://sites.google.com/site/tmoipv6/lg-mytouch
 
web-troubles
Old
#10  
Junior Member
Thanks Meter 1
Posts: 2
Join Date: Nov 2012
Quote:
Originally Posted by elgato99 View Post
why tunnel when you can have native ipv6
Because most mobile network operators don't provide native IPv6 yet. You're among a few lucky ones that has such an operator. I'm not. When i'm at home i don't need this app as my router provides natively an IPv6 address to my phone over the wifi network. But on my router itself i have to run a tunnel as well as my provider is also not able to provide IPv6.

The biggest aim of this application is to become quickly obsolete when finally all mobile network operators will be able to provide IPv6 natively.

Best regards,

Martin

Tags
ipv6
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes