Blocky - Alternative DNS Blocker to Adguard Home
-
Application: Blocky
URL: https://github.com/0xERR0R/blockyBlocky
Blocky is a DNS proxy and ad-blocker for the local network written in Go with following features:Features
Blocking - Blocking of DNS queries with external lists (Ad-block, malware) and whitelistingDefinition of black and white lists per client group (Kids, Smart home devices, etc.)
Periodical reload of external black and white lists
Regex support
Blocking of request domain, response CNAME (deep CNAME inspection) and response IP addresses (against IP lists)
Advanced DNS configuration - not just an ad-blockerCustom DNS resolution for certain domain names
Conditional forwarding to external DNS server
Upstream resolvers can be defined per client group
Performance - Improves speed and performance in your networkCustomizable caching of DNS answers for queries -> improves DNS resolution speed and reduces amount of external DNS queries
Prefetching and caching of often used queries
Using multiple external resolver simultaneously
Low memory footprint
Various Protocols - Supports modern DNS protocolsDNS over UDP and TCP
DNS over HTTPS (aka DoH)
DNS over TLS (aka DoT)
Security and Privacy - Secure communicationSupports modern DNS extensions: DNSSEC, eDNS, ...
Free configurable blocking lists - no hidden filtering etc.
Provides DoH Endpoint
Uses random upstream resolvers from the configuration - increases your privacy through the distribution of your DNS traffic over multiple provider
Blocky does NOT collect any user data, telemetry, statistics etc.
Integration - various integrationPrometheus metrics
Prepared Grafana dashboards (Prometheus and database)
Logging of DNS queries per day / per client in CSV format or MySQL/MariaDB/PostgreSQL database - easy to analyze
Various REST API endpoints
CLI tool
Simple configuration - single or multiple configuration files in YAML formatSimple to maintain
Simple to backup
Simple installation/configuration - blocky was designed for simple installationStateless (no database, no temporary files)
Docker image with Multi-arch support
Single binary
Supports x86-64 and ARM architectures -> runs fine on Raspberry PI
Community supported Helm chart for k8s deployment -
Looks nice!
Seems to have three developers so it‘s not a total one-man-show. -
I like that it doesn't have a user interface and all configuration is done in one config yaml file. I am already trying a bit and I couldn't figure out how to re-use the certificates that Cloudron is providing for the service. I still have to read more in cloudron documentation.
-
I borrowed a lot of logic from the AdGuard Home Package to get Blocky running on my Cloudron instance.
There is still a lot to do, but in general it seems to work. Of course it will collide with existing AdGuard Home for the 53/tcp and 53/udp ports. I tried DoH and it did work.Just to clarify, the current status is not for production use and only for testing.
Here is my repo: https://git.cloudron.io/kubernetes/cloudron-blocky
-
+1 for that awesome mascot they have
-
No progress as I have just a single instance of Cloudron and I need to have Adguard Home running as long as there is no substitute.
-
@Kubernetes would the demo server help?