watcher: a hostname whose zone's nameservers all stop answering gets NS Failure (closes #284)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
When none of the nameservers of a hostname's zone answered, the walk to them failed and the check was only logged. The walk now returns a NoAnswerError naming the nameservers of the zone it reached when none of them answers. When those are the nameservers the previous check saved for the hostname, each is saved as failed with the reason, as a domain's are, so it gets an NS Failure and later an NS Recovery. A walk that fails before that zone, as when the host loses its network, is still only logged. Not tested live: the resolver naming a zone's nameservers that never answer, as no live zone has such nameservers; the watcher test builds that error. Model: opus-5-5
This commit is contained in:
@@ -121,7 +121,13 @@ notification endpoint set, changes show only on the dashboard; see
|
||||
trace moves from a name to its parent only when the servers asked answer that
|
||||
the name has no delegation of its own, or does not exist. When they do not
|
||||
answer, the check fails and the hostname's records from the previous check are
|
||||
kept.
|
||||
kept, unless they are the nameservers the previous check saved for the
|
||||
hostname. Each of those is then saved as failed, with the reason, as a
|
||||
domain's nameservers are when none of them answers, so it gets an NS query
|
||||
failure notification, and an NS recovery notification when it answers again
|
||||
(see below). A trace that gets no answer before it reaches them, as when the
|
||||
host running dnswatcher loses its network, fails the check without a
|
||||
notification.
|
||||
- Queries **each** authoritative nameserver independently for **all** record
|
||||
types: A, AAAA, CNAME, MX, TXT, SRV, CAA, NS.
|
||||
- Each record type is a query of its own. When a nameserver answers some types
|
||||
|
||||
Reference in New Issue
Block a user