No description
- Python 91.6%
- Shell 8.4%
| backend | ||
| bind | ||
| docs | ||
| frontend | ||
| scripts | ||
| tests | ||
| .env.example | ||
| .gitignore | ||
| AGENTS.md | ||
| docker-compose.yml | ||
| README.md | ||
BindControl
BindControl is a modern web-based control plane for managing authoritative BIND9 DNS infrastructure.
Goals
BindControl provides a graphical and API-driven way to manage:
- DNS zones and records
- Hierarchical zone navigation
- DNS clusters and nodes
- Primary and secondary authoritative DNS servers
- Search across DNS records
- Desired DNS state stored in PostgreSQL
- Routine record changes through RFC 2136
- Authenticated DNS updates using TSIG
- Primary-to-secondary replication using NOTIFY and IXFR/AXFR
- Explicit deployment state for configuration changes
Planned Stack
- Frontend: SvelteKit
- Backend: Django + Django REST Framework
- Database: PostgreSQL
- DNS: BIND9
- Dynamic updates: RFC 2136
- Update authentication: TSIG
- Development environment: Docker Compose
- API documentation: OpenAPI
- API testing: Bruno
- Backend testing: pytest
Repository Structure
bindcontrol/
├── AGENTS.md
├── README.md
├── backend/
├── bind/
│ ├── primary/
│ └── secondary/
├── docs/
├── frontend/
├── tests/
├── docker-compose.yml
└── .env.example
Documentation
Start with:
- Product Scope
- Functional Requirements
- Non-Functional Requirements
- Architecture
- Domain Model
- DNS/BIND Integration
- Change and Deployment Model
- API Design
- Security
- Roadmap
Status
BindControl is currently in the architecture and initial implementation phase.