Skip to content

How to Retire IPv4 Addresses and switch to IPv6 only for Strato Domains

As you may have heard, AWS is now charging for public IPv4 addresses, which have become scarce. While this is not so much about the cost, this really triggered me investigating if the toolstacks I am using would all work with IPv6, with a view to turn off IPv4 as early as possible.

One of the tasks is to modify the DNS entries, such that the IPv4 address will no longer resolved, and the DNS record only contains the IPv6 address. This can be done by removing the “A RECORD” from your DNS entry, and ensuring the AAAA record points to your IPv6 address. For some providers, like gandi, this can readily be done. Changing them on strato, who I am generally very happy with, however, caused a small headache:-

You can either chose to assign your own IPv4 address (which is the one you want to retire, right), or assign it to a Strato supplied address. Now, you can edit the AAAA record, but that will in the end not result in a successul configuration:-

  • Clients using IPv4 DNS results will contact the strato webpage, while
  • clients resolving using IPv6 will connect to my machine

It is pretty unclear what will happen to what user. So, I contacted the helpdesk, asking if there would be a facility to delete the A record alltogether. That, however, was not possible. So, a little bit of money and hogging a scarce IPv4 address just because the web page did not cater for that?

It took me a few days until I found the solution: DynDNS, a dynamic DNS protocol usually only used to make your network at home visible under a name of your chosing. DynDNS does allow you to specify if your IP address dynamically, and, the best thing, it allows you to do that for IPv4, IPv6, or both.

I chose ddclient, which was also available as a package on the OS I use. For strato, the only setting that required attention were

  • setting the protocol to dyndnsv2
  • retrieving the IP address from the correct network adapter (which I determined to looking at the output of ip addr)
  • then editing /etc/ddclient.conf and replacing use=if with usev6=if (which means use interface to determine the IP address)

Voila, no more IPv4 entry. Not 100% sure how I can test global connectivity, though, but it looks solid.