CertaDNS
Skip to lesson

Adoption and Operation · lesson 2 of 3

What breaks

After this lesson you can

Name the failure each advanced control introduces, and how it presents.

Assumes you have read The order to adopt in.

Each control adds a way for mail to fail that did not exist before. Two of them can stop inbound delivery entirely, and both do it quietly enough that you will hear from a sender rather than from a monitor.

What each one adds

ControlNew failureHow it presents
MTA-STSEnforcing senders refuse a host the cached policy does not listDeferrals then bounces from Google and Microsoft only. Other senders unaffected, so it looks like a problem with them.
MTA-STSPolicy host certificate expiresNothing visible. Protection silently stops for senders without a cached copy.
DANEDNSSEC chain breaks, or a TLSA record no longer matches the served certificateValidating senders stop delivering. Hard failure, not degradation.
DANECertificate renewed with a new key and no TLSA updateSame. The renewal that was routine for years becomes an outage.
BIMIVMC expires, or the DMARC policy slipsThe logo disappears. Mail is unaffected and nobody notices for months.
Bulk-sender requirementsComplaint rate crosses the thresholdGradual filtering, then sharp. Visible in engagement long before anyone connects it.

The two that stop mail

MTA-STS: a host in the MX set but absent from the policy.
   Cause: someone changed MX without changing the policy,
          or changed both and did not wait out max_age.
   Scope: senders that enforce. Which is most of your volume.

DANE: a TLSA digest that does not match the presented key.
   Cause: certificate renewal with a fresh key pair.
   Scope: senders that validate. Fails closed by design.

Both share a shape: a routine change elsewhere — an MX addition, a certificate renewal — breaks a record nobody remembers is coupled to it. The coupling is the risk, and the remedy is a checklist rather than a monitor, because the monitor tells you afterwards.

Certificate automation is where DANE fails

An ACME client that generates a new key pair on every renewal will break a 3 1 1 TLSA record every sixty days. Configure it to reuse the key, or add a deploy hook that publishes the new digest and waits. The default behaviour of most clients is the one that breaks it.

Knowledge check

You add an MX host and update the MTA-STS policy the same afternoon. Mail from Gmail starts deferring. Why?

Try it on a real domain

Free, no account, public DNS only.

Last reviewed