diff --git a/lib/dns/server.js b/lib/dns/server.js index a7b387287..3c522419a 100644 --- a/lib/dns/server.js +++ b/lib/dns/server.js @@ -334,7 +334,15 @@ class RootServer extends DNSServer { // is able to return an authoritative (non-referral) answer. let data = null; if (typeof this.middle === 'function') { - data = await this.middle(tld, req); + try { + data = await this.middle(tld, req); + } catch (e) { + this.logger.error( + 'Root server middleware resolution failed for name %s: %s', + name, + e.message + ); + } // Middleware function did an entire lookup on its own. // Despite the variable name this must be a `Message` object,