Understand your network
See DNS activity by device, domain, block reason, cache result, and upstream response.
A little clarity for your network.Faro shows what every device is doing with DNS, explains what gets blocked and why, and keeps the whole thing manageable from one interface.
Open source · Apache 2.0 Self-hosted No cloud account required
Per-device visibility · Protection profiles · Local DNS · Encrypted upstreams · Synchronized redundancy
See DNS activity by device, domain, block reason, cache result, and upstream response.
Use blocklists, per-device protection profiles, schedules, and exceptions.
Faro is self-hosted. DNS history and configuration stay on your hardware.
Why Faro?
Faro started with a question: what are the devices on my network actually doing?
Blocking is only part of Faro. Device-level history, investigation, protection, local DNS, upstream health, encrypted DNS, and redundancy come together around CoreDNS—without making routine DNS management feel like infrastructure work.
01 / Activity
Search live and historical DNS activity. See which device requested a domain, whether it was allowed or blocked, and why.
Explore activity02 / Devices
Give devices names that mean something. Review their activity and assigned protection in one place. Optionally connect a local UniFi controller to help identify them.
Meet your network03 / Protection
Block ads, trackers, and unwanted domains across your network or by device.
Manage schedules, exceptions, and custom blocklists without editing DNS configuration.
Explore protection04 / Redundancy
DNS is one of those things you notice immediately when it stops working.
Pair a second Faro server with your primary and Faro keeps its DNS configuration synchronized automatically. Replicas stay read-only, so you manage the network from one place while multiple servers can answer DNS requests.
Manage once. Serve DNS from both.
Set up redundancy05 / DNS, made understandable
Faro brings useful CoreDNS capabilities into an understandable interface. Add local names, choose encrypted upstreams, and manage protection without editing CoreDNS configuration for routine tasks.
Read the documentationA simple path. Your choice.
Faro uses CoreDNS to answer DNS requests and forwards requests it cannot answer locally to the upstream provider you choose.
Your DNS stays yours. History, configuration, backups, and management stay on your hardware. Faro requires no cloud account and includes no tracking.
Choose how much history to keep. Create encrypted backups and restore them from the interface.
Get started
Bring an always-on machine with Docker Compose, a fixed local IP, and port 53 available for DNS.
mkdir faro && cd faro
curl -LO https://raw.githubusercontent.com/derek-diaz/Faro/main/docker-compose.yml
docker compose up -dOpen http://YOUR-FARO-IP:1787 and follow the guided setup.
Point your router or one device’s DNS setting to Faro’s local IP address.
Apache 2.0 · Always inspectable
Faro is open source under Apache 2.0. Issues, ideas, and contributions are welcome.
Built and maintained by Derek Diaz Correa in Puerto Rico.
View Faro on GitHub