Expand description
DNSSEC observability primitives (ADR-0001, roadmap 07).
Two independent concerns live here, both pure and side-effect free:
- Parsing
rndc dnssec -status <zone>output intoDnssecStatus— the source of the zone-status DNSSEC block. Per ADR-0001 this output (the supported operator interface, reflecting the running server) is parsed instead of BIND’s internal key.statefiles. - Parsing DNSKEY resource records from public key files
(
K<zone>.+<alg>+<tag>.key) and computing the DS record (RFC 4034 appendix B key tag, RFC 4509 SHA-256 digest) in-process, so nodnssec-dsfromkeybinary is needed in the image.
Structs§
- Dnskey
Record - A DNSKEY resource record parsed from textual (zone file / key file) form.
- Dnssec
KeyStatus - Per-key signing state parsed from
rndc dnssec -statusoutput. - Dnssec
Status - Zone DNSSEC status parsed from
rndc dnssec -statusoutput. - DsRecord
- A computed DS record ready to publish at the parent zone.
Enums§
- Checkds
State - DS visibility state reported to named via
rndc dnssec -checkds(ADR-0001: exposed so the insecure transition can complete without host access when no parental agents are configured). - Dnssec
Error - Errors from DNSKEY/DS parsing and computation.
Constants§
- DS_
DIGEST_ TYPE_ SHA256 - DS digest type 2 = SHA-256 (RFC 4509). The only digest type bindcar emits.
Functions§
- parse_
dnskey_ rr - Parses a DNSKEY resource record in presentation format:
<owner> [<ttl>] [<class>] DNSKEY <flags> <protocol> <algorithm> <base64…>. - parse_
dnssec_ status - Parses
rndc dnssec -status <zone>output. - parse_
key_ file - Parses a BIND public key file (
K<zone>.+<alg>+<tag>.key): comment lines start with;, the remaining non-empty line is the DNSKEY RR.