DNS Toolkit
Diagnostics
Diagnostics
Diagnostics runs an intoDNS/MxToolbox-style catalog of checks against a domain and
aggregates every observation into a structured Report. All DNS reaches through the
composed resolvers, so a FakeResolver drives the whole engine offline, and a single
check throwing never aborts the run.
- Checks catalog — every check the engine runs, what it flags, and how to add your own.
- Propagation providers — the named public-resolver registry used by propagation checks.
At a glance
use Cbox\Dns\Dns;
$report = $dns->diagnose('example.com');
$report->passed(); // no errors AND no warnings
$report->hasErrors();
$report->bySeverity(); // grouped by "error" / "warning" / "info"
$report->byCategory(); // grouped by "Delegation" / "Email" / ...
foreach ($report->findings as $finding) {
// $finding->severity (enum), ->category, ->check, ->message, ->context
}
Scope
This is a DNS-only engine. Live SMTP diagnostics (banner / STARTTLS / open-relay), RBL/blacklist lookups, and geo-distributed propagation vantage points are deliberately out of v1 — they need network egress or third-party infrastructure that cannot be exercised offline — and are tracked as roadmap, not stubbed.