DT-VALIDATE(1)

πŸ“¦ version 2.2.3, in arch rolling, fedora 43, fedora 44

πŸ’– DT-VALIDATE(1) πŸ’–

okay bestie, gather round, because this is a User Commands manual page and it's about to eat. we're talking dt-validate, the diagnostic bestie that goes and asks the DNS questions so you don't have to. slay. ✨


🌸 NAME 🌸

dt-validate β€” go query the Domain Name System and then show off the results of the DNSSEC validation process. it's giving "detective but make it DNS". πŸ•΅οΈβ€β™€οΈπŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

dt-validate [options] DOMAIN_NAME

✨ DESCRIPTION ✨

so, dt-validate is a diagnostic tool that's built on top of the DNSSEC validator, okay? it's not out here doing its own thing, it's standing on the shoulders of a whole validator. πŸ‘‘

you hand it a DOMAIN_NAME as an argument and it goes and queries the DNS for that domain name. no cap. then it outputs the series of responses that were received from the DNS plus the DNSSEC validation results for each domain name. like, the whole receipts, every single one. 🧾

and why do you care? because an examination of the queries and validation results can help an administrator uncover errors in the DNSSEC configuration of DNS zones. that's it, that's the whole point. it's literally a glow-up tool for your zone config. if your DNSSEC is a mess, this will show you where the mess lives. 🫢


πŸ’… OPTIONS πŸ’…

  • -c CLASS, --class=CLASS β€” use this to specify the DNS class of the Resource Record being queried. if you don't pass it, the default class IN is used. periodt. πŸ’–
  • -h, --help β€” display the help and exit. the classic "wait what does this do again" button. πŸ™ˆ
  • -p, --print β€” print the answers and validation results. lowkey important: by default dt-validate just outputs a series of responses and their validation results on stderr. but when you use -p, dt-validate will also output the final result on stdout. so it's the "yes and also put it on the record" flag. ✨
  • -t TYPE, --type=TYPE β€” use this to specify the DNS type of the Resource Record being queried. if you don't give it, dt-validate will query for the A record for the given DOMAIN_NAME. no type specified? you're getting an A record, that's just the vibe. πŸ”₯
  • -v FILE, --dnsval-conf=FILE β€” use this to specify the location of the dnsval.conf configuration file. πŸ—‚οΈ
  • -r FILE, --resolv-conf=FILE β€” use this to specify the location of the resolv.conf configuration file containing the name servers to use for lookups. it's the "who do I ask" file. πŸ“ž
  • -i FILE, --root-hints=FILE β€” use this to specify the location of the root.hints configuration file, containing the root name servers. heads up though: this is only used when no name server is found and dt-validate must do recursive lookups itself. so it's the backup plan's backup plan. 🌈
  • -S suite[:suite], --test-suite=suite[:suite] β€” this specifies the test suite (or range of test suites) to use for the internal tests. ranges, bestie. you can do a range. πŸ’€
  • -s, --selftest β€” use this to specify that the application should perform its self tests using names from the configured test-suite. it's the "check yourself before you wreck yourself" flag. πŸͺž
  • -T number[:number], --testcase=number[:number] β€” use this to run a specific test (or range of tests) from the test suite. again: ranges are on the menu. πŸ“
  • -F file, --testcase-conf=file β€” this is used to specify the file containing the test cases. πŸ“„
  • -l label, --label=label β€” use this to specify the policy from within the dnsval.conf file to use during validation. pick your policy, pick your destiny. πŸ‘‘
  • -w seconds, --wait=seconds β€” use this to run the queries specified by other flags in a loop, with the specified interval between successive queries. it's the "keep asking, forever, on a timer" button. πŸŒ€
  • -o, --output=<debug-level>:<dest-type>[:<dest-options>] β€” the output control one, okay, pay attention because there are layers here:
    • <debug-level> is 1-7, corresponding to syslog levels ALERT-DEBUG
    • <dest-type> is one of file, net, syslog, stderr, stdout
    • <dest-options> depends on <dest-type>
      • file:<file-name> (opened in append mode)
      • net[:<host-name>:<host-port>] (127.0.0.1:1053
      • syslog[:facility] (0-23 (default 1 USER))
not me just copying that nested list exactly, but fr fr every single value matters here. don't freestyle the dest-options. πŸ™…β€β™€οΈ

🧚 PRE-REQUISITES 🧚

libval

that's it. that's the whole prerequisite. it needs libval, no negotiations. πŸ’œ


Copyright 2005-2013 SPARTA, Inc. All rights reserved. See the COPYING file included with the DNSSEC-Tools package for details.

like, all rights reserved, we're not playing. the COPYING file that ships with the DNSSEC-Tools package has the details if you want them. 🌸


πŸ‘‘ AUTHORS πŸ‘‘

Abhijit Hayatnagarkar, Suresh Krishnaswamy, Robert Story

the icons who built this. we love them, we thank them. 🫢✨


πŸ”— SEE ALSO πŸ”—


and that's the whole page, bestie!! this was perl v5.14.3, dated 2013-02-27, and it lives in the DT-VALIDATE(1) slot of your friendly neighborhood manual. go validate something, you absolute main character. πŸ’–πŸ¦‹πŸŒˆπŸ’…

πŸ“¦ where this page comes from