ServerDetection
From NeuMon
Contents |
DNS Server Detection
Do you have a website? You can help us without doing anything!
Why should I do this? Who do it already?
How?
Put this code on your website:
<img style="width:1px;height:1px;" src="http://www.dnsdetect.net/dnsdetect.png">
Or paste the code above on bulletin-board, use as signature, etc.
It's invisible to end-user, and doesn't affect the performance of website.
You can also use this bb-code:
[img]http://www.dnsdetect.net/dnsdetect.png[/img]
Warning: an empty box might be displayed on some bulletin-board engine.
Please, if you want to put the code in a website that you don't own, ask before. Avoid spam.
Why?
One of the goal of the project is to collect a list of DNS servers used by ISPs. Thanks to this list (which we also keep available to anyone), we can interrogate the DNS to detect blocks.
Collecting the IP address of every ISP around the worlds is a complex work. The code above represents a solution: for anyone who shows the code above (therefore all visitors of the website when it's used), we can collect which DNS servers are used, to fill our DNS servers list. Everything is automatic, without any interaction.
Technically, how does it work?
We own a domain called "dnsdetect.net". We control that domain as authoritative. When the url http://www.dnsdetect.net/dnsdetect.png is requested by a visitor, our server redirects the request to a PHP page, which detects the IP address and redirects to an url like the following:
http://ip_{ip}_{random_number}.dnsdetect.net
The visitor does not have in his/her DNS cache an already resolved address for the domain (because it contains a random number), so his/her DNS server is interrogated in order to resolve it. But also his/her DNS server can't know that, therefore the website hosting DNS server (note: not the visitor's one) ask to our authoritative domain (dnsdetect.net) how to resolve it. Our server responds that it doesn't exists, so the visitor will not see anything. But we detect the IP address of the DNS server, when it contacts us for resolution.
After that, the DNS server will be inserted in our list, and checked if it accepts external queries. If so, it will be displayed in our "DNS Servers Active List", and will be tested by us with some domains to understand if any kind of DNS block is performed.

