From de9bd4bdc7be6884c8d883937f68065f6ad4020d Mon Sep 17 00:00:00 2001 From: Mohammed Diaa Date: Mon, 9 May 2022 03:31:26 +0200 Subject: [PATCH] Update README.md --- README.md | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8ee71b7..9aca9d1 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,34 @@ -# resolvers -Gather and update newest working DNS resolvers +

Resolvers Tweet

+

The most exhaustive list of reliable DNS resolvers

+ +There are three files here: +- `resolvers.txt` +A simple list of resolver IP addresse, which you can pass directly to you DNS enumeration tool. + +- `resolvers-extended.txt` +All of the resolvers in `resolvers.txt` with additional information about each server, including the organization it belongs to, its country, and how many times it has been detected as valid. + +- `resolvers-trusted.txt` +A list of trusted resolvers from organizations like Cloudflare, Google, etc. We recommend you use this list to re-validate the results you get with the main resolvers. + +## How it Works +A [Trickest](https://trickest.com) workflow creates an initial dataset of resolvers from various sources then uses multiple instances of [dnsvalidator](https://github.com/vortexau/dnsvalidator) to validate and re-validate this dataset and make it as reliable as possible. + +![Trickest Workflow](resolvers.png "Trickest Workflow - Resolvers") +### TB; DZ (Too big; didn't zoom) +- We collect the inital dataset from three sources: + - [The Public DNS Server List](https://public-dns.info/nameservers.txt) + - A list of provider DNS servers collected from [bass](https://github.com/Abss0x7tbh/bass/tree/master/resolvers) (Thanks, [Abss0x7tbh](https://github.com/Abss0x7tbh)). + - A community-maintained list of resolvers on [janmasarik/resolvers](https://github.com/janmasarik/resolvers) (Thanks, [janmasarik](https://github.com/janmasarik)). +- This mega list of resolvers is then `sort -u`'d and split up into smaller chunks. +- Multiple instances of [dnsvalidator](https://github.com/vortexau/dnsvalidator) are created to validate the resolver lists in parallel (Huge thanks to [vortexau](https://github.com/vortexau) and [codingo](https://github.com/codingo)). +- Then we run another round of [dnsvalidator](https://github.com/vortexau/dnsvalidator) to weed out any false-positives that survived the previous step. +- The final resolvers list is passed to a `whois` script (which uses [APNIC](https://www.apnic.net/)'s API) to find out the organization and country to which each resolver belong. +- In the end, the workflow counts the number of times it found each resolver to be valid throughout all the previous runs and writes the frequency data to `resolvers-extended.txt`. +- This workflow is scheduled to run constantly. + +## Contribution +All contributions/ideas/suggestions are welcome! Feel free to create a new ticket via [GitHub issues](https://github.com/trickest/resolvers/issues), tweet at us [@trick3st](https://twitter.com/trick3st), or join the conversation on [Discord](https://discord.gg/7HZmFYTGcQ). + +## Build your own workflows! +We believe in the value of tinkering. Sign up for a demo on [trickest.com](https://trickest.com) to customize this workflow to your use case, get access to many more workflows, or build your own from scratch!