commit a9df3b8ae991abe775d75cbf7072ef9b53d5894e Author: Ava Affine Date: Thu Apr 30 00:57:29 2026 +0000 initial commit Signed-off-by: Ava Affine diff --git a/README.md b/README.md new file mode 100644 index 0000000..9ed4fd7 --- /dev/null +++ b/README.md @@ -0,0 +1,34 @@ +# Muninn +Muninn is a distributed consensus DNS server. It aims to make the internet more +secure and censorship resistant by distributing DNS infrastructure into the + hands of the users. Muninn operates in tandem with the existing internet, and +is most valuable when used alongside existing security tools like DoH clients, +VPNs, Tor, and strict HTTPS. Muninn enables local networks of likeminded peers +to have their own private DNS layer, individuals to have their own user +configurable, censorship resistant DNS cache, or broad groups of people to share + their own autonomous domain name service. + +# Project State +The loose plan to implement Muninn is as follows: + +1. Repo that uses NGINX subtree to build a new core module +2. DNS core module accepts requests and manages a pool lifetime +3. Client can get DNS entries directly from NGINX resolver +4. DNS records are cached in a table available to all workers +5. DNS table is directly editable by some user accessible API +6. Muninn can be configured to connect to peers and synchronize entry updates +7. Muninn traverses peers to build a DHT of peers to sync with +8. User can configure allowlists and denylists of peers in DHT +9. Muninn can identify as authoritatively owning a certain DN (and Peers abide). +10. Something other than logging is done for conflicts over who owns what DN + +Currently Muninn is on phase 1. + +## Building Muninn +TODO + +## Running Muninn +TODO + +## Configuring Muninn +TODO