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