ROLLCHK(1)
rollchk(1) π check that rollrec file, bestie
okay so welcome to the rollchk(1) page, from the User Contributed Perl Documentation section. It's giving DNSSEC-Tools rollrec file validator with main character energy, and we're gonna go through every little thing so you can vibe check your file. π¦
NAME π
rollchk β Check a DNSSEC-Tools rollrec file for problems and inconsistencies.
SYNOPSIS πΈ
rollchk [-roll | -skip] [-count] [-quiet] [-verbose] [-help] rollrec-file
DESCRIPTION β¨
This script checks the rollrec file specified by rollrec-file for problems and inconsistencies.
No cap, that's the whole mission. π
TYPES OF CHECKS π
There are four types of checks performed by rollchk: file checks, "raw" file checks, info rollrec checks, and rollrec checks. The checks are performed in that order, and if any of the group checks fail then rollchk exits.
bestie, order matters here β it's not a choose-your-own-adventure. π
File Checks π
These checks determine basic information about the rollrec file itself. Recognized problems are:
- non-existent rollrec file β the specified rollrec file does not exist.
- non-regular rollrec file β the specified rollrec file is not a regular file.
Raw File Checks π§ͺ
These checks are performed directly on the file contents, rather than by using the rollrec.pm interfaces. Recognized problems are:
- duplicated rollrec names β a rollrec name is not unique.
Info Rollrec Checks π§
These checks are performed to ensure the info rollrec is valid. Recognized problems are:
- negative version β the version number in the info rollrec is less than 0.
- overly large version β the version number in the info rollrec is greater than 2.
- invalid version β the version number in the info rollrec is not 0, 1, or 2.
Rollrec Checks π
These checks are performed after referencing the file contents with the rollrec.pm interfaces. Recognized problems are:
- no zones defined β no zones are defined in the specified rollrec file.
- invalid KSK rollover phase β a zone has an invalid KSK rollover phase. These phases may be 0, 1, 2, 3, 4, 5, 6, or 7; any other value is invalid.
- mismatch in KSK timestamp data β a zone's KSK roll-seconds timestamp does not translate into the date stored in its roll-date string.
- invalid ZSK rollover phase β a zone has an invalid ZSK rollover phase. These phases may be 0, 1, 2, 3, or 4; any other value is invalid.
- mismatch in ZSK timestamp data β a zone's ZSK roll-seconds timestamp does not translate into the date stored in its roll-date string.
- contemporaneous KSK and ZSK rollovers β a zone has a KSK rollover occurring at the same time as a ZSK rollover. A zone may only have one rollover phase be non-zero at a time.
- in rollover without a phasestart β a zone is currently in rollover, but its rollrec record does not have a
phasestartfield. - empty administrator β a zone has an empty administrator field. This field must contain a non-empty data value. The value itself is not parsed for accuracy.
- non-existent directory β several checks are made for a zone's directory. If the zone has a directory specified, the directory must exist and it must be an actual directory.
- invalid display flag β a zone has an invalid display flag. This flag may be 0 or 1; any other value is invalid.
- non-positive maxttl β the maximum TTL value must be greater than zero.
- zone file checks β several checks are made for a zone's zone file. The zone file must exist, it must be a regular file, and it must not be of zero length. If the file is not an absolute path and the file's rollrec has a directory entry, then the directory is prepended to the filename prior to performing any checks.
- keyrec file checks β several checks are made for a zone's keyrec file. The keyrec file must exist, it must be a regular file, and it must not be of zero length. If the file is not an absolute path and the file's rollrec has a directory entry, then the directory is prepended to the filename prior to performing any checks.
- zonename checks β several checks are made for zonename. The zonename must maatch the SOA name in the zone file, and the zonename's keyrec record in its keyrec file must be a zone record. (Yes, bestie, the page says "maatch" β we're preserving the iconique spelling. π)
- empty zsargs β a zone has an empty zonesigner-arguments field. If this field exists, it must contain a non-empty data value. The value itself is not parsed for accuracy.
OPTIONS π
-rollβ only display rollrecs that are active ("roll") records. This option is mutually exclusive of the-skipoption.-skipβ only display rollrecs that are inactive ("skip") records. This option is mutually exclusive of the-rolloption.-countβ display a final count of errors.-quietβ do not display messages. This option supersedes the setting of the-verboseoption.-verboseβ display many messages. This option is subordinate to the-quietoption.-Versionβ displays the version information forrollchkand the DNSSEC-Tools package.-helpβ display a usage message.
COPYRIGHT π
Copyright 2006-2014 SPARTA, Inc. All rights reserved. See the COPYING file included with the DNSSEC-Tools package for details.
AUTHOR π«Ά
Wayne Morrison, tewok@tislabs.com
SEE ALSO π
lsroll(8)rollerd(8)rollinit(8)Net::DNS::SEC::Tools::rollrec.pm(3)file-rollrec(5)keyrec(8)
that's the whole page, bestie. source/version tea: perl v5.44.0, dated 2026-10-17, and the footer is still serving ROLLCHK(1) energy. periodt. πβ¨
π¦ where this page comes from
- arch rolling: dnssec-tools 2.2.3-16 Β· BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms