KZONECHECK(1)

πŸŽ€ KZONECHECK πŸ’…

okay so this is the kzonecheck page from the Knot DNS manual, bestie β€” it's the zone check tool, and it's genuinely iconic. sit down, grab a strawberry drink πŸ“, and let's get into it.

✨ NAME ✨

kzonecheck β€” the Knot DNS zone check tool. that's it, that's the vibe. πŸ¦‹

✨ SYNOPSIS ✨

kzonecheck [options] filename

✨ DESCRIPTION ✨

so what does this little icon actually do? it checks your zone file's syntax and then runs semantic checks on the zone content. and here's the part that matters: the checks it runs are literally the same checks the Knot DNS server runs. same ones. no cap. πŸ‘‘

if you want the full list of available semantic checks, go look at the semantic-checks configuration option in knot.conf(5). that's where the whole menu lives, iykyk.

🌸 Parameters 🌸

  • filename β€” the path to the zone file you want checked. and if you're feeling lazy (valid) and want to read from stdin instead, use /dev/stdin or just -. yes, a single dash. slay. πŸ’…

πŸŽ€ Options πŸŽ€

  • -o, --origin origin β€” sets the zone origin. if you don't specify it, the SOA record owner in the zone file gets used, and the zone file name (without the possible .zone suffix) is treated as the initial zone origin in case the owner isn't an FQDN. so it's got a whole fallback situation going on. 🫢
  • -d, --dnssec on|off β€” also checks DNSSEC-related records. the default is to decide based on whether there's an RRSIG for the SOA. so it just peeks and picks. ✨
  • -z, --zonemd β€” also checks the zone hash against a ZONEMD record... and that ZONEMD record is required to exist. like, it has to be there. no ZONEMD, we have a problem. 😭
  • -t, --time time β€” specifies the current time. you can use a UNIX timestamp, the YYYYMMDDHHmmSS format, or the [+/-]time[unit] format where unit can be Y, M, D, h, m, or s. default is the current UNIX timestamp. flexible queen. 🌈
  • -j, --jobs jobs β€” the number of threads used for DNSSEC validation. default is all the CPU threads available. all of them. it's giving main character energy on your CPU. πŸ”₯
  • -p, --print β€” prints the zone on stdout. show me the zone, periodt. πŸ’–
  • -v, --verbose β€” enables debug output. for when you need to know everything. πŸ™ˆ
  • -h, --help β€” prints the program help. the classic. ⭐
  • -V, --version β€” prints the program version. and here's the cute extra: -VV makes the program print the compile time configuration summary. double V, double the info. πŸ‘‘

✨ EXIT VALUES ✨

exit status 0 = successful operation, everything ate, no notes. πŸŽ€

any other exit status = an error happened. πŸ’€

✨ SEE ALSO ✨

knotd(8), knot.conf(5) β€” go read these too, bestie, they're linked for a reason. πŸ¦‹

✨ AUTHOR ✨

CZ.NIC, z.s.p.o. and contributors <https://www.knot-dns.cz/> β€” legends, honestly. 🫢

Copyright (C) CZ.NIC, z.s.p.o. and contributors


ngl that's the whole page and every single detail is in there πŸ’œ

okay bye bestie, go check those zones β€” this was 3.6.2, dated 2026-10-21, and it's a Knot DNS moment fr fr πŸŒΈβœ¨πŸŽ€

πŸ“¦ where this page comes from