2

I'm attempting to serve a website from a machine that only has an IPv6 address. I have purchased a domain name and changed the AAAA record of the DNS resource record to my IPv6 address, and have verified that this change has been updated using nslookup --query=AAAA example.com. However, when I navigate to my page, it resolves to the default site provided by my domain registrar, which is hosted at the IPv4 address in the A record.

In addition, I've tried to set the A record to an invalid IPv4 address, but no dice.

How can I force the use of the IPv6 address?

14
  • Wait, there's an A record pointing somewhere useless (or more ideally, no A record at all) and the registrar's still responding with an A record that points to their own systems? What's the nslookup show when querying for A (or better yet, ANY)? Jun 12, 2015 at 2:09
  • Right; nslookup -query=A foo.com gives the useless IPv4 address, ping foo.com gives the default IPv4 address of the registrar. nslookup -query=ANY gives expected results.
    – user14717
    Jun 12, 2015 at 2:13
  • 2
    If it's IPv6-only, make sure you don't have an A record, not even a "fake" one. Jun 12, 2015 at 2:43
  • 2
    @MichaelHampton: I'm using 1and1.com; there is no option to delete the A record, and if you leave it null it comes back to the default IPv4 address. . .
    – user14717
    Jun 12, 2015 at 2:55
  • 2
    Well then, that's a great argument for hosting your DNS elsewhere. :) And probably everything else; I've never heard a good word about 1and1. Jun 12, 2015 at 2:59

1 Answer 1

5

If you want to force all users accessing a domain to do so over IPv6 rather than IPv4, the correct way to do so is to simply not publish any A record.

From the additional information provided in the comments I understand that your current DNS hosting provider does not support a correct configuration. That means you'll have to switch to another DNS hosting provider.

If for some reason you want to stay with the current provider, there is another way to force clients to use IPv6 even when there is an A record. You can point the A record to an IPv4 address which responds with a TCP RST packet to every connection attempt. Most clients with IPv6 access will switch to IPv6 if they get a RST over IPv4.

But don't just point your A record to some random IPv4 address which happens to be responding with RST at the moment. You need to ensure that you have an agreement with whoever is responsible for the host on the IPv4 address you point to, before you start using it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .