This is NOT an original piece of work, just a snap of Knot Resolver
Knot Resolver is a caching full resolver implementation written in C and LuaJIT, both a resolver library and a daemon. The core architecture is tiny and efficient, and provides a foundation and a state-machine like API for extensions. There are three modules built-in - iterator, validator, cache, and a few more are loaded by default. Most of the rich features are written in Lua(JIT) and C. Batteries are included, but optional.
The LuaJIT modules, support DNS privacy and DNSSEC, and persistent cache with low memory footprint make it a great personal DNS resolver or a research tool to tap into DNS data. TL;DR it's the OpenResty of DNS.
First use
Read the doc at https://knot-resolver.readthedocs.io/en/stable/ on how to get started.
Configure the resolver
sudo vi /var/snap/knot-resolver-gael/current/kresd.conf
sudo snap start --enable knot-resolver-gael.kresd
sudo snap logs -n 30 knot-resolver-gael.kresd
Deny domain resolution (refreshed every 4 hrs)
sudo vi /var/snap/knot-resolver-gael/common/policies/deny_hosts.url
# Sample deny host files URLs
https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts;showintro=0
https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
https://raw.githubusercontent.com/anudeepND/blacklist/master/adservers.txt
http://sysctl.org/cameleon/hosts
sudo vi /var/snap/knot-resolver-gael/common/policies/deny_domains.url
# Sample deny domains URLs
https://gitlab.com/quidsup/notrack-blocklists/raw/master/notrack-blocklist.txt
https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt
https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt
https://v.firebog.net/hosts/AdguardDNS.txt
https://v.firebog.net/hosts/Easyprivacy.txt
sudo snap start --enable knot-resolver-gael.deny-policy
sudo snap logs -n 30 knot-resolver-gael.deny-policy
sudo vi /var/snap/knot-resolver-gael/current/kresd.conf
policy.add(policy.rpz(policy.DENY, '/var/snap/knot-resolver-gael/common/policies/deny_policy.rpz',true))
sudo snap restart knot-resolver-gael.kresd
sudo journalctl --follow --lines 30 -u snap.knot-resolver-gael.kresd
2025-09-03
2025-04-30
2024-11-17
2024-10-31
2024-08-14
2024-06-25
2024-02-21
2023-09-21
2023-02-08
2022-09-26
2022-06-14
2022-03-20
2022-01-11
2021-12-13
2021-10-14
2021-08-22
2021-08-16
2021-07-30
2021-07-08
2021-05-11
2021-04-11
2021-03-28
2021-03-14
You are about to open
Do you wish to proceed?
Thank you for your report. Information you provided will help us investigate further.
There was an error while sending your report. Please try again later.
Snaps are applications packaged with all their dependencies to run on all popular Linux distributions from a single build. They update automatically and roll back gracefully.
Snaps are discoverable and installable from the Snap Store, an app store with an audience of millions.
Snap can be installed on Pop!_OS from the command line. Open Terminal from the Applications launcher and type the following:
sudo apt update
sudo apt install snapd
Either log out and back in again, or restart your system, to ensure snap’s paths are updated correctly.
To install knot-resolver-gael, simply use the following command:
sudo snap install knot-resolver-gael
Browse and find snaps from the convenience of your desktop using the snap store snap.
Interested to find out more about snaps? Want to publish your own application? Visit snapcraft.io now.