Blocky is a fast, lightweight DNS proxy and network-wide ad blocker designed for home labs and small networks that want Pi-hole-like filtering with more flexible DNS routing and modern protocol support. It blocks DNS queries using external deny lists while also supporting allow lists, and it can scope policies by client groups so different devices or households can have different rulesets. Unlike a single-purpose blocker, it supports advanced DNS behavior such as conditional forwarding and custom resolution for specific domains, letting you shape traffic in ways that fit split-horizon DNS, internal services, or privacy-focused upstream strategies. Performance is a major focus, with configurable caching, prefetching, and the ability to use multiple upstream resolvers simultaneously to reduce latency and avoid single points of failure.
Features
- DNS blocking with external allow and deny lists plus regex matching
- Per-client-group policies for different device categories and networks
- DNS caching, prefetching, and multi-upstream resolver support
- DNS over UDP/TCP plus DoH and DoT protocol support
- Prometheus metrics with Grafana dashboards and query logging options
- Stateless deployment as Docker image or single binary across x86-64 and ARM