2
0
Fork
You've already forked DNS
0
[MIRROR of https://git.vern.cc/vern/DNS] ~vern's knot-dns config and tutorial on how to set it up. Syncs every 10 minutes.
  • DNS Zone 100%
2022年12月16日 14:02:37 +00:00
master hellfire is dead D: 2022年12月16日 14:02:37 +00:00
slave make slave/geo.conf a symlink to master/geo.conf 2022年12月14日 08:23:26 +00:00
LICENSE add license 2022年09月06日 21:01:27 +05:30
README.md make all references yourdomain.com 2022年12月14日 13:56:41 +05:30

~vern DNS

~vern uses knot-dns.cz for our self-hosted DNS. This is complete with DNSSEC.

Currently its deployed on vern.cc and vern0.me, both the domains we manage

The slave is hosted on our India Linode, Hellfire and the master is on our main VPS on Hetzner, Mythos.

We use the knot package from https://deb.knot-dns.cz/knot-latest.

To apply changes, bump the serial by 1 (in same file, below SOA line) and then knotc reload. Then on your slave, run knotc zone-retransfer yourdomain.com; kontc zone-reload yourdomain.com

Note: For serial, its recommended to use YYYYMMDDXX format. For example, thirteenth revision on 16/10/2022 would be serial 2022161013.

Setup

Put the files in master/ and slave/ in /etc/knot

You might want to also add an auth key (for sync) but i haven't experimented with it yet.

On your registrar side, add the GLUE records. (On namecheap, its under Advanced DNS -> Personal DNS Server -> Add nameserver)

After that, add ns1.yourdomain.com and ns2.yourdomain.com to the custom dns part.

Thats all the setup you need for a basic authoritative DNS server.

In order to setup DNSSEC do the following :-

  1. Run keymgr yourdomain.com ds in order to get your DS key

Example: 54674 13 2 E28E3DB78E5517A577353A43799AD14EC044720BAE4906D134F5EA40 74AC0287

  1. Then, add the DS record on your registrar's side.

With the example provided,

a) Key tag - 54674

b) Algorithm - 13

c) Digest Type - 2

d) Digest - E28E3...287 (omit space)

(On namecheap, you add this at Advanced DNS -> DNSSEC)

I need help

If you want help with this, feel free to join #vern-chat. I can help you with it if needed :)