Raw descriptor bytes in .pb.go files were corrupted by the sed-based module path rename (string length changed, breaking protobuf binary encoding). Regenerated with protoc to fix. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
MCNS
Metacircular Networking Service -- an authoritative DNS server for the Metacircular platform. MCNS serves DNS zones backed by SQLite, forwards non-authoritative queries to upstream resolvers, and exposes a gRPC and REST management API authenticated through MCIAS. Records are updated dynamically via the API and visible to DNS immediately on commit.
Quick Start
Build the binary:
make mcns
Copy and edit the example configuration:
cp deploy/examples/mcns.toml /srv/mcns/mcns.toml
# Edit TLS paths, database path, MCIAS URL, upstream resolvers
Run the server:
./mcns server --config /srv/mcns/mcns.toml
The server starts three listeners:
| Port | Protocol | Purpose |
|---|---|---|
| 53 | UDP + TCP | DNS (no auth) |
| 8443 | TCP | REST management API (TLS, MCIAS auth) |
| 9443 | TCP | gRPC management API (TLS, MCIAS auth) |
Documentation
- ARCHITECTURE.md -- full technical specification, database schema, API surface, and security model.
- RUNBOOK.md -- operational procedures and incident response for operators.
- CLAUDE.md -- context for AI-assisted development.
Description
Languages
Go
97.5%
Shell
1.2%
Makefile
0.7%
Dockerfile
0.6%