ROLLCHK(1)
π ROLLCHK(1) β the rollrec vibe check π
okay so this is rollchk, a User Contributed Perl Documentation page, section 1 of the manual, and bestie it is literally here to tell you if your DNSSEC-Tools rollrec file is a mess or not. π¦
β¨ NAME β¨
rollchk β check a DNSSEC-Tools rollrec file for problems and inconsistencies.
it's giving "quality control but make it cute" π
πΈ SYNOPSIS πΈ
rollchk [-roll | -skip] [-count] [-quiet] [-verbose] [-help] rollrec-file
π DESCRIPTION π
So this script goes and checks the rollrec file you named in rollrec-file for problems and inconsistencies. That's it. That's the whole job. And it does it thoroughly. π₯
π TYPES OF CHECKS π
There are four kinds of checks that rollchk does, and here they are in order:
- file checks
- "raw" file checks
- info rollrec checks
- rollrec checks
And heads up: the checks run in that exact order, and if any of the group checks fail, rollchk exits. Bye. π«Ά
π File Checks
These ones figure out the basic tea about the rollrec file itself. The problems it recognizes are:
- non-existent rollrec file β the rollrec file you specified does not exist. π
- non-regular rollrec file β the rollrec file you specified is not a regular file.
π Raw File Checks
These get done directly on the file contents, not through the rollrec.pm interfaces. Sneaky but valid. The problem it recognizes is:
- duplicated rollrec names β a rollrec name is not unique. two of the same name?? not the moment. π
π§ Info Rollrec Checks
These exist to make sure the info rollrec is valid, periodt. The problems it recognizes 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, or2.
the way that version number needs to be exactly 0, 1, or 2 and nothing elseβ¦ π
π Rollrec Checks
These run after the file contents have been referenced with the rollrec.pm interfaces. The problems it recognizes 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, or7; any other value is invalid. - mismatch in KSK timestamp data β a zone's KSK
roll-secondstimestamp does not translate into the date stored in itsroll-datestring. π - invalid ZSK rollover phase β a zone has an invalid ZSK rollover phase. These phases may be
0,1,2,3, or4; any other value is invalid. - mismatch in ZSK timestamp data β a zone's ZSK
roll-secondstimestamp does not translate into the date stored in itsroll-datestring. π - contemporaneous KSK and ZSK rollovers β a zone has a KSK rollover happening at the same time as a ZSK rollover. A zone may only have one rollover phase be non-zero at a time. pick a lane bestie π
- 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, so don't panic about that part)
- 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
0or1; 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. Thezonenamemust match the SOA name in the zone file, and thezonename's keyrec record in its keyrec file must be a zone record. - empty zsargs β a zone has an empty zonesigner-arguments field. If this field exists, it must contain a non-empty data value. (again, 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)
and that's the whole page bestie, no cap. this one's from perl v5.42.0, dated 2025-07-23 β go forth and check those rollrecs, mwah π
π¦ where this page comes from
- fedora 43: dnssec-tools 2.2.3-30.fc43 Β· LicenseRef-Callaway-BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms