[How-To] Access Google Sites and Services via IPv6


Google, the largest search engine today (and the “Microsoft” of the cyberworld), 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.  All IPv6 access must come from a reliable network that they have to pre-approve, this is the Google over IPv6 project.

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.

Source: Google over 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.

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

  1. Go to Synaptic (System -> Administration -> Synaptic Package Manager)
  2. Search for “dnsmasq” and install it
  3. Open a Terminal (Accessories -> Terminal)
  4. Type: gksu gedit /etc/dnsmasq.conf
  5. Look for:
    #listen-address=
  6. Change it to:
    listen-address=127.0.0.1
  7. Look for:
    #server=/localnet/192.168.0.1
  8. Add the following after/below it:
    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
  9. Save and close the file
  10. Still in the Terminal, type: gksu gedit /etc/dhcp3/dhclient.conf
  11. Look for:
    #prepend domain-name-servers 127.0.0.1;
  12. Uncomment that line by removing the sharp (‘#’) sign
  13. Save and close the file
  14. Still in the Terminal, type: gksu gedit /etc/resolv.conf
  15. Before any other nameserver entries, add this:
    nameserver 127.0.0.1
  16. Save and close the file
  17. Still in the Terminal, 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 to solve this:

  1. Open your NetworkManager and go to your network/connection profile (example: eth0)
  2. Open/edit it and go to the “IPv4 Settings” tab
  3. In the “DNS servers:” field, simply add this before any other DNS entries you may have:
    127.0.0.1
  4. Click “Apply”, then close it.

This way, every time 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 your terminal you will see the following if you type: ping6 www.google.com

user@pca:~$ ping6 www.google.com
PING www.google.com(tx-in-x68.1e100.net) 56 data bytes
64 bytes from tx-in-x68.1e100.net: icmp_seq=1 ttl=59 time=231 ms

These are the Google sites and services tested to be accessible via IPv6 (as of this article):

  1. Google Sites: https://sites.google.com
  2. Google Translate: https://translate.google.com
  3. Google Earth: https://earth.google.com
  4. Google Moderator: https://moderator.appspot.com
  5. Google FeedBurner: https://feedburner.google.com
  6. Google YouTube: https://youtube.com
  7. Google App Engine: https://appengine.google.com
  8. Google Code: https://code.google.com
  9. Google Docs: https://docs.google.com
  10. Google Health: https://health.google.com
  11. Google Mail (“gmail”): https://mail.google.com
  12. Google Wave: https://wave.google.com
  13. Google Blogs: https://blogsearch.google.com
  14. Google Images: https://images.google.com
  15. Google News: https://news.google.com
  16. Google Maps: https://maps.google.com
  17. Google Picasa: https://picasa.google.com
  18. Google Picasa Web Albums: https://picasaweb.google.com
  19. Google Accounts: https://www.google.com/accounts
  20. Google Ad Manager: https://www.google.com/admanager
  21. Google AdSense: https://www.google.com/adsense
  22. Google Analytics: https://www.google.com/analytics
  23. Google Calendar: https://www.google.com/calendar
  24. Google Finance: https://www.google.com/finance
  25. iGoogle: https://www.google.com/ig
  26. Google Reader: https://www.google.com/reader/
  27. Google Search: https://www.google.com
  28. Google Alerts: https://www.google.com/alerts
  29. Google Apps: https://www.google.com/apps
  30. Google Chrome: https://www.google.com/chrome
  31. Google Directory: https://www.google.com/dirhp
  32. Google Mars: https://www.google.com/mars
  33. Google Mobile: https://www.google.com/intl/en/mobile
  34. Google Moon: https://www.google.com/moon
  35. Google Sky: https://www.google.com/sky
  36. Google and Space: https://www.google.com/space
  37. Google Talk: https://www.google.com/talk

Not yet accessible via IPv6:

  1. Google AdWords: https://adwords.google.com
  2. Google Scholar: https://scholar.google.com
  3. Google Orkut: https://www.orkut.com

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 Lind here.

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 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.


 

Source:


Share and Enjoy

  • Google Plus
  • Facebook
  • Twitter
  • StumbleUpon
  • Tumblr

flattr this!