This is still the header! Main site

Only IPv6

2022/03/05
This is post no. 88 for Kev Quirk's #100DaysToOffload challenge. The point is to write many things, not to write good ones. Please adjust quality expectations accordingly :)

I had about half of my internet go down recently. It's a bit unsure whether it was the ISP's fault or just due to my router... it was solved eventually by a modem restart. Just figuring out that there is something wrong with my IPv4 was interesting itself. During the debugging process though, as an intermediate step before trying to restore everything... I did something that most IPv6 users generally don't end up doing a lot:

... let's just release our IPv4 address.

It's weird enough so that it might not work on e.g. NetworkManager based setups; I'm using dhclient directly though, so running dhclient -r does it for us.

There, no more IPv4 address.

And then... suddenly, everything stops working.

DNS

First of all, by default, there is a good chance that we're using IPv4 for name resolution... thus, ping6 google.com fails, since we don't know where google.com actually is. Meanwhile... many people know that 1.1.1.1 or 8.8.8.8 are DNS servers; how about the same on IPv6, anyone?

Well, in case you were wondering: Google is 2001:4860:4860::8888 and 2001:4860:4860::8844, while OpenDNS has 2620:119:53::53 or 2620:119:35::35. Definitely more messy, but not entirely impossible to remember?

So... let's put one of these into resolv.conf. And then... everything starts working, right?

The State of IPv6

Just quoting my earlier Fosstodon post here:

some sites that support ipv6: fosstodon, wikipedia, my own super-production-quality simonsafar.com running on a $5 VPS

some sites that don't: stackoverflow, github, duckduckgo, reddit

what the actual @#$% ... which decade is it again?

So... yeah... that.

Given how there are ISPs that don't even give you a real IPv4 address anymore, you would think that it is timely for some of the more "techie" corners of the internet to also open a stupid SSL port on IPv6. But... no.

Sadly, this is one of those things that are not easy to fix: normally, you just don't notice. Just the way you don't notice if your ISP doesn't give you IPv6 at all: everyone assumes that IPv4 works, and treats IPv6 as some kind of extra that might or might not be available. So, the server side also continues to be okay with being IPv4-only, reinforcing the notion of IPv4 being the Main Thing.

Whenever it works though... it's somehow fairly exciting to explicitly go only over IPv6. As if we were living in the Future or something.

Further reading

There is The world in which IPv6 was a good design, by apenwarr. (If you want to be sad about the current state of the world. Although... it's not that sad; we're making some progress. Just... very slowly.)

... comments welcome, either in email or on the (eventual) Mastodon post on Fosstodon.