A custom DNS server with a web UI
Find a file
Alexander Krantz f780e1b937
Merge pull request #13 from akrantz01/dependabot/npm_and_yarn/frontend/ssri-6.0.2
Bump ssri from 6.0.1 to 6.0.2 in /frontend
2021-04-30 22:30:39 -07:00
db Fix recursive resolving 2019-06-16 11:06:05 -07:00
frontend Bump ssri from 6.0.1 to 6.0.2 in /frontend 2021-04-30 16:47:56 +00:00
records Change format of LOC record 2019-06-11 13:41:08 -07:00
roles Allow empty rules on role creation 2019-06-15 20:49:30 -07:00
users Return all user data when listing in users API 2019-06-13 14:05:33 -07:00
util Fix string being marked as valid when empty string 2019-06-13 12:49:41 -07:00
.dockerignore Containerize 2019-06-16 10:27:46 -07:00
.gitignore Remove compiled binaries 2019-06-15 22:33:27 -07:00
config.sample.yaml Add recursive resolving 2019-06-15 23:00:11 -07:00
Dockerfile Simplify dockerfile 2020-03-15 20:00:16 -07:00
main.go Fix recursive resolving 2019-06-16 11:06:05 -07:00
README.md Fix link to sample configuration 2020-03-15 20:56:53 -07:00
rice-box.go Upgrade frontend dependencies 2020-03-15 21:40:52 -07:00

DNS

A custom DNS server that can dynamically add and remove records through a web UI backed by a REST API. It uses Bolt for storage and Miekg DNS for, well, DNS.

Configuration

All configuration is done through a YAML file. An example configuration file with descriptions of each field can be found at config.sample.yaml.

Deployment

The server can be deployed via either Docker or a standalone binary. All assets are bundled with the binary, so all you need to do is compile it. The Docker image is on Docker Hub and the binary can be download from the releases page. The server looks for a configuration file named config.yaml in either the user's home directory or the working directory. To pass the configuration file to the Docker container run it with the argument: -v /path/to/config.yaml:/config.yaml:ro.