Google, the largest search engine today (and the “Microsoft” of the cyber-world), is slowly deploying IPv6 across their sites. But even if you are already connected to IPv6, you will still not get an IPv6 Google.
Why? Their current IPv6 implementation is currently in its testing phase (or experiment if you will). All IPv6 access must come from a reliable network that they have to approve, this is the Google over IPv6 project.
Follow up:
How it works
Google over IPv6 uses the IPv4 address of your DNS resolver to determine whether a network is IPv6-capable. If you enable Google over IPv6 for your resolver, IPv6 users of that resolver will receive AAAA records for IPv6-enabled Google services.
Normally, if a DNS resolver requests an IPv6 address for a Google web site, it will not receive one…
…but a DNS resolver with Google over IPv6 will receive an IPv6 address, and its users will be able to connect to Google web sites using IPv6.
So unless you are using a DNS with Google over IPv6 enabled, the only IPv6 Google website you will be able to use is ipv6.google.com. That’s sad! Especially if most of the sites you visit are still hosted on non-IPv6 enabled servers (like this blog that you are reading).
Fortunately, there are many good-hearted people and corporations in the world today offering free access to their IPv6 DNS. We have Gogo6.com’s Freenet6 DNS and Hurricane Electric’s Tunnelbroker.net DNS.
But how do we use these IPv6 DNS? Let me show you how.
Ubuntu Linux way
Go to Synaptic (System -> Administration -> Synaptic Package Manager)
Search for dnsmasq and install it
Open a Terminal (Accessories -> Terminal)
Type gksu gedit /etc/dnsmasq.conf
Look for: #listen-address= and change it to: listen-address=127.0.0.1
Look for: #server=/localnet/192.168.0.1 and add the following after/below it (let’s use HE’s IPv6 DNS 2001:470:20::2)
Code:
server=/google.com/2001:470:20::2
server=/google.com/74.82.42.42
server=/www.google.com/2001:470:20::2
server=/www.google.com/74.82.42.42
server=/youtube.com/2001:470:20::2
server=/youtube.com/74.82.42.42
server=/www.youtube.com/2001:470:20::2
server=/www.youtube.com/74.82.42.42
Type gksu gedit /etc/dhcp3/dhclient.conf
Look for: #prepend domain-name-servers 127.0.0.1; and uncomment it (remove the ‘#’ sign)
Type gksu gedit /etc/resolv.conf
Add this before any other nameserver entries: nameserver 127.0.0.1
Type sudo /etc/init.d/dnsmasq restart
What happens is this: we are using dnsmasq to reroute all queries to google.com to HE’s IPv6 DNS which has been confirmed to be Google over IPv6 enabled. Any Google services that are not yet using IPv6 or not yet part of the project will simply use IPv4, like the Youtube entry we added (read: YouTube is the IPv6 team’s number one priority right now).
But if you are not using DHCP, then the DHCP edits you did previously will not work. Or if you are using NetworkManager to manage your connection settings, then it will only overwrite your resolv.conf file. Here’s what you should do:
Open your NetworkManager and go to your network/connection profile (example: eth0)
Open/edit it and go to the “IPv4 Settings” tab
In the “DNS servers:” field, simply add this 127.0.0.1before any other DNS entries you may have.
Click “Apply", then close it.
This way, everytime the NetworkManager connects and overwrites the resolv.conf file, it will always add 127.0.0.1 to the file. Just like in the DHCP edits you did above, it ensures that the listening IP being used by dnsmasq is the first DNS your system will check when you are browsing.
Now if you type: ping6 www.google.com, you will see this:
As far as I know, it is not possible to host a “sub-folder” in another server, thus we can safely assume that all Google sites with this URL format: www.google.com/{sitename} are IPv6 enabled. However, Google sites and services that are using a subdomain.google.com URL or any other, can either be IPv6 already or not. Subdomains can easily be pointed to a totally different server somewhere in cyberspace.
How about Windows users?
For those who are still using Windows XP, you are out-of-luck. Even if you can add an IPv6 DNS, it will not work, I tried it myself and it was confirmed by Mikael Lindhere.
Update for Windows XP users: I found a way to do it and I will be posting it here soon! The life of your too old OS just got a little bit longer
For Windows 7 users, you will have to wait until I can get a Win7 OS or a machine that I can break. Or better ask the experts in IPv6 like the guys and gals of the gogo6 Community.
Update 2010-02-25: Sorry WinXP users you really have to upgrade to (recommended) Windows 7. The method works but it is not consistent - sometimes it works, sometimes not. It is also very different per machine (it is weird!) even if you have everything duplicated perfectly.
It will only invite frustration and plenty of questions. Again, I recommend upgrading to Windows 7 if you want a consistent and stable IPv6 capability.
Update 2010-09-20: Google sites, Google translate, Google earth, Google moderator, and Google FeedBurner are now all IPv6 enabled.