1
0
Fork
You've already forked dnsty
0
DNS logging service and web interface
  • Go 83.9%
  • Nix 16.1%
Find a file
2025年10月23日 01:37:14 +03:00
cmd chore: init 2025年09月30日 14:57:02 +03:00
internal chore: init 2025年09月30日 14:57:02 +03:00
nix docs: add readme 2025年09月30日 15:30:41 +03:00
static chore: init 2025年09月30日 14:57:02 +03:00
.air.toml chore: init 2025年09月30日 14:57:02 +03:00
.envrc chore: init 2025年09月30日 14:57:02 +03:00
.gitattributes chore: add gitattributes 2025年10月23日 01:36:57 +03:00
.gitignore chore: clean up gitignore 2025年10月23日 01:37:14 +03:00
.golangci.yml chore: init 2025年09月30日 14:57:02 +03:00
flake.lock chore: init 2025年09月30日 14:57:02 +03:00
flake.nix chore: init 2025年09月30日 14:57:02 +03:00
go.mod chore: init 2025年09月30日 14:57:02 +03:00
go.sum chore: init 2025年09月30日 14:57:02 +03:00
LICENSE docs: add license 2025年09月30日 15:50:40 +03:00
README.md docs: add license 2025年09月30日 15:50:40 +03:00

dnsty

Simple DNS logging service that takes dnstap data, writes it in a database, and displays written entries in a web interface.

Currently the project includes separate ingester and frontend services, I plan to merge these two into a single "monolith" in the future. For now it's only possible to view entry tables. I'm thinking about adding more features such as: filters, search, live updates over WebSocket/SSE, client information, reason for NXDOMAINing, blocklists, etc1 .

I'm writing this with Unbound in mind, but it should work with any resolver that supports dnstap.

This project is born out of desire to practice working with web interfaces without JavaScript2 . Current stack consists of the following technologies:

Copying

Everything in this repository excluding distributions of htmx, hyperscript and missing.css is licensed under GNU General Public License v3.0. htmx, hyperscript and missing.css are all covered by their respective licenses.


  1. I'm not sure how to fully implement most of these because dnstap is quite limited in types of information it can provide. ↩︎

  2. Because it sucks and I never had a desire to learn it. ↩︎