Posted 2019-12-03
Another month, and we'll be living in the 2020s. And yet, 70% of the internet is still IPv4-only. (I'll be writing a story looking back on IPv6 progress the past decade in January.) So I thought: maybe I should draw a line in the sand and turn off IPv4 for my website. But then how will those 70% find me, and all the links to older content will be dead to much of the internet.
So instead, I decided to host some of the images on my old website muada.com and the new home of my blog illjitsch.com on an IPv6-only domain name. This means that browsers running on a system with only IPv4 connectivity will find that they can't load the image at the top of this page. There's no tricks involved: the browser encounters a cold hard error.
However, I didn't want to have a broken image show up on the page, because people might just think it's my HTML skills that are the problem, rather than them being stuck in the past IP-version wise. So the browser is instructed that when it can't load the image, it should load another. That has a nice big warning in neon colors. I also use an image map to let people click on the word "IPv6" to get to a page that explains what's going on. If javascript is turned off, there's just a line of text saying there is no IPv6 connectivity.
Note that browsers will cache images, so you may still see the correct skyline image even if you currently don't have IPv6 connectivity.
This is the HTML code. You can click on the images to try if they load manually.
<img src="http://images.iljitsch.com/images/skylinedenhaag2.jpg" width=1920 height=180 style="max-width: 1920px" alt="Image couldn't load - you don't seem to have IPv6 connectivity" onerror="this.onerror=null;this.src='/images/warn-img-no-ipv6.png';" usemap="#nov6link">
<map name="nov6link" id="nov6link">
<area shape="rect" coords="425,110,500,150" title="Click here for an explanation" href="http://iljitsch.com/ipv6-warning.php" />
</map>
I hope that more people will do the same so people start to actually notice that they're behind the times by having just IPv4 connectivity.