lazydns

Crates.iolazydns
lib.rslazydns
version0.2.63
created_at2025-12-21 12:17:36.05573+00
updated_at2026-01-14 09:09:01.788969+00
descriptionA light and fast DNS server/forwarder implementation in Rust
homepage
repositoryhttps://github.com/lazywalker/lazydns
max_upload_size
id1997881
size6,351,388
(lazywalker)

documentation

README

LazyDNS

Rust License: GPL-3.0 CI crates.io docs.rs codecov Dependabot Maintenance

Documentation

Current Status:

  • DNS Protocol & Servers (UDP/TCP/DoT/DoH/DoQ)

  • Plugin System & Core Plugins

  • LazyCache with Stale-Serving - Background refresh cache with TTL support

  • Environment Variable Configuration - Runtime config via METRICS_ADDR, ADMIN_ADDR, etc.

  • Prometheus Monitoring - Metrics collection, health checks, and admin interface

  • Advanced Condition Matching - Flexible rule-based DNS query processing with 30+ matching plugins (Hosts, Domain, IP, GeoIP, GeoSite ...)

  • Caching with LRU eviction

  • Encrypted DNS (DoT RFC 7858, DoH RFC 8484, DoQ RFC 9250)

  • Multi-profile builds (minimal/full) with UPX compression

  • Documentation and Docker packaging

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Acknowledgments

  • mosdns - The original inspiration
  • hickory-dns - Rust DNS library
  • The Rust community
Commit count: 515

cargo fmt