dns-toolkit

command module
v1.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 24, 2026 License: GPL-3.0 Imports: 1 Imported by: 0

README ΒΆ

DNS Toolkit

Go CI Workflow Go Report Card codecov GoDoc Go Version GitHub commit activity GitHub repo size

A command-line utility for downloading, processing, resolving, and consolidating DNS blocklists and allowlists from multiple sources. Performs DNS-to-IP resolution, reverse lookups, and overlap detection. Generates ready-to-use lists for DNS sinkholes, Pi-hole, AdGuard Home, and other network security tools.

Pipeline Flow

---
config:
  theme: mc
---
flowchart LR
    B["Process<br>via Processors"] --> C["Consolidate<br>Group<br>Categorize<br>Top Entries<br>Overlaps"]
    C --> D["Blocklist/Allowlist Files"] & E["Main README"] & F["Overlap Analysis"] & G["Summary Report"] & H["Statistics Report"] & n2["Format Conversion<br>via Converters"] & n4["Graph Generation<br>via Graphers"]
    D --> I["Archive"]
    E --> I
    F --> I
    H --> I
    G --> I
    n1["Data files"] --> B
    A["Download<br>via Downloaders"] --> n1
    n2 --> n3["Converted Files"]
    n4 --> n5["Graph Images"]
    n3 --> I
    n5 --> I
    B@{ shape: procs}
    C@{ shape: h-cyl}
    D@{ shape: docs}
    n2@{ shape: h-cyl}
    n4@{ shape: paper-tape}
    n1@{ shape: docs}
    n3@{ shape: docs}
    style C stroke-width:4px,stroke-dasharray: 0
    style n2 stroke-width:2px,stroke-dasharray: 2

Published Outputs

Ready-to-use blocklist files are published daily to the output branch:

  • Domain and IP blocklists/allowlists compatible with Pi-hole, pfBlockerNG, AdGuard Home
  • Lists organized by size (mini, lite, normal, big) and category (ads, malware, privacy)
  • Top entries based on source frequency for high-confidence blocking

⚑ Quick Usage: Add https://raw.githubusercontent.com/phani-kb/dns-toolkit/output/[filename] to your DNS filtering tool (Pi-hole, AdGuard Home, pfBlockerNG).

Most commonly used outputs; Click any link to open the file.

Category Files (click to open)
πŸ—‚οΈ Consolidated πŸ›‘ Blocklists: adguard Β· cidr_ipv4 Β· domain Β· ipv4 Β· ipv6
βœ… Allowlists: adguard (allowlist) Β· domain (allowlist) Β· ipv4 (allowlist)
πŸ“Β MiniΒ β€”Β lowΒ falseΒ positives 🟒 mini_adguard, mini_cidr_ipv4, mini_domain, mini_ipv4
πŸ“Β LiteΒ β€”Β balancedΒ protection 🟑 lite_adguard, lite_cidr_ipv4, lite_domain, lite_ipv4
πŸ“Β NormalΒ β€”Β broaderΒ protectionΒ πŸ”΅ normal_adguard, normal_cidr_ipv4, normal_domain, normal_ipv4
πŸ“Β BigΒ β€”Β aggressiveΒ coverageΒ πŸ”΄ big_adguard, big_cidr_ipv4, big_domain, big_ipv4, big_ipv6
⭐ Top listsΒ β€”Β min3Β toΒ min12 top_adguard_min3, top_adguard_min5 Β· top_domain_min3, top_domain_min5 Β· top_ipv4_min3, top_ipv4_min5 (min3 means "at least 3 sources", min5 means "at least 5 sources", etc.; higher minN β†’ higher confidence, fewer entries.)

View Detailed Overlap Analysis Comprehensive analysis showing how entries are shared across different DNS sources.

Conflicts Report (allowlist vs. blocklist) A daily-generated report listing entries found in both allowlists and blocklists, including the source(s) where they were found.

Processing summaries and metadata are archived in the summaries branch with 1-year retention.

Quick add (copy-ready URLs)

Copy one of these raw URLs directly into your DNS filtering tool.

Pi-hole (domain lists)
https://raw.githubusercontent.com/phani-kb/dns-toolkit/output/domain_blocklist.txt
AdGuard Home (AdGuard format)
https://raw.githubusercontent.com/phani-kb/dns-toolkit/output/adguard_blocklist.txt
pfBlockerNG (pfSense)

Use the 'DNSBL' > 'DNSBL Groups' section and add a custom list using the raw URL. Example domain list (paste into pfBlockerNG custom list):

https://raw.githubusercontent.com/phani-kb/dns-toolkit/output/domain_blocklist.txt

Branch Sizes

Note: The repo size badge above only reflects the default branch (release/1.0.0).

  • Output branch size: 368.37 MB
  • Summaries branch size: 6.03 MB

Source Statistics

Automatically generated statistics from source configuration files

Metric Count Details
TotalΒ Sources 182 151 enabled, 31 disabled
BlocklistΒ Sources 154 Sources providing blocking rules
AllowlistΒ Sources 38 Sources providing exception rules
Categories 40 ads, adult, ai, annoyance, anonymizer, botnet, browser, cryptocurrency, dating, discord, dns, doh, fake, fakenews, finance, gambling, issues, kad, local, mac, malicious, malware, mobile, others, phishing, privacy, proxy, ransomware, scam, smarttv, social, spam, spyware, threat, topdomains, tor, torrent_trackers, trackers, url_shorteners, windows
SourceΒ Types 30 adguard, adguard_csv_http_url_find, adguard_domain, adguard_http_url, cidr_ipv4, domain, domain_adguard, domain_comment, domain_csv_http_url_find, domain_custom_csv_blackbook, domain_custom_csv_maltrail, domain_custom_html_ccam, domain_custom_html_puppyscams, domain_http_url, domain_top, domain_url, domain_with_comment_suffix, hostname, ipv4, ipv4_cidr_expand, ipv4_csv_http_url_find, ipv4_custom_html_ccam, ipv4_find, ipv4_from_domain, ipv4_http_url, ipv4_range_expand, ipv4_url, ipv6, ipv6_find, ipv6_htaccess
GeographicΒ Coverage 21 countries CN, CZ, DE, ES, FI, FR, HU, ID, IL, IT, KR, LV, MY, NL, RO, RU, SA, SK, UA, US, VN
LastΒ Updated 2026-01-23 19:55:16 UTC Statistics generation time

Credits

This project is made possible by the following blocklist and allowlist sources:

Legend: S = Status, C/U/X = Count / Unique / Conflicts

πŸ“„ sources_domain_al.json (19 sources)
Name S Categories C / U / X Notes
AdGuardSDNSFilter_exceptions βœ… others 188 / 4 / 0 -
AdGuardTeam_HttpsExclusions_android βœ… mobile 97 / 66 / 20 -
AdGuardTeam_HttpsExclusions_banks βœ… finance 3979 / 3939 / 24 -
AdGuardTeam_HttpsExclusions_firefox βœ… browser 18 / 14 / 0 -
AdGuardTeam_HttpsExclusions_issues βœ… issues 68 / 61 / 3 -
AdGuardTeam_HttpsExclusions_mac βœ… mac 11 / 4 / 1 -
AdGuardTeam_HttpsExclusions_sensitive βœ… others 179 / 154 / 14 -
AdGuardTeam_HttpsExclusions_windows βœ… windows 7 / 6 / 0 -
anudeepND_Allowlist ❌ others - Last updated on 2021-12-01. This list is no longer maintained.
BlahDNS_whitelist ❌ others - Too many conflicts with other sources
China_CDN_Whitelist ❌ others - -
DandelionSprout_AdGuardHome_Whitelist βœ… others 285 / 40 / 0 -
Dogino_Discord_Official βœ… discord 43 / 0 / 14 -
fabriziosalmi_allowlist βœ… others 2268 / 921 / 1027 -
Freekers_Whitelist ❌ others - No update since 2019
Notracking_Hosts_whitelist ❌ others - Archived by the owner on Aug 8, 2023
ShadowWhisperer_Allowlist βœ… others 689 / 260 / 337 -
T145_allowlist-domains ❌ others - Huge list, use with caution
TogoFire_AD_Settings_whitelist βœ… others 1764 / 1519 / 0 Huge list, use with caution
πŸ“„ sources_domain_bl.json (107 sources)
Name S Categories C / U / X Notes
1Hosts (Lite) βœ… ads, trackers 210769 / 0 / 124 -
abpvn_hosts βœ… ads 1129 / 1035 / 0 -
Adaway βœ… ads 6540 / 0 / 81 >99% overlap with StevenBlack Fake Gambling list
AdBlockID βœ… ads 87 / 64 / 22 -
AdGuard Base filter βœ… ads 338 / 0 / 4 -
AdGuard CNAME Mail Trackers βœ… trackers 33430 / 32808 / 0 -
AdGuard CNAME Trackers βœ… trackers 62703 / 0 / 10 -
AdGuard DNS filter βœ… ads, mobile, social, trackers 138250 / 0 / 74 -
AdGuard Spyware Filter - Mobile βœ… ads, mobile, spyware 1228 / 0 / 0 -
AntiAdBlockFilters βœ… annoyance 1705 / 1702 / 0 -
anudeepND_adservers ❌ ads - No update since 2023-01-16
bigdargon_hostsVN βœ… ads 17334 / 0 / 85 -
Blocklists UT1 Cryptojacking βœ… cryptocurrency 16288 / 14916 / 8 -
Blocklists UT1 Malware βœ… malware 248682 / 0 / 6 >80% overlap with phishing_army
Blocklists UT1 Publicite βœ… ads 4270 / 0 / 88 100% covered by other sources
Blocklists UT1 Shortener βœ… url_shorteners 4538 / 0 / 20 -
Boutetnico_URL_Shorteners βœ… url_shorteners 418 / 209 / 24 -
Cameleon ❌ ads - No update since 2018-03-17
CF_Torrent_Trackers βœ… torrent_trackers 113 / 0 / 0 -
CJX Annoyance βœ… annoyance 1807 / 1713 / 0 -
CybercrimeTracker_All ❌ botnet, malicious, malware - Redirect loops may occur; website unavailable since 2025-10-27
CybercrimeTracker_CCAM ❌ botnet, malicious, malware - No regular updates
CybercrimeTracker_CCPMGate ❌ botnet, malicious, malware - Redirect loops may occur; website unavailable since 2025-10-27
cyberhost_malware-blocklist βœ… malware 19947 / 985 / 2 -
Dan Pollock's List βœ… ads, malware, trackers 11873 / 0 / 23 >95% overlap with StevenBlack Fake Gambling list
DandelionSprout-Anti-Malware-List βœ… malware 16729 / 16721 / 0 -
Easy Privacy βœ… privacy, trackers 54071 / 22372 / 1 -
EasyList βœ… ads 68693 / 0 / 0 100% covered by other sources
fabriziosalmi_blocklists ❌ malicious, threat - Huge list, >3 million entries
FadeMind_2o7Net ❌ ads, privacy, trackers - No update since 2023-11-30
FakeWebshopListHUN βœ… fake, phishing, scam, threat 8214 / 4747 / 1 -
Frogeye-firstparty-trackers βœ… trackers 32228 / 10821 / 12 -
GetAdmiral Domains Filter List βœ… ads, annoyance 1750 / 0 / 0 -
GlobalAntiScamOrg-blocklist-domains βœ… scam 11187 / 6508 / 2 -
HaGeZi Amazon Tracker βœ… privacy, trackers 623 / 0 / 34 >98% overlap with HaGeZi Pro
HaGeZi Apple Tracker βœ… privacy, trackers 105 / 0 / 8 >80% overlap with HaGeZi Pro
HaGeZi DNS TIF Mini βœ… malicious, threat 117993 / 31322 / 2 100% covered by other sources
HaGeZi Encrypted DNS Servers βœ… doh 3469 / 2306 / 9 -
HaGeZi Gambling Only Domains βœ… gambling 182219 / 174025 / 7 Huge list and gambling-specific focus
HaGeZi Microsoft Tracker βœ… privacy, trackers 4027 / 0 / 12 >75% overlap with HaGeZi Pro
HaGeZi Most Abused TLDs βœ… spam 435 / 433 / 0 -
HaGeZi Normal ❌ ads, malware, trackers - 100% overlap with HaGeZi Pro
HaGeZi Pro βœ… ads, malware, phishing, trackers 339963 / 0 / 123 -
HaGeZi Xiaomi Tracker βœ… privacy, trackers 462 / 0 / 0 >95% overlap with HaGeZi Pro
Hestat_Minerchk ❌ cryptocurrency - No update since 2018
hkamran80_smarttv βœ… smarttv 294 / 0 / 11 -
Hostsfile ❌ ads - No update since 2018-04-20
hufilter βœ… ads 102 / 0 / 2 >90% overlap with HaGeZi Pro
iam-py-test_my-filters-001-antitypo βœ… fake 825 / 824 / 0 -
jarelllama_Scam-Blocklist βœ… scam 468729 / 424173 / 10 Disabled due to very large size (457K entries) - scam-specific focus
kadantiscam βœ… kad 39591 / 0 / 1 peer-to-peer network protocol
Korlabs_UrlShortener βœ… url_shorteners 237 / 0 / 16 -
lightswitch05 ❌ ads, trackers - Archived on 2024-06-17
Malicious URL Blocklist (URLHaus) βœ… ads 10418 / 0 / 0 100% covered by other sources
Maltrail_StaticTrails βœ… malware, threat 216684 / 191150 / 5 -
malware-filter_phishing-filter βœ… malware, phishing 20593 / 0 / 0 -
OISD Blocklist Big βœ… ads, cryptocurrency, malware, phishing, ransomware, trackers 211292 / 0 / 34 Huge list
OISD Blocklist NSFW Small βœ… adult 16198 / 0 / 5 -
OISD Blocklist Small βœ… ads, cryptocurrency, malware, phishing, ransomware, trackers 49635 / 0 / 27 -
OpenPhish_Feed βœ… phishing 268 / 0 / 1 -
Peter Lowe's Blocklist ❌ ads - 100% covered by other sources, same as yoyo adservers list
pexcn Torrent Trackers βœ… torrent_trackers 77 / 0 / 0 -
ph00lt0_blocklist βœ… ads, trackers 22506 / 0 / 359 100% covered by other sources, ~50 ip addresses in domain list
phishing_army βœ… phishing 153060 / 0 / 1 -
Policeman_SimpleDomainsBlocklist ❌ malicious - Archived on 2021-12-26
PuppyScams βœ… fake, scam 102 / 92 / 0 List of top 100 pet scams is not being shared anymore, https://puppyscams.org/top-100-pet-scams
quidsup_notrack-annoyance βœ… annoyance 457 / 0 / 1 >90% overlap with HaGeZi Pro
quidsup_notrack-malware βœ… malware 141 / 0 / 0 -
quidsup_notrack-tracker βœ… trackers 15602 / 0 / 89 -
RedDragonWebDesign_block-everything βœ… ads, malicious, trackers 665 / 664 / 0 -
RPiList_specials-malware βœ… malware 426269 / 212758 / 0 Huge list
RPiList_specials-phishing βœ… phishing 153670 / 0 / 0 Huge list
ShadowWhisperer's Dating List βœ… dating 1309 / 1108 / 0 -
ShadowWhisperer_BlockLists Ads βœ… ads 25736 / 0 / 42 -
ShadowWhisperer_BlockLists Adult βœ… adult 236112 / 178135 / 4 Huge list and adult-specific focus
ShadowWhisperer_BlockLists Malware βœ… malware 42344 / 0 / 4 -
ShadowWhisperer_BlockLists Scam βœ… scam 7208 / 4838 / 0 -
ShadowWhisperer_UrlShortener βœ… url_shorteners 5754 / 1247 / 2 -
Sinfonietta_Adult βœ… adult 60945 / 0 / 9 -
Sinfonietta_Gambling βœ… gambling 2639 / 0 / 1 -
Sinfonietta_Social βœ… social 3243 / 0 / 100 -
Spam404 βœ… spam 8140 / 5992 / 1 -
Stamparm_Blackbook βœ… malicious, threat 18145 / 0 / 0 >95% overlap with Blocklists UT1 Malware
StevenBlack_Adhoc_list ❌ ads, malware, trackers - 100% overlap with StevenBlack Fake Gambling list
StevenBlack_Fake_Gambling βœ… ads, fake, fakenews, gambling 78440 / 0 / 151 -
StevenBlack_Porn βœ… adult 76508 / 0 / 14 -
StevenBlack_Social βœ… social 3243 / 0 / 100 -
T145_black-mirror ❌ malicious, threat - Huge list, >8 million entries
ThreatFox_Hostfile βœ… malware, threat 44973 / 0 / 0 -
ThreatView_Domain_High-Confidence βœ… malware, phishing, threat 69 / 24 / 0 Huge list, when compared to IPv4 feed from the same source
Torrent Trackers βœ… torrent_trackers 555 / 337 / 0 -
Ukrainian Ad Filter βœ… ads 1459 / 1305 / 0 -
Ukrainian Annoyance Filter ❌ annoyance - Filtering rules not compatible with DNS-level blocking
Ukrainian Privacy Filter βœ… privacy, trackers 366 / 32 / 1 -
Ukrainian Security Filter βœ… malicious, threat 1736 / 1167 / 0 -
UncheckyAds ❌ ads, privacy, trackers - No update since 2021
URLHaus (Abuse.ch) βœ… malware 485 / 0 / 0 -
USOM-Blocklists-domains βœ… malicious, threat 435092 / 378627 / 18 Huge list
Viriback_Dump βœ… malware 4856 / 269 / 0 -
WaLLy3K βœ… ads 350 / 0 / 11 -
Warui_Adhosts βœ… ads 75772 / 0 / 183 Huge list
WindowsSpyBlocker_Hosts_spy ❌ privacy, trackers - No update since 2022-05-16
Winhelp2002 ❌ ads - No update since 2021-03-06
YousList βœ… ads 624 / 0 / 2 -
YousList-AdGuard βœ… ads 7376 / 7213 / 0 -
youtube_GoodbyeAds βœ… ads 97645 / 97104 / 14 No update since 2024-11-21
Yoyo Adservers-Hosts βœ… ads 3498 / 0 / 53 >95% overlap with StevenBlack Fake Gambling list
πŸ“„ sources_domain_new.json (1 sources)
Name S Categories C / U / X Notes
nrd-14day-mini ❌ others - Huge list with low unique contribution
πŸ“„ sources_domain_top.json (1 sources)
Name S Categories C / U / X Notes
tranco βœ… topdomains 500 / 0 / 615 Reduced to 500, as many conflicts with other sources
πŸ“„ sources_ip.json (43 sources)
Name S Categories C / U / X Notes
AlienVault_Reputation ❌ malicious, threat - Not available anymore. The service has been discontinued.
BinaryDefense_Banlist βœ… malicious, threat 2931 / 0 / 0 This is for public use only.
Blackhole_Today ❌ malicious, threat - Download fails frequently due to network instability or potential blocking.
BlockListDE_Brute βœ… threat 3568 / 0 / 0 >95% overlap with Firehol_level2
BlockListDE_Strong βœ… malicious, threat 285 / 0 / 0 >95% overlap with Borestad_AbuseIPDB_S100_3d
Borestad_AbuseIPDB_S100_3d βœ… malicious, threat 72393 / 0 / 0 -
BruteforceBlocker βœ… threat 569 / 0 / 0 >95% overlap with EmergingThreats_CompromisedIPs
CINSScore_BadGuys_Army βœ… malicious, threat 15000 / 0 / 0 -
DanMeUK_TorExitNodes βœ… tor 1462 / 124 / 0 -
DoH_IP_blocklists βœ… doh 2527 / 736 / 1 >90% overlap with HaGeZi Encrypted DNS Servers
DoH_IP_list βœ… doh 731 / 0 / 0 -
DShield βœ… malicious, threat 5120 / 0 / 0 100% overlap with Firehol_level2/Firehol_level3
EmergingThreats_CompromisedIPs βœ… malicious, threat 568 / 0 / 0 >95% overlap with Firehol_level3, and Borestad_AbuseIPDB_S100_3d
ET_fwip βœ… malicious, threat 6 / 0 / 0 -
FabrizioSalmi_DNS βœ… dns 66 / 0 / 0 -
Firehol_abusers_30d ❌ malicious, threat - False positives are common, use with caution.
Firehol_BitcoinNodes_1d βœ… cryptocurrency 7934 / 7911 / 0 -
Firehol_Botscout_1d βœ… malicious, threat 490 / 372 / 0 -
Firehol_CleanTalk βœ… malicious, threat 494 / 457 / 0 -
Firehol_CleanTalk_Top20 βœ… malicious, threat 20 / 5 / 0 -
Firehol_GPF_Comics βœ… malicious, threat 2644 / 1955 / 0 -
Firehol_level1 βœ… malicious, threat 4481 / 1784 / 0 -
Firehol_level2 βœ… malicious, threat 16677 / 0 / 0 -
Firehol_level3 βœ… malicious, threat 21590 / 0 / 3 -
Firehol_SocksProxy_7d βœ… anonymizer, privacy, proxy 1885 / 1521 / 0 -
Firehol_SSLProxies_1d βœ… anonymizer, privacy, proxy 315 / 175 / 0 -
GlobalAntiScamOrg-blocklist-ips βœ… scam 7 / 0 / 0 -
Greensnow βœ… malicious, malware, threat 6350 / 0 / 0 >95% overlap with Firehol_level2
HaGeZi_DoH βœ… doh 1633 / 0 / 0 >90% overlap with DoH_IP_blocklists
HaGeZi_TIF βœ… malicious, threat 44788 / 0 / 0 No unique contribution
MyIP_MS_Blocklist βœ… malicious, threat 927 / 0 / 0 -
Public_DNS4 βœ… dns 62607 / 61698 / 0 -
Rutgers_DROP βœ… malicious, threat 1883 / 0 / 0 -
Sblam_Blocklist βœ… spam 1274 / 528 / 0 -
ScriptzTeam_BadIPS βœ… malicious, threat 2567 / 1362 / 0 -
Sentinel_Greylist βœ… malicious, threat 10006 / 0 / 4 -
spamhaus_drop βœ… spam, threat 1457 / 0 / 0 -
T145_allowlist-ips ❌ others - Huge list, use with caution. More than its blocklist counterpart.
T145_blocklist ❌ malicious, malware, threat - Huge list, use with caution.
ThreatView_IP_HighConfidence βœ… malicious, phishing, threat 6181 / 0 / 0 -
URLHaus_Text βœ… malware 20576 / 0 / 0 -
USOM-Blocklists-ips βœ… malicious, threat 13696 / 7796 / 0 -
Yoyo AdServers-IPList βœ… ads 8915 / 8864 / 0 -
πŸ“„ sources_local.json (7 sources)
Name S Categories C / U / X Notes
local_adg_allowlist βœ… local 44 / 0 / 0 -
local_adg_blocklist βœ… local 7 / 0 / 0 -
local_ai_allowlist βœ… ai 45 / 0 / 48 -
local_ai_blocklist βœ… ai 45 / 0 / 45 -
local_domain_blocklist βœ… local 7 / 0 / 1 -
local_source_domain_allowlist βœ… local 44 / 26 / 0 -
local_source_ipv4_allowlist βœ… local 64 / 56 / 8 -
πŸ“„ sources_local_category.json (3 sources)
Name S Categories C / U / X Notes
local_miscellaneous_allowlist βœ… local 7 / 0 / 11 -
local_mobile_allowlist βœ… local, mobile 4 / 2 / 2 -
local_social_allowlist βœ… local, social 1 / 0 / 2 -
πŸ“„ sources_mis.json (1 sources)
Name S Categories C / U / X Notes
VXVault_URLList βœ… malware 38 / 0 / 0 >95% overlap with Firehol_level3

Source Configuration (Important!)

Sources are configured in data/config/sources*.json files. Each source specifies:

  • Download URL and frequency
  • Source type (domain, IPv4, IPv6, AdGuard, etc.)
  • Categories (ads, malware, privacy, etc.)
  • License and website information

Special Note on Top Domains (tranco-list.eu)

Top domains sourced from the tranco-list.eu list (domain_top type) are treated as an allowlist.

Allowlist Generation Flow

---
config:
  theme: mc
---
flowchart LR
 subgraph horizontal[" "]
    direction LR
        OutputIPv4["allowlist_ipv4.txt"]
  end
    ReadSources["Read Sources"] --> ExtractDomains["Extract Domains from Source URLs"]
    ExtractDomains --> LoadCustom["Load Custom Files"]
    LoadCustom --> Combine["Combine & Deduplicate"]
    Combine --> OutputDomains["allowlist_domains.txt"] & OutputAdGuard["allowlist_adg.txt<br>(@@||domain^ format)"] & ResolveDNS["Resolve to IPv4"]
    ResolveDNS --> OutputIPv4

    OutputIPv4@{ shape: doc}
    ReadSources@{ shape: procs}
    ExtractDomains@{ shape: procs}
    OutputDomains@{ shape: doc}
    OutputAdGuard@{ shape: doc}
    ResolveDNS@{ shape: proc}
    style Combine stroke-width:2px,stroke-dasharray: 2
    style horizontal fill:transparent,stroke:transparent

Installation

git clone https://github.com/phani-kb/dns-toolkit.git
cd dns-toolkit
go build -o bin/dns-toolkit main.go

Quick Start

# Download and process all sources
dns-toolkit download
dns-toolkit process
dns-toolkit consolidate
dns-toolkit generate output

# Search for a domain
dns-toolkit search example.com

# Analyze overlaps between sources
dns-toolkit overlap

# Find top entries across sources
dns-toolkit top

Key Commands

DNS Toolkit

Usage:
  dns-toolkit [command]

Available Commands:
  archive          Archive DNS toolkit data
  consolidate      Consolidate processed files
  download         Download enabled sources
  generate         Generate different types of outputs
  help             Help about any command
  overlap          Find overlap between source files
  process          Process downloaded files
  search           Search for a domain or IP in the processed files
  sts              Prints the source types summary
  top              Find top entry(s) in each generic source type
  validate-sources Validate the sources configuration
  version          Print the version number of DNS Toolkit

Flags:
  -h, --help   help for dns-toolkit

Use "dns-toolkit [command] --help" for more information about a command.

Output Structure

data/output/
β”œβ”€β”€ *_blocklist.txt    # Blocklists for various source types (adguard, domain, ipv4, ipv6, cidr)
β”œβ”€β”€ *_allowlist.txt    # Allowlists for various source types (adguard, domain, etc.)
β”œβ”€β”€ categories/        # Lists by category (ads, malware, privacy, etc.)
β”œβ”€β”€ groups/            # Lists by size (mini, lite, normal, big)
β”œβ”€β”€ top/               # Top entries based on source frequency
└── summaries/         # Processing metadata and statistics

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

Issues

If you encounter a bug, have a feature request, or want to suggest an improvement, please open an issue on the GitHub Issues page.

License

This project is licensed under the terms specified in the LICENSE file.

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
internal
top

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL