Grad shape
Grad shape

blocky

DNS

About this project

GitHub Workflow Status GitHub Workflow Status GitHub latest version GitHub Release Date GitHub go.mod Go version Docker pulls Docker Image Size (latest) Codecov Codacy grade Go Report Card Donation

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 allowlisting

    • Definition of allow/denylists per client group (Kids, Smart home devices, etc.)
    • Periodical reload of external allow/denylists
    • 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-blocker

    • Custom 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 network

    • Customizable 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 protocols

    • DNS over UDP and TCP
    • DNS over HTTPS (aka DoH)
    • DNS over TLS (aka DoT)
  • Security and Privacy - Secure communication

    • Supports modern DNS extensions: DNSSEC, eDNS, ...
    • Free configurable blocking lists - no hidden filtering etc.
    • Provides DoH Endpoint
    • Uses ran
Technologies & License
Apache-2.0 Go Docker
Quick Deploy

Deploy this project to cloud platforms with one click