Home
Softono

DNS Collector

Open source MIT Go
511
Stars
82
Forks
34
Issues
11
Watchers
3 months
Last Commit

 About DNS Collector

Grab your DNS logs, detect anomalies, and finally understand what's happening on your network. The missing piece between DNS servers and your data stack.

Platforms

Web Self-hosted

Languages

Go

Links

Need Help Installing DNS Collector?

We provide expert installation service for this software. Our team will install, configure, and secure DNS Collector on your server. plans start at just $30.

DNS Collector

View on GitHub

Go Report Go version Go tests Go coverage Go bench Go Fuzz Go lines

release docker

DNS-collector

What is DNS-collector?

DNS-collector is a lightweight tool that captures DNS queries and responses from your DNS servers, processes them intelligently, and sends clean data to your monitoring or analytics systems.

What it does:

  • Captures DNS data from your DNS servers (BIND, PowerDNS, Unbound, etc.) via DNStap protocol or live network capture
  • Filters out noise like health checks, internal queries, or spam before storage
  • Enriches data with GeoIP, threat intelligence, or custom metadata
  • Outputs clean data to files, databases, SIEM tools, or monitoring dashboards

Why DNS-collector?

The missing piece between DNS servers and your data stack.

  • DNS-native processing: Understands DNS protocol, EDNS, query types natively
  • Process at the edge: Clean, filter and enrich DNS data before storage - not after
  • Multiple input sources: DNStap streams, live network capture, log files
  • DNS-aware transformations: Filtering noise upstream, user privacy
  • Flexible outputs: Files, syslog, databases, monitoring tools and more...
  • Production ready: Used in real networks, tested with major DNS servers
  • Enhanced DNStap: TLS encryption, compression, and more metadata capabilities

πŸš€ Quick Start

Download the latest release and run with default config: Default setup listens on tcp/6000 for DNStap streams and outputs to stdout. To get started quickly, you can use this default config.yml.

./dnscollector -config config.yml

run

πŸ“š Documentation

Topic Description
πŸ“ Formats Supported output formats (text, JSON, PCAP, Jinja2, etc.)
πŸ”§ Configuration Complete config reference
πŸ“€ Workers Input sources and output destinations setup
πŸ”„ Transformers Data enrichment options
🐳 Docker Container deployment
πŸ” Examples Ready-to-use configs
πŸ”— Integrations Integration with popular tools and DNS servers
⭐ Extended DNStap Extended DNSTap
πŸ“Š Telemetry REST API and Prometheus metrics
⚑ Performance Tuning guide

πŸ‘₯ Contributions

Contributions are welcome! Check out:

🧰 Related Projects: