Description
These are the results I'm getting when resolving the A records of the Alexa top 5k domains using the resolvers from this repository:
root@vps:~/dns-test# cat output-base.txt | sort -n -r
4834 status: NOERROR
733 status: REFUSED
68 status: SERVFAIL
24 status: NXDOMAIN
Further filtering on resolvers.txt using custom dnsvalidator options results in more stable output:
root@vps:~/dns-test# cat output-new.txt | sort -n -r
4910 status: NOERROR
89 status: SERVFAIL
22 status: NXDOMAIN
2 status: REFUSED
Note that these do include retries on timeouts, which explains why the total responses might exceed the 5k number.
I've done some investigating and it seems like some DNS servers will refuse to serve records for certain domains. For example:
162.159.11.139
will refuseexample.com
,youtube.com
,facebook.com
, but notslack.com
or lesser-known domains.162.159.34.74
will refuseexample.com
,youtube.com
,facebook.com
, but notslack.com
or lesser-known domains.
dnsvalidator relies on bet365.com, which works, but provides little guarantee that it will work on random domains as well. I think it's best to not make use of the default configuration to improve the quality of the resulting resolver list. Additionally, dnsvalidator has some minor issues that may affect results: vortexau/dnsvalidator#40