A few days ago, NodeSpace offered this interesting challenge on Twitter:
So here I am, putting my money where my mouth is and taking this challenge. I’m not even an hour in and the results are… interesting. A little surprising, but definitely interesting.
Going all in on IPv6
For this challenge, I setup a separate network that is only IPv6. There is not a lick of IPv4 on this network. I’ve even completely disabled IPv4 on my Windows virtual machine.
Yep, there it is. Only IPv6 connectivity. Let’s jump in!
Microsoft is not IPv6 Ready
I started this test with deploying a brand new Windows 10 virtual machine. Windows 10 installed, but it appears that Microsoft’s onboarding services are not IPv6 enabled. The upside to this was that Windows thought I didn’t have Internet so it bypassed forcing a Microsoft Account – silver lining?
It only becomes more clear how lacking Microsoft is with IPv6. The upside is that Windows Update is IPv6 enabled so I can update Windows no problem.
Sadly, Windows Update is the only update mechanism IPv6-enabled. The Microsoft Store seems to be half there. It loads. There are images, screenshots load, you can even search for apps! But that’s as far as you can go. Installing a new app? Nope.
Same thing with trying to update apps. It just tells me that all my apps are up-to-date! Good to go!
If we try to get online to get some software, we find that the Microsoft Edge welcome page is not IPv6 enabled.
But I guess the upside is, Bing is IPv6-enabled?
I hate Edge so let’s get Firefox.
Well… nevermind. mozilla.org? Nope. 🙁 I had higher hopes for Mozilla.
I’ve been using the built-in Snipping Tool in Windows for these screenshots. Let’s get a better screenshot utility – ShareX.
Hey! Look at that! One of the first non-corporate websites IPv6-capable. Things are looking up! I’m finally getting a glimmer of hope for this challenge!
Oh come the F-on Microsoft! You’re printing money with Azure but IPv6 is too hard to deploy to even Github?! A bunch of nerds can’t figure this out? I guess I’m staying with Snipping Tool. Boo.
Something else that I noticed is Microsoft’s activation servers for Windows are also IPv4-only. No Windows activation on an IPv6 network!
Another Microsoft service that appears to rely heavily on IPv4 is SmartScreen. When you do manage to download even signed binaries, Windows complains it can’t scan them. Oh well. I bet even if I got malware it wouldn’t run (haha!)
So for work, we use Office 365. Let me try to check my email…
Hahaha. Nope. Office 365 is not IPv6-enabled. At least the front-end servers aren’t. I think I’ve seen some IPv6 addresses in Exchange headers but I could be wrong. It seems so weird that my Linux email server has more connectivity. But I digress.
Overall rating: 2/10. Microsoft is doing an abysmal job. No wonder they keep getting IPv4s from APNIC and AFRINIC for Azure in the US. Microsoft is gluttonus of IPv4. You can hit most Microsoft sites, but that’s about as far as you can go. Even if some of their services are IPv6 enabled, the most critical one, the login, is not and therefore it’s useless. The only reason Microsoft doesn’t have a 0 score is because some things work. I still find it hilarious Windows Update is IPv6-enabled while Windows Activation isn’t.
Google is IPv6 Ready
Right off the bat, I can tell you that Google (from what I can tell) is 100% IPv6 ready. Getting Chrome? Check. Google search? Check. Gmail? Check. YouTube? Check. Maps? Check. Meet? Check. Docs? Check. Well done, Google. Now, stop siphoning my data since I can’t get Firefox to protect me!
This was actually not a surprise as Google has been very proactive on deploying IPv6 over the years. Google has always been one of my go-to IPv6 tests just because it’s there. https://ipv6.google.com will always let you know if you are IPv6 connected.
This should come as no surprise as Google was an anchor for World IPv6 Day in January of 2011. However it is a bit ironic that Microsoft also participated, but look at where they’re at.
The upside is, I won’t be getting a lot of work done because I can watch YouTube!
Overall rating: 10/10. Google is a role model for how you should deploy IPv6. They seem to have a “no excuses” approach. Google isn’t whining that IPv4 is going away or getting more expensive. Google knows tech debt is expensive and it’s cheaper and easier to keep pace than letting yourself get so far behind that it becomes an emergency to implement.
My IPv6 is in-flight
I have been taking a Google-like approach. Basically no excuses. Every service, internal and external, needs to be on IPv6. No excuses. No exceptions. So far, here’s what we have IPv6 enabled on:
- Main website
- Customer Portal
- All shared hosting & reseller hosting servers (every site can have it’s own dedicated IPv6 address!)
- Employee VPN
- Internal Gitlab
- Active Directory domain (yes, our AD domain is IPv6 enabled & working!)
- Employee single sign on
So I guess I won’t be watching all YouTube since I can do work! Haha!
By December 2022, we will be at an estimated 95% IPv6 deployment. We will reach 100% deployment by mid-2023.
Initial thoughts on the IPv6 Challenge
This is definitely going to be a lot harder than I thought it was going to be, but the goal is to put the pressure on the hold outs and the sites that literally have zero excuses (Microsoft, Github, Twitter, Mozilla, just to name a few). But that’s why this is a challenge. The end goal is to shine a light on the services addicted to tech debt and eliminate some easy-to-remove tech debt.
Something that I’ve noticed too is that this feels like the early days of the Internet when people thought it was a fad that was going to go away. It was fun discovering new sites! I keep running into DNS errors as a lot of sites aren’t IPv6-enabled, but that’s the point of this experiment. And yes, there will be a lot of naming and shaming! 🙂
More to come as I explore the IPv6 Internet!