I’m on an FTTH connection that has both IPv4 and IPv6 assigned to it. My ISP is Airtel and my closest Cloudflare datacentre is BLR. I realised that querying for DNS records to any of the 3 Cloudflare DNS services over IPv4 works perfectly fine, but it often fails on IPv6. By often, I mean 95% of the time. On the other hand, it works perfectly fine Google DNS be it IPv4 or IPv6.
By IPv4 and IPv6, I mean the IPv4 / IPv6 DNS server I am connecting to. My network is dual-stack itself throughout the test. Here’s some output from my tests:
Google DNS IPv4
user@host:~$ time nslookup cloudflare.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.113s
user 0m0.004s
sys 0m0.017s
user@host:~$ time nslookup cloudflare.com 8.8.4.4
Server: 8.8.4.4
Address: 8.8.4.4#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.107s
user 0m0.013s
sys 0m0.009s
Cloudflare DNS IPv4
user@host:~$ time nslookup cloudflare.com 1.1.1.1
Server: 1.1.1.1
Address: 1.1.1.1#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.030s
user 0m0.017s
sys 0m0.004s
user@host:~$ time nslookup cloudflare.com 1.0.0.1
Server: 1.0.0.1
Address: 1.0.0.1#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.029s
user 0m0.013s
sys 0m0.008s
user@host:~$ time nslookup cloudflare.com 1.1.1.2
Server: 1.1.1.2
Address: 1.1.1.2#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.032s
user 0m0.017s
sys 0m0.005s
user@host:~$ time nslookup cloudflare.com 1.0.0.2
Server: 1.0.0.2
Address: 1.0.0.2#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.032s
user 0m0.005s
sys 0m0.017s
user@host:~$ time nslookup cloudflare.com 1.1.1.3
Server: 1.1.1.3
Address: 1.1.1.3#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.033s
user 0m0.007s
sys 0m0.014s
user@host:~$ time nslookup cloudflare.com 1.0.0.3
Server: 1.0.0.3
Address: 1.0.0.3#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.034s
user 0m0.010s
sys 0m0.011s
Google DNS IPv6
user@host:~$ time nslookup cloudflare.com 2001:4860:4860::8888
Server: 2001:4860:4860::8888
Address: 2001:4860:4860::8888#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.094s
user 0m0.014s
sys 0m0.007s
user@host:~$ time nslookup cloudflare.com 2001:4860:4860::8844
Server: 2001:4860:4860::8844
Address: 2001:4860:4860::8844#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.102s
user 0m0.000s
sys 0m0.021s
Cloudflare DNS IPv6
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1111
;; connection timed out; no servers could be reached
real 0m15.018s
user 0m0.009s
sys 0m0.014s
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1001
;; connection timed out; no servers could be reached
real 0m15.019s
user 0m0.009s
sys 0m0.014s
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1112
Server: 2606:4700:4700::1112
Address: 2606:4700:4700::1112#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
;; connection timed out; no servers could be reached
real 0m15.032s
user 0m0.010s
sys 0m0.013s
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1002
Server: 2606:4700:4700::1002
Address: 2606:4700:4700::1002#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.050s
user 0m0.013s
sys 0m0.009s
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1113
Server: 2606:4700:4700::1113
Address: 2606:4700:4700::1113#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
;; connection timed out; no servers could be reached
real 0m15.037s
user 0m0.017s
sys 0m0.011s
user@host:~$ time nslookup cloudflare.com 2606:4700:4700::1003
;; connection timed out; no servers could be reached
real 0m15.016s
user 0m0.012s
sys 0m0.016s
Google DNS via hostname
user@host:~$ time nslookup cloudflare.com dns.google
Server: dns.google
Address: 2001:4860:4860::8888#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:85e5
Name: cloudflare.com
Address: 2606:4700::6810:84e5
real 0m0.094s
user 0m0.018s
sys 0m0.006s
Cloudflare DNS via hostname
user@host:~$ time nslookup cloudflare.com one.one.one.one
Server: one.one.one.one
Address: 2606:4700:4700::1111#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m1.096s
user 0m0.013s
sys 0m0.013s
user@host:~$ time nslookup cloudflare.com 1dot1dot1dot1.cloudflare-dns.com
Server: 1dot1dot1dot1.cloudflare-dns.com
Address: 2606:4700:4700::1001#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m0.078s
user 0m0.014s
sys 0m0.010s
user@host:~$ time nslookup cloudflare.com security.cloudflare-dns.com
Server: security.cloudflare-dns.com
Address: 2606:4700:4700::1112#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m1.112s
user 0m0.026s
sys 0m0.000s
user@host:~$ time nslookup cloudflare.com family.cloudflare-dns.com
Server: family.cloudflare-dns.com
Address: 1.0.0.3#53
Non-authoritative answer:
Name: cloudflare.com
Address: 104.16.132.229
Name: cloudflare.com
Address: 104.16.133.229
Name: cloudflare.com
Address: 2606:4700::6810:84e5
Name: cloudflare.com
Address: 2606:4700::6810:85e5
real 0m4.072s
user 0m0.022s
sys 0m0.009s
Sometimes it works fine, but 95% of the time I see delays or no response. Sometimes I get partial responses. I’m unable to figure out what exactly is the issue.